- Aug 22, 2012
-
-
Rafael Espindola authored
declarations. Fixes pr13662. llvm-svn: 162360
-
Benjamin Kramer authored
llvm-svn: 162352
-
Ted Kremenek authored
'killBinding()'. The name is more specific, and one just forwarded to the other. Add some doxygen comments along the way. llvm-svn: 162350
-
Ted Kremenek authored
Also rename 'getCurrentBlockCounter()' to 'blockCount()'. This ripples a bunch of code simplifications; mostly aesthetic, but makes the code a bit tighter. llvm-svn: 162349
-
Ted Kremenek authored
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
-
Ted Kremenek authored
all forwarding methods. This functionality is already covered by bindLoc(). llvm-svn: 162346
-
Ted Kremenek authored
add doxygen comments. llvm-svn: 162345
-
Anna Zaks authored
bifurcation) llvm-svn: 162343
-
Ted Kremenek authored
llvm-svn: 162341
-
Ted Kremenek authored
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
-
Jordan Rose authored
llvm-svn: 162336
-
Ted Kremenek authored
llvm-svn: 162330
-
Chad Rosier authored
between Bob, Jim, Eric and I, we've decided to take a slightly different approach. llvm-svn: 162327
-
Matt Beaumont-Gay authored
llvm-svn: 162325
-
Fariborz Jahanian authored
llvm-svn: 162324
-
- Aug 21, 2012
-
-
Chad Rosier authored
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
-
Fariborz Jahanian authored
// rdar://12103400 llvm-svn: 162320
-
Fariborz Jahanian authored
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
-
Jordan Rose authored
Under -analyzer-ipa=basic-inlining, only C functions, blocks, and C++ static member functions are inlined -- essentially, the calls that behave like simple C function calls. This is essentially the behavior in Xcode 4.4. C++ support still has some rough edges, and we don't want users to be worried about them if they download and run their own checker. (In particular, the massive number of false positives for analyzing LLVM comes from inlining defensively-written code in contexts where more aggressive assumptions are implicitly made. This problem is not unique to C++, but it is exacerbated by the higher proportion of code that lives in header files in C++.) The eventual goal is to be comfortable enough with C++ support (and simple Objective-C support) to advance to -analyzer-ipa=inlining as the default behavior. See the IPA design notes for more details. llvm-svn: 162318
-
Jordan Rose authored
The actual change here is a little more complicated than the summary above. What we want to do is have our generic inlining tests run under whatever mode is the default. However, there are some tests that depend on the presence of C++ inlining, which still has some rough edges. These tests have been explicitly marked as -analyzer-ipa=inlining in preparation for a new mode that limits inlining to C functions and blocks. This will be the default until the false positives for C++ have been brought down to manageable levels. llvm-svn: 162317
-
Dmitri Gribenko authored
llvm-svn: 162316
-
Dmitri Gribenko authored
Skip paragraphs that contain only whitespace. llvm-svn: 162315
-
Jordan Rose authored
This reduces duplication across the Basic and Range constraint managers, and keeps their internals free of dealing with the semantics of C++. It's still a little unfortunate that the constraint manager is dealing with this at all, but this is pretty much the only place to put it so that it will apply to all symbolic values, even when embedded in larger expressions. llvm-svn: 162313
-
Chad Rosier authored
llvm-svn: 162307
-
Fariborz Jahanian authored
for structure valued method messaging. // rdar://12142241 llvm-svn: 162303
-
David Blaikie authored
(from a todo mentioned in r159469 & originally suggested by Chandler Carruth) llvm-svn: 162302
-
Michael J. Spencer authored
llvm-svn: 162299
-
Richard Smith authored
llvm-svn: 162297
-
Chad Rosier authored
this is the index of the operand that failed to match. llvm-svn: 162296
-
Dmitri Gribenko authored
llvm-svn: 162294
-
Dmitri Gribenko authored
to reflect the intention, not the implementation. llvm-svn: 162293
-
Chad Rosier authored
llvm-svn: 162289
-
Chad Rosier authored
llvm-svn: 162288
-
Chad Rosier authored
PR9673 llvm-svn: 162285
-
Kostya Serebryany authored
[asan] If we are compiling with ASan, add metadata indicating dynamically initialized globals. Patch by Reid Watson, reviewed by Richard Smith llvm-svn: 162259
-
Richard Smith authored
llvm-svn: 162255
-
John McCall authored
to overwrite objects that might have been allocated into the type's tail padding. This patch is missing some potential optimizations where the destination is provably a complete object, but it's necessary for correctness. Patch by Jonathan Sauer. llvm-svn: 162254
-
Richard Smith authored
if a diagnostic is emitted outside of any source file. The fix mirrors the corresponding code in TextDiagnosticPrinter. This required moving the functional parts of SDiagRenderer into SDiagWriter so they can be reused in the non-rendering codepath. No functionality change. llvm-svn: 162253
-
John McCall authored
diagnostics for bad deployment targets and adding a few more predicates. Includes a patch by Jonathan Schleifer to enable ARC for ObjFW. llvm-svn: 162252
-
Dmitri Gribenko authored
llvm-svn: 162251
-