aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-10-16ARM ABI: fix ABI alignment issues when passing legal vector types as varargs.Manman Ren
We create an aligned temporary space and copy the content over from ap.cur to the temporary space. This is necessary if the natural alignment of the type is greater than the ABI alignment. rdar://12439123 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166040 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-16Implement GCC's -Wint-to-pointer-cast.David Blaikie
This implementation doesn't warn on anything that GCC doesn't warn on with the exception of templates specializations (GCC doesn't warn, Clang does). The specific skipped cases (boolean, constant expressions, enums) are open for debate/adjustment if anyone wants to demonstrate that GCC is being overly conservative here. The only really obvious false positive I found was in the Clang regression suite's MPI test - apparently MPI uses specific flag values in pointer constants. (eg: #define FOO (void*)~0) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166039 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-16When using a symbol with attribute weakref, search for it first andJoerg Sonnenberger
don't try the normal GetOrCreateLLVM. The latter could drop the weak atrtibute on the second reference, if there is no explicit declaration of the aliasee. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166032 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-16Minor tweak to last patch along with a test case.Fariborz Jahanian
// rdar://12491143 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166030 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-16fixes an objc crash involving objc bool literal onFariborz Jahanian
hopelessly poorly written code after spewing several errors. // rdar://12491143 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166025 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-16GNUstep runtime version default to 1.6, generate correct property attributeDavid Chisnall
metadata. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166023 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-16Transform pattern:Alexey Samsonov
if (CGM.getModuleDebugInfo()) DebugInfo = CGM.getModuleDebugInfo() into a call: maybeInitializeDebugInfo(); This is a simplification for a possible future fix of PR13942. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166019 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-16Use the Attributes::get method which takes an AttrVal value directly to ↵Bill Wendling
simplify the code a bit. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166010 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-16[analyzer] ObjCContainersASTChecker: minor cleanup and an extra test case.Jordan Rose
Follow-up to r165838, which fixed a potential crash. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166002 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15[analyzer] CmpRuns - cleaned up the API, added relative path getterAnna Zaks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165995 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15[analyzer] Embed the analyzer version into the plist output.Anna Zaks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165994 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15[analyzer] Enhance the error message.Anna Zaks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165993 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15[analyzer] Do not warn on direct ivar assignments within copy methods.Anna Zaks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165992 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Un-revert r164907 and r164902 (+ follow-ups), 10.6 build fix to follow.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165988 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Fixed CXXNamedCast right paren location propagation to instantiations.Abramo Bagnara
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165977 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Fixed LabelDecl source range.Abramo Bagnara
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165976 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Fixed ClassTemplateSpecializationDecl source range.Abramo Bagnara
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165975 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Fixed FunctionTypeLoc range for trailing return type.Abramo Bagnara
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165974 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Fixes location of overriding declaration with no commentFariborz Jahanian
of their own. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165972 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Revert r164907 and r164902 (+ follow-ups). They broke building on 10.6.Nico Weber
See PR14013. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165962 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Move the Attributes::Builder outside of the Attributes class and into its ↵Bill Wendling
own class named AttrBuilder. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165961 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15[ms-inline asm] Rework the front-end to use the API introduced in r165946.Chad Rosier
-The front-end now builds a single assembly string and feeds it to the AsmParser. The front-end iterates on a per statement basis by calling the ParseStatement() function. Please note, the calling of ParseStatement() and and any notion of MCAsmParsedOperands will be sunk into the MC layer in the near future. I plan to expose more basic APIs such as getClobbers, etc. -The enumeration of the AsmString expressions have been reworked to use SMLocs rather than assembly Pieces, which were being parsed in the front-end. -The test case, t8(), was modified due to r129223. I'll have to find a way to work around things such as these. Sorry for the large commit, but breaking this in multiple smaller commits proved too irritating. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165957 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15structured document comment: patch to provide comment for overriding functionFariborz Jahanian
template when comment is comming from overridden declaration. // rdar://12378793 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165953 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Teach TargetInfo to hold on to the TargetOptions with which it wasDouglas Gregor
created. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165943 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15[asan] make AddressSanitizer to be a FunctionPass instead of ModulePass. ↵Kostya Serebryany
clang part: for FunctionPass we need to run asan at a different point, otherwise it will run before inlining git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165937 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Only report first error when no compilation database is found.Daniel Jasper
Review: http://llvm-reviews.chandlerc.com/D62 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165933 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Use enum values instead of magic numbers for indexing into the attribute list.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165925 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Introduce the notion of excluded headers into the module mapDouglas Gregor
description. Previously, one could emulate this behavior by placing the header in an always-unavailable submodule, but Argyrios guilted me into expressing this idea properly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165921 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15Attributes RewriteBill Wendling
Convert the uses of the Attributes class over to the new format. The Attributes::get method call now takes an LLVM context so that the attributes object can be uniquified and stored. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165918 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-15At -O0, emit an @llvm.trap() call at the end of a value-returning function whichRichard Smith
fails to return a value, to make debugging this issue easier. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165914 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-14Make sure temporary files are deleted when recovering from a crash when ↵Benjamin Kramer
compiling modules. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165911 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-14Delete temporary output files when an error occurs during PCH reading.Benjamin Kramer
This reduces the spam make test leaves behind in /tmp. The assert isn't particularly useful because it's not run with -disable-free (the default when using the clang driver) but should cover all -cc1 tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165910 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-14Simplify code. No functionality change.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165905 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-14Remove operator cast method in favor of querying with the correct method.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165900 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-14Use the Builder to create the stack alignment attribute.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165888 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-13"Implement" codegen support for __noop().Nico Weber
Eli discovered that __noop's sema behavior also needs some love. I filed PR14081 for that and intend to improve it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165886 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-13Simplify. Suggestion by Sean Silva.Nico Weber
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165885 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-13[analyzer] Remove the "direct bindings only" Environment lookup.Jordan Rose
This was only used by OSAtomicChecker and makes it more difficult to update values for expressions that the environment may look through instead (it's not the same as IgnoreParens). With this gone, we can have bindExpr bind to the inner expression that getSVal will find. Groundwork for <rdar://problem/12137950> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165866 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-13[analyzer] Remove unneeded 'inlineCall' checker callback.Jordan Rose
I believe the removed assert in CheckerManager says it best: InlineCall is a special hacky callback to allow intrusive evaluation of the call (which simulates inlining). It is currently only used by OSAtomicChecker and should go away at some point. OSAtomicChecker has gone away; inlineCall can now go away as well! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165865 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-13Update for r165858.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165859 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-12[ms-inline asm] Remove a bunch of parsing code from the front-end.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165851 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-12Add TargetInfo for r600.Eli Friedman
Patch by Tom Stellard. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165850 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-12Make -mms-bitfields behave consistently.Eli Friedman
Patch by Jeremiah Zanin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165849 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-12-fcatch-undefined-behavior: Trap undefined behavior due to conversions to orRichard Smith
from a floating-point type where the source value is not in the range of representable values of the destination type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165843 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-12Move assertion to not crash tests.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165842 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-12Silence static analyzer issue by documenting that in this contextTed Kremenek
that a DeclRefExpr can never return a null decl. We possibly should hoist this into getDecl() itself. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165841 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-12Silence null dereference warnings by documenting context-specificTed Kremenek
invariants using assertions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165840 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-12Further harden checking that scan-view isn't serving up pages outsideTed Kremenek
the server root. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165839 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-12Fix potential crash in ObjCContainersChecker by properly validatingTed Kremenek
the number of arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165838 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-12Silence dead store warning. It is conceptually possible we willTed Kremenek
add more code that references SourceFile, so removing the dead store doesn't seem appropriate for the long term. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165837 91177308-0d34-0410-b5e6-96231b3b80d8