- Nov 13, 2008
-
-
Ted Kremenek authored
llvm-svn: 59191
-
- Nov 12, 2008
-
-
Dan Gohman authored
special-purpose hook to a new pass. Also, add check to see if any x87 virtual registers are used, to avoid doing any work in the common case that no x87 code is needed. llvm-svn: 59190
-
Ted Kremenek authored
llvm-svn: 59188
-
Ted Kremenek authored
llvm-svn: 59187
-
Ted Kremenek authored
llvm-svn: 59186
-
Ted Kremenek authored
PreprocessorLexer now has a virtual method "IndirectLex" which allows it to call the lex method of its subclasses. This is not for performance intensive operations. llvm-svn: 59185
-
Daniel Dunbar authored
something that is not an int. - Ignore these cases for now, added FIXME that we should also boolize them. llvm-svn: 59184
-
Ted Kremenek authored
llvm-svn: 59181
-
Ted Kremenek authored
llvm-svn: 59180
-
Ted Kremenek authored
Add Preprocessor::PushIncludeMacroStack() and Preprocessor::PopIncludeMacroStack(), two utility methods for manipulating the Preprocessor stack. These will be used to remove manually manipulation of IncludeMacroStack from the rest of the Preprocessor implementation. llvm-svn: 59179
-
Ted Kremenek authored
Update CFGStmtVisitor to recognize that ObjCForCollectionStmts are special block-level "expressions". llvm-svn: 59176
-
Daniel Dunbar authored
llvm-svn: 59174
-
Douglas Gregor authored
llvm-svn: 59173
-
Evan Cheng authored
llvm-svn: 59170
-
Ted Kremenek authored
llvm-svn: 59169
-
Ted Kremenek authored
Move pieces of Lexer that the Preprocessor mutates to a new base class 'PreprocessorLexer'. This will also be the base class of the new Preprocessed-Token-Header (PTH) lexer. No functionality change. llvm-svn: 59168
-
Chris Lattner authored
llvm-svn: 59167
-
Sebastian Redl authored
llvm-svn: 59165
-
Chris Lattner authored
llvm-svn: 59163
-
Ted Kremenek authored
llvm-svn: 59162
-
Ted Kremenek authored
llvm-svn: 59161
-
Ted Kremenek authored
llvm-svn: 59160
-
Oscar Fuentes authored
LLVMSystem. llvm-svn: 59159
-
Oscar Fuentes authored
llvm-svn: 59158
-
Chris Lattner authored
llvm-svn: 59157
-
Chris Lattner authored
adding a testcase. llvm-svn: 59156
-
Ted Kremenek authored
Add (preliminary) transfer function support for ObjCForCollectionStmt. Still need to flesh out some logic. When processing DeclStmt, use the new interface to StateManager::BindDecl. Conjuring of symbols is now done in VisitDeclStmt. llvm-svn: 59155
-
Ted Kremenek authored
llvm-svn: 59154
-
Ted Kremenek authored
llvm-svn: 59153
-
Ted Kremenek authored
- Rename SetSVal to BindLoc - Add BindDecl - Add BindExpr GRState: - Environment now binds to Stmt* instead of Expr*. This is needed for processing ObjCForCollectionStmt (essentially the declaration of the the 'element' variable can have an SVal attached to it). - BindDecl no longer accepts Expr* for the initialization value; use SVal* instead. llvm-svn: 59152
-
Ted Kremenek authored
StoreManager::BindDecl now takes an SVal* for the initialization value instead of an Expr* (which can be null). Lazy symbolication of conjured symbols is now the sole responsibility of GRExprEngine. llvm-svn: 59151
-
Dale Johannesen authored
llvm-svn: 59150
-
Douglas Gregor authored
functions for built-in operators, e.g., the builtin bool operator==(int const*, int const*) can be used for the expression "x1 == x2" given: struct X { operator int const*(); } x1, x2; The scheme for handling these built-in operators is relatively simple: for each candidate required by the standard, create a special kind of candidate function for the built-in. If overload resolution picks the built-in operator, we perform the appropriate conversions on the arguments and then let the normal built-in operator take care of it. There may be some optimization opportunity left: if we can reduce the number of built-in operator overloads we generate, overload resolution for these cases will go faster. However, one must be careful when doing this: GCC generates too few operator overloads in our little test program, and fails to compile it because none of the overloads it generates match. Note that we only support operator overload for non-member binary operators at the moment. The other operators will follow. As part of this change, ImplicitCastExpr can now be an lvalue. llvm-svn: 59148
-
Dan Gohman authored
the debug output, so that the updated liveness flags are reflected in the debug output. llvm-svn: 59147
-
Dan Gohman authored
coalescing as a separate pass rather than inside of LiveIntervalAnalysis. llvm-svn: 59146
-
Dan Gohman authored
no longer records a unique defining instruction, and virtual registers may have multiple kills while still being defined and killed in the same block. llvm-svn: 59145
-
Dan Gohman authored
llvm-svn: 59143
-
Tanya Lattner authored
llvm-svn: 59142
-
Mikhail Glushenkov authored
When constructing std::strings from C strings, we should check the input value to be not NULL so that the std::string constructor does not segfault. Fixes #3047. llvm-svn: 59131
-
Daniel Dunbar authored
llvm-svn: 59130
-