aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-08-28Consolidate helper methods and configuration logic. No functionality change.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162789 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28CUDA: give static storage class to __shared__ and __constant__Peter Collingbourne
variables without a storage class within a function, to implement CUDA B.2.5: "__shared__ and __constant__ variables have implied static storage [duration]." git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162788 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28CUDA: give correct address space to globals declared in functionsPeter Collingbourne
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162787 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Tidy up.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162786 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28[ms-inline asm] Have generateAsmString() return the AsmString computed by Sema.Chad Rosier
We still need to translate the string, but this at least gets us one step closer to using the more general EmitAsmStmt() codegen function. No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162785 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28[ms-inline asm] Add constraints to MSAsmStmt. We don't currently computeChad Rosier
the constraints, so in the interim we speculatively assume a 'r' constraint. This is expected to work for most cases on x86. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162784 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Pass --use-analyzer to scan-build when running within the test harness.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162783 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28[ms-inline asm] Rename EmitGCCAsmStmt to EmitAsmStmt and have it accept Chad Rosier
AsmStmts. This function is only used by GCCAsmStmts, however. Constraints need to be properly computed before MSAsmStmts can use EmitAsmStmt. No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162776 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28experimental.security.taint is now alpha.security.taintTed Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162775 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28[ms-inline asm] Use dyn_cast<> here to simplify logic.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162773 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28[analyzer] Don't purge dead symbols at the end of calls if -analyzer-purge=none.Jordan Rose
No test case since this is a debug option that we will never turn on by default since it makes the leak checkers much less useful. (We'll only report leaks at the end of analysis if -analyzer-purge=none.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162772 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Make test pass in Release builds, which use a different naming scheme for ↵Benjamin Kramer
llvm values. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162771 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Merge test case for PR13704 into exprs.c to reduce test casesMichael Liao
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162769 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28[ms-inline asm] Make the AsmStmt class non-virtual.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162768 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Fix PR13704Michael Liao
- The increment needs to be signed value to preserve the original value when its data type is larger than 64-bit integer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162766 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Fix passing of -analyzer-max-loop from scan-build to clang.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162765 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Warn about suspicious implicit conversions from floating point to boolHans Wennborg
This warns in two specific situations: 1) For potentially swapped function arguments, e.g. void foo(bool, float); foo(1.7, false); 2) Misplaced brackets around function call arguments, e.g. bool InRange = fabs(a - b < delta); Where the last argument in a function call is implicitly converted from bool to float, and the function returns a float which gets implicitly converted to bool. Patch by Andreas Eckleder! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162763 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Cleanup FreeBSD linking and add support for -pie.Roman Divacky
Path by Brooks Davis, tests and fixes from me. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162761 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Check for MIPS target availability for Driver/mips-as.c test.Simon Atanasyan
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162744 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Fix for assertion when solving unresolved templates.Rafael Espindola
Patch by Magee, Josh. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162737 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Fix a -Wdocumentation warning.Dmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162730 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Merging consecutive comments: be more conservative.Dmitri Gribenko
Should fix part 2 of PR13374. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162723 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28Fix a -Wdocumentation warning.Dmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162721 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28[analyzer] Rename addTrackNullOrUndefValueVisitor to trackNullOrUndefValue.Jordan Rose
This helper function (in the clang::ento::bugreporter namespace) may add more than one visitor, but conceptually it's tracking a single use of a null or undefined value and should do so as best it can. Also, the BugReport parameter has been made a reference to underscore that it is non-optional. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162720 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28[analyzer] Refactor FindLastStoreBRVisitor to not find the store ahead of time.Jordan Rose
As Anna pointed out to me offline, it's a little silly to walk backwards through the graph to find the store site when BugReporter will do the exact same walk as part of path diagnostic generation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162719 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28[analyzer] If the last store into a region came from a function, step into it.Jordan Rose
Previously, if we were tracking stores to a variable 'x', and came across this: x = foo(); ...we would simply emit a note here and stop. Now, we'll step into 'foo' and continue tracking the returned value from there. <rdar://problem/12114689> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162718 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28[analyzer] Rename CallEvent::mayBeInlined to CallEvent::isCallStmt.Jordan Rose
The two callers are using this in order to be conservative, so let's just clarify the information that's actually being provided here. This is not related to inlining decisions in any way. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162717 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28[ms-inline asm] Hoist more common code into the AsmStmt base class. Add stubsChad Rosier
with FIXMEs for unimplemented features. No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162716 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-28[libclang] When determining the cursor via a location, ignore synthesized ↵Argyrios Kyrtzidis
ivars otherwise if we have something like: @synthesize prop = _prop; and '_prop' is not declared, we will encounter a '_prop' ivar before encountering the 'prop' synthesize declaration and we will think that we passed the region-of-interest, missing the cursor for 'prop'. rdar://12172700 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162715 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[ms-inline asm] Add virtual function, getClobber, that returns a StringRef.Chad Rosier
More work towards unifying asm stmt codegen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162712 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[ms-inline asm] Hoist getNumClobbers into base class.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162711 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[ms-inline asm] Rename getClobber to getClobberStringLiteral. No functionalChad Rosier
change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162710 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27CodeGen: Hoist check from recursive function to its only callsite.Benjamin Kramer
Suggested by Roman Divacky. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162702 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27CodeGen: When emitting stores for an initializer, only emit a GEP if we ↵Benjamin Kramer
really need the store. This avoids emitting many dead GEPs for large zero-initialized arrays. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162701 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27Appease -Wnon-virtual-dtorMatt Beaumont-Gay
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162700 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[ms-inline asm] Add a few comments.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162699 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[ms-inline asm] Hoist common Expr handling logic into AsmStmt.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162698 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27MIPS: Use -G option to specify MIPS section threshold. Translate itSimon Atanasyan
to the -mllvm -mips-ssection-threshold=<value> pair and pass to the frontend. The patch suggested by Carl Norum. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162697 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[ms-inline asm] Rename GenerateAsmString to generateAsmString to conform withChad Rosier
coding standards. Also, add stub for MSAsmStmt class as part of unifying codegen logic for AsmStmts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162696 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[analyzer] Look through casts when trying to track a null pointer dereference.Jordan Rose
Also, add comments to addTrackNullOrUndefValueVisitor. Thanks for the review, Anna! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162695 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27Restore a -cc1 invariant that was causing problems on PPC64.John McCall
This test case is pretty bad, though. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162694 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[ms-inline asm] Base class AsmStmt implements these.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162693 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[ms-inline asm] Hoist common logic into the AsmStmt base class.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162692 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[ms-inline asm] Add a new base class, AsmStmt, for the GCCAsmStmt and MSAsmStmtChad Rosier
classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162691 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27This is a temporary solution until we have a better way toManuel Klimek
parse doxygen comments for macros with libclang. I'm not entirely happy about this script, but as it saves a lot of work in keeping the docs up to date with the actual code I think checking it in makes sense. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162690 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[analyzer] Don't inline constructors for objects allocated with operator new.Jordan Rose
Because the CXXNewExpr appears after the CXXConstructExpr in the CFG, we don't actually have the correct region to construct into at the time we decide whether or not to inline. The long-term fix (discussed in PR12014) might be to introduce a new CFG node (CFGAllocator) that appears before the constructor. Tracking the short-term fix in <rdar://problem/12180598>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162689 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[analyzer] Update inlining design notes for r162681.Jordan Rose
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162688 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27[analyzer] More internal stats collection.Anna Zaks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162687 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27Update comment, per Jordan's suggestion.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162684 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27Use cast<> instead of static_cast. Patch by Timur Iskhodzhanov!John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162683 91177308-0d34-0410-b5e6-96231b3b80d8