summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* Attempt to fix clang bootstrap (broken by r162425).Eli Friedman2012-08-231-2/+22
| | | | llvm-svn: 162440
* Fix undefined behavior: member function calls where 'this' is a null pointer.Richard Smith2012-08-239-33/+49
| | | | llvm-svn: 162430
* array_pod_sort on the addresses of declaration pointers leads toDouglas Gregor2012-08-231-5/+3
| | | | | | | inconsistent ordering of results; instead, use use SmallPtrSet to eliminate duplicates. llvm-svn: 162429
* Fix undefined behavior: don't call ObjCInterfaceDecl::isArcWeakrefUnavailableRichard Smith2012-08-231-5/+6
| | | | | | | on a null pointer. (This function happens to work for a null 'this' pointer, so no test.) llvm-svn: 162427
* Use the alignment from lvalue emission to more accurately compute the alignmentEli Friedman2012-08-233-95/+167
| | | | | | | of a pointer for builtin emission, instead of just depending on the type of the pointee. <rdar://problem/11314941>. llvm-svn: 162425
* Don't recycle loop variables (to keep GCC happy).Matt Beaumont-Gay2012-08-231-2/+2
| | | | llvm-svn: 162424
* Fix 80-column violation.Chad Rosier2012-08-231-1/+3
| | | | llvm-svn: 162416
* Fix an assortment of doxygen comment issues found by -Wdocumentation.Ted Kremenek2012-08-227-44/+38
| | | | llvm-svn: 162412
* [ms-inline asm] Compute the inputs and outputs. No test case (yet) as thisChad Rosier2012-08-221-1/+28
| | | | | | requires codegen support. llvm-svn: 162410
* [libclang] c-index-test: Make the printing of the overrides list of a cursor inArgyrios Kyrtzidis2012-08-222-3/+24
| | | | | | a deterministic order, to avoid random test failures. llvm-svn: 162408
* Comment parsing: parse "<blah" as an HTML tag only if "blah" is a known tagDmitri Gribenko2012-08-223-82/+134
| | | | | | | | | | name. This should reduce the amount of warning false positives about bad HTML in comments when the comment author intended to put a reference to a template. This change will also enable us parse the comment as intended in these cases. Fixes part 1 of PR13374. llvm-svn: 162407
* [analyzer] Fixup to r162399. Initialize the member variable.Anna Zaks2012-08-221-0/+2
| | | | llvm-svn: 162405
* [ms-inline asm] Refactor code so that we can begin computing the Inputs/Outputs.Chad Rosier2012-08-221-11/+19
| | | | | | No functional change intended. llvm-svn: 162403
* [analyzer] Add more comments to CallEvent and RuntimeDefinition.Anna Zaks2012-08-222-7/+27
| | | | llvm-svn: 162399
* [analyzer] Add osx.cocoa.NonNilReturnValue checker.Anna Zaks2012-08-223-0/+99
| | | | | | | | The checker adds assumptions that the return values from the known APIs are non-nil. Teach the checker about NSArray/NSMutableArray/NSOrderedSet objectAtIndex, objectAtIndexedSubscript. llvm-svn: 162398
* [ms-inline asm] Add comments.Chad Rosier2012-08-221-1/+3
| | | | llvm-svn: 162396
* [ms-inline asm] Add comments.Chad Rosier2012-08-221-1/+6
| | | | llvm-svn: 162394
* [ms-inline asm] Add helper function. No functional change intended.Chad Rosier2012-08-221-2/+7
| | | | llvm-svn: 162393
* [ms-inline asm] Simplify logic. No functional change intended.Chad Rosier2012-08-221-7/+2
| | | | llvm-svn: 162392
* Reverted clang-check to fully supported CommandLine Library use-case: globalAlexander Kornienko2012-08-225-142/+145
| | | | | | static variables. llvm-svn: 162391
* [ms-inline asm] Compute the token range for each instruction within the asm.Chad Rosier2012-08-221-4/+9
| | | | | | | Eventually, we'll need a way of mapping tokens (and their IdentifierInfo*) to the operands computed by buildMSAsmPieces(). llvm-svn: 162388
* Despite me asking Jordan to do r162313, revert it. We can provideTed Kremenek2012-08-223-33/+30
| | | | | | another way to whitelist these special cases. This is an intermediate patch. llvm-svn: 162386
* [ms-inline asm] Simplify logic. No functional change intended.Chad Rosier2012-08-221-5/+11
| | | | llvm-svn: 162385
* Remove BasicConstraintManager. It hasn't been in active service for a while.Ted Kremenek2012-08-2230-481/+6
| | | | | | | | As part of this change, I discovered that a few of our tests were not testing the RangeConstraintManager. Luckily all of those passed when I moved them over to use that constraint manager. llvm-svn: 162384
* [ms-inline asm] Start sending non-simple inline asms to the AsmParser.Chad Rosier2012-08-223-18/+28
| | | | | | | The parser still can't handle all cases, so fall back to emitting a simple MSAsmStmt if we get into trouble. llvm-svn: 162382
* Make ceil/floor/nearbyint/rint/round const even with -fmath-errno.Benjamin Kramer2012-08-222-16/+31
| | | | | | | | The conditions described by POSIX can never happen with IEEE-754 floats. When the function is const we can emit a single sse4.1 instruction for it, without losing anything :) llvm-svn: 162379
* Math builtin definition tweaks.Benjamin Kramer2012-08-222-9/+209
| | | | | | | | | | | | | | | | | There were missed optimizations when the system headers didn't have attributes in place, specifically: - Add copysign, exp2, log2, nearbyint, rint and trunc to the list. These are functions that get inlined by LLVM's optimizer, but only when they have the right attributes. - Mark copysign, fabs, fmax, fmin and trunc const unconditionally. Previously these were only const with -fno-math-errno, but they never set errno per POSIX. For ceil/floor/nearbyint/round I'm not aware of any implementation that sets errno, but POSIX says it may signal overflow so I left them alone for now. llvm-svn: 162375
* ASTContext::getCommentForDecl: add comment.Dmitri Gribenko2012-08-221-0/+4
| | | | llvm-svn: 162374
* Attaching comments to declarations: when documentation is requested for anDmitri Gribenko2012-08-222-5/+213
| | | | | | implicit instantiation, look for documentation attached to the template. llvm-svn: 162371
* [analyzer] Restructure discussion of DynamicTypeInfo and RuntimeDefinition.Jordan Rose2012-08-221-63/+65
| | | | | | | | | | Since DynamicTypeInfo is not inherently related to inlining or to dynamic calls, it makes more sense (to me) to discuss it first. Also fix some typos, massage some grammar, and (hopefully) improve precision and clarity. llvm-svn: 162365
* [analyzer] Per feedback, re-structure the docs for ExprInspection checks.Jordan Rose2012-08-221-30/+51
| | | | | | | | Also, remove the FIXME about merging -analyzer-stats and the debug.Stats checker. This would be a bad idea because simply running debug.Stats can affect the output of -analyzer-stats. llvm-svn: 162364
* Reduce duplicated hash map lookups.Benjamin Kramer2012-08-225-23/+11
| | | | llvm-svn: 162361
* Merge existing attributes before processing pragmas in friend templateRafael Espindola2012-08-222-2/+10
| | | | | | | declarations. Fixes pr13662. llvm-svn: 162360
* Fix typo in debug method.Benjamin Kramer2012-08-221-1/+1
| | | | llvm-svn: 162352
* Rename 'unbindLoc()' (in ProgramState) and 'Remove()' toTed Kremenek2012-08-225-11/+23
| | | | | | | | | 'killBinding()'. The name is more specific, and one just forwarded to the other. Add some doxygen comments along the way. llvm-svn: 162350
* Rename 'currentX' to 'currX' throughout analyzer and libAnalysis.Ted Kremenek2012-08-2214-126/+115
| | | | | | | | | Also rename 'getCurrentBlockCounter()' to 'blockCount()'. This ripples a bunch of code simplifications; mostly aesthetic, but makes the code a bit tighter. llvm-svn: 162349
* Rename 'getConjuredSymbol*' to 'conjureSymbol*'.Ted Kremenek2012-08-2213-101/+93
| | | | | | | | | | No need to have the "get", the word "conjure" is a verb too! Getting a conjured symbol is the same as conjuring one up. This shortening is largely cosmetic, but just this simple changed cleaned up a handful of lines, making them less verbose. llvm-svn: 162348
* Remove Store::bindDecl() and Store::bindDeclWithNoInit(), andTed Kremenek2012-08-226-57/+26
| | | | | | | | all forwarding methods. This functionality is already covered by bindLoc(). llvm-svn: 162346
* Rename 'BindCompoundLiteral' to 'bindCompoundLiteral' andTed Kremenek2012-08-224-16/+35
| | | | | | add doxygen comments. llvm-svn: 162345
* [analyzer] IPA document: address Ted's review comments (pathAnna Zaks2012-08-221-27/+19
| | | | | | bifurcation) llvm-svn: 162343
* Remove stale header file.Ted Kremenek2012-08-222-36/+0
| | | | llvm-svn: 162341
* Review, comment, and reformat IPA.txt, including feedback comments.Ted Kremenek2012-08-221-53/+259
| | | | | | | | | | | | | | | | | | | | | | | | | | Formatting includes: - removing line wraps (Emacs Cmd-Q), to make text easier to read - provide useful indentation - call out caveats and notes more explictly Stylistically, I prefer the document talk in 3rd person instead of "we". The term "we" is unambiguous, and sometimes refers to different things. I've passed over the existing paragraphs and made them speak more about specific entities that compose the analyzer and what they do (e.g., ExprEngine) instead of "we" referring to the analyzer. Further, I have substituted some vague concepts such as "state" or "program state" and replaced them with their precise implementation counterparts (e.g., ProgramState). This makes the document more technically precise throughout the entire narrative, which would sometimes use vague terms and other times precise terms. I've placed several comments within the document, which can be seen with ***TMK/COMMENT***, which indicate places that need to be enhanced or clarified, or called out as questions about intended bheavior. llvm-svn: 162338
* [analyzer] Document our debug checkers and ExprInspection's "builtins".Jordan Rose2012-08-221-0/+68
| | | | llvm-svn: 162336
* Consilidate SmallPtrSet count() followed by insert() into a single insert().Ted Kremenek2012-08-221-6/+2
| | | | llvm-svn: 162330
* [ms-inline asm] Remove the patchMSAsmStrings function. After some discussionChad Rosier2012-08-211-134/+17
| | | | | | | between Bob, Jim, Eric and I, we've decided to take a slightly different approach. llvm-svn: 162327
* Add an llvm_unreachable to pacify GCC's -Wreturn-type.Matt Beaumont-Gay2012-08-211-0/+1
| | | | llvm-svn: 162325
* make test pass on linux platforms.Fariborz Jahanian2012-08-211-2/+2
| | | | llvm-svn: 162324
* [ms-inline asm] Have buildMSAsmString build a vector of unmodified AsmStrings.Chad Rosier2012-08-211-7/+35
| | | | | | | | | | Add a new static function, buildMSAsmPieces, that will break these strings down into mnemonic and operands. Upon a match failure, the idea is to use the ErrorInfo from MatchInstructionImpl to inspect the mnemonic/operand and decide a course of action. Unfortunately, there's no easy way to test this at the moment. llvm-svn: 162321
* change function name in my last patch.Fariborz Jahanian2012-08-211-3/+3
| | | | | | // rdar://12103400 llvm-svn: 162320
* objective-C: Change rules for overriding properties in Fariborz Jahanian2012-08-213-15/+76
| | | | | | | | | class extensions a little. clang now allows readonly property with no ownership rule (assign, unsafe_unretained, weak, retain, strong, or copy) with a readwrite property with an ownership rule. // rdar://12103400 llvm-svn: 162319
OpenPOWER on IntegriCloud