| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 162440
|
|
|
|
| |
llvm-svn: 162430
|
|
|
|
|
|
|
| |
inconsistent ordering of results; instead, use use SmallPtrSet to
eliminate duplicates.
llvm-svn: 162429
|
|
|
|
|
|
|
| |
on a null pointer. (This function happens to work for a null 'this' pointer, so
no test.)
llvm-svn: 162427
|
|
|
|
|
|
|
| |
of a pointer for builtin emission, instead of just depending on the type of the
pointee. <rdar://problem/11314941>.
llvm-svn: 162425
|
|
|
|
| |
llvm-svn: 162424
|
|
|
|
| |
llvm-svn: 162416
|
|
|
|
| |
llvm-svn: 162412
|
|
|
|
|
|
| |
requires codegen support.
llvm-svn: 162410
|
|
|
|
|
|
| |
a deterministic order, to avoid random test failures.
llvm-svn: 162408
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
llvm-svn: 162405
|
|
|
|
|
|
| |
No functional change intended.
llvm-svn: 162403
|
|
|
|
| |
llvm-svn: 162399
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
llvm-svn: 162396
|
|
|
|
| |
llvm-svn: 162394
|
|
|
|
| |
llvm-svn: 162393
|
|
|
|
| |
llvm-svn: 162392
|
|
|
|
|
|
| |
static variables.
llvm-svn: 162391
|
|
|
|
|
|
|
| |
Eventually, we'll need a way of mapping tokens (and their IdentifierInfo*) to
the operands computed by buildMSAsmPieces().
llvm-svn: 162388
|
|
|
|
|
|
| |
another way to whitelist these special cases. This is an intermediate patch.
llvm-svn: 162386
|
|
|
|
| |
llvm-svn: 162385
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
The parser still can't handle all cases, so fall back to emitting a simple
MSAsmStmt if we get into trouble.
llvm-svn: 162382
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
llvm-svn: 162374
|
|
|
|
|
|
| |
implicit instantiation, look for documentation attached to the template.
llvm-svn: 162371
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
llvm-svn: 162361
|
|
|
|
|
|
|
| |
declarations.
Fixes pr13662.
llvm-svn: 162360
|
|
|
|
| |
llvm-svn: 162352
|
|
|
|
|
|
|
|
|
| |
'killBinding()'. The name is more specific, and one just forwarded
to the other.
Add some doxygen comments along the way.
llvm-svn: 162350
|
|
|
|
|
|
|
|
|
| |
Also rename 'getCurrentBlockCounter()' to 'blockCount()'.
This ripples a bunch of code simplifications; mostly aesthetic,
but makes the code a bit tighter.
llvm-svn: 162349
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
all forwarding methods.
This functionality is already covered by bindLoc().
llvm-svn: 162346
|
|
|
|
|
|
| |
add doxygen comments.
llvm-svn: 162345
|
|
|
|
|
|
| |
bifurcation)
llvm-svn: 162343
|
|
|
|
| |
llvm-svn: 162341
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
llvm-svn: 162336
|
|
|
|
| |
llvm-svn: 162330
|
|
|
|
|
|
|
| |
between Bob, Jim, Eric and I, we've decided to take a slightly different
approach.
llvm-svn: 162327
|
|
|
|
| |
llvm-svn: 162325
|
|
|
|
| |
llvm-svn: 162324
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
// rdar://12103400
llvm-svn: 162320
|
|
|
|
|
|
|
|
|
| |
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
|