- Sep 20, 2007
-
-
Ted Kremenek authored
"Visitors" is more general than "CFGVisitors", as we aren't just using visitation useful for CFG analysis. llvm-svn: 42174
-
Ted Kremenek authored
We had enough visitors that it was cluttering the Analysis directory. llvm-svn: 42173
-
Fariborz Jahanian authored
ObjcInterfaceClass Objects. llvm-svn: 42172
-
Fariborz Jahanian authored
1. Detect used of undeclared/forward declared super class. 2. Detect duplicate definition of a class. llvm-svn: 42168
-
Hartmut Kaiser authored
Disambiguated a variable. llvm-svn: 42161
-
- Sep 19, 2007
-
-
Ted Kremenek authored
functionality is still preliminary. llvm-svn: 42152
-
Ted Kremenek authored
Moved GraphTraits<Stmt*> to StmtGraphTraits.h. This allows consumers of Stmt.h not to have to pay the cost of parsing the GraphTraits templates if they don't need that functionality. Defined nodes_iterator for GraphTraits<Stmt*> to be based on llvm::df_iterator. llvm-svn: 42150
-
Fariborz Jahanian authored
llvm-svn: 42148
-
Ted Kremenek authored
llvm-svn: 42146
-
Ted Kremenek authored
llvm-svn: 42145
-
Ted Kremenek authored
The extended functionality of these visitors is that they automatically visit all statements in an AST (no explicit recursion is required from subclasses), and the for the latter, decls are visited as well. llvm-svn: 42144
-
Steve Naroff authored
Remove SelectorTable/SelectorInfo, simply store all selectors in the central IdentifierTable. Rationale: We currently have a separate table to unique ObjC selectors. Since I don't need all the instance data in IdentifierInfo, I thought this would save space (and make more sense conceptually). It turns out the cost of having duplicate entries for unary selectors (i.e. names without colons) outweighs the cost difference between the IdentifierInfo & SelectorInfo structures. Here is the data: Two tables: *** Selector/Identifier Stats: # Selectors/Identifiers: 51635 Bytes allocated: 1999824 One table: *** Identifier Table Stats: # Identifiers: 49500 Bytes allocated: 1990316 llvm-svn: 42139
-
Steve Naroff authored
Remove #include of config.h, it is no longer needed. llvm-svn: 42126
-
Steve Naroff authored
llvm-svn: 42117
-
Steve Naroff authored
Progress on message expressions... - Add ObjcMessageExpr AST node and associated constructors. - Add SourceLocation's to ActOnKeywordMessage/ActOnUnaryMessage API. - Instantiate message expressions... - Replace alloca usage with SmallString. Next step, installing a correct type, among other tweaks... llvm-svn: 42116
-
Ted Kremenek authored
to specify how two dataflow values should be compared for equality. The default is to use std::equal_to. llvm-svn: 42115
-
Ted Kremenek authored
wrong bitvector. llvm-svn: 42114
-
Ted Kremenek authored
rather than a special "equal" method defined in the class for the value. llvm-svn: 42113
-
- Sep 18, 2007
-
-
Ted Kremenek authored
called VisitStmt, but VisitChildren is more direct and creates less boilerplate logic. llvm-svn: 42110
-
Ted Kremenek authored
llvm-svn: 42109
-
Ted Kremenek authored
invocation of the solver. UninitializedValues checker now uses CFG::runOnAllBlocks to query the computed dataflow values (tighter code). llvm-svn: 42107
-
Ted Kremenek authored
of visiting all block-level statements in a CFG. Tightened implementation of UninitializedValues. llvm-svn: 42106
-
Ted Kremenek authored
llvm-svn: 42105
-
Fariborz Jahanian authored
llvm-svn: 42104
-
Ted Kremenek authored
variable instead of a temporary. llvm-svn: 42102
-
Ted Kremenek authored
with CFG *edges* instead of blocks. This will fascilitate dataflow analyses that are sensitive to block terminators, and also simplifies some reasoning. Updated UninitializedValues to comply to this new interface. llvm-svn: 42099
-
Ted Kremenek authored
within source-level CFGs. llvm-svn: 42098
-
Hartmut Kaiser authored
llvm-svn: 42089
-
Gabor Greif authored
llvm-svn: 42088
-
Fariborz Jahanian authored
Moves such argument as the last argument and uses defaul value. llvm-svn: 42073
-
Hartmut Kaiser authored
llvm-svn: 42072
-
Fariborz Jahanian authored
instead for @protocol method decls. llvm-svn: 42070
-
- Sep 17, 2007
-
-
Ted Kremenek authored
too "conservative"). Several revisions to UninitializedValues checker after testing. We now appear to be working correctly (probably some bugs still, but main functionality appears to be there). Implemented careful emitting of warnings so that we wouldn't get a cascade of warnings for simply not defining a single variable and using it everywhere. This way the warnings point closer to the root cause rather than "symptoms" from using values derived from uninitialized variables. llvm-svn: 42067
-
Steve Naroff authored
llvm-svn: 42063
-
Ted Kremenek authored
llvm-svn: 42062
-
Hartmut Kaiser authored
Fixed a VC++ issue related to bitmasks. As it turns out the compiler fills the unused bits of the word a bitmask is stored in with '1' (or randomly, I can't tell, I've seen '1' so far only), which creates wrong results in certain cases. Please review. llvm-svn: 42061
-
Fariborz Jahanian authored
llvm-svn: 42060
-
Steve Naroff authored
Finish defining Action API for message expressions. llvm-svn: 42059
-
Ted Kremenek authored
llvm-svn: 42057
-
Ted Kremenek authored
llvm-svn: 42056
-