aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-03-11Expanded graph-visualization to include optional pretty-printing of ↵Ted Kremenek
checker-specific state. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48238 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-11Expanded ValueState pretty-printing to use an optional "CheckerStatePrinter"Ted Kremenek
object to pretty-print the component of a state that is specific to a checker. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48237 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-11Expanded graph visualization interface to include specifying a range ofTed Kremenek
nodes to use a trim sources. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48236 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-11Make "super" rewrite for class methods C++ friendly (follow-up from last ↵Steve Naroff
commit). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48235 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-11Added bookkeeping of error nodes.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48234 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-11Added main logic for typestate tracking for the CFRetain checker.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48231 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-11Make "super" rewrite C++ friendly (since it doesn't support Compound Literals).Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48230 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-11Added main skeleton for CFRetain transfer function logic.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48214 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-11Generate meta-data in a C++ compatible way (remove 2 dependencies on C ↵Steve Naroff
"flexible array member" idiom and perform some extra casts). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48202 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10Missed a couple "_IMPL" suffixes.Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48191 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10Fix dangling pointer and give the implementation struct for a class a unique ↵Steve Naroff
name. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48190 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10Add support for the 'N' constraint.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48185 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10Pass LangOptions to RewriteTest().Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48172 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10rewriter tests are darwin specific, don't run them on other platforms.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48168 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10Fix "error: explicit template specialization cannot have a storage class" Chris Lattner
with gcc 4.4, patch by Shantonu Sen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48155 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10Add some missing #includes for GCC mainline, patch by Shantonu Sen!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48153 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10Add transfer function support for pointer arithmetic where theTed Kremenek
increment/decrement operand is on the left side. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48144 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10add comments about some simple optimizations that may become Chris Lattner
more important if this api gets wider use. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48131 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10implement simple support for arbitrary token lookahead. Change the Chris Lattner
objc @try parser to use it, fixing a FIXME. Update the objc-try-catch-1.m file to pass now that we get more reasonable errors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48129 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10More edge-case handling with using liveness information to prune dead state ↵Ted Kremenek
values. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48127 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10More cleanups with using the liveness analysis to removed dead symbols andTed Kremenek
variables from the symbolic state. Now we keep a mapping from the predecessor node of a statement and its cleaned state, and interpose an accessor "GetState()" to return the cleaned state when the node is the predecessor node, and the real state otherwise. This obviates problem of ever accidentally cleaning the state more than once (thus blowing away new bindings by mistake). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48124 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09When processing the transfer function for a statement, evaluateTed Kremenek
RemoveDeadBindings early because (1) it will always be called and (2) we can dispatch to a plug-in transfer function that can evaluate the effect of dead symbols (not yet added). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48114 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09Refactored guards for "GRExprEngine::RemoveDeadBindings" directly into theTed Kremenek
method. This paves the way for other alterations to RemoveDeadBindings that are transparent to its callers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48113 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09Bug fix in the transfer function for compound assignments: if the valueTed Kremenek
of the LHS expressions is Unknown, the value of the entire expression does not evaluate to the RHS (as is the case with normal assignments). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48102 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09Handle the 'n' constraintAnders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48091 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09Fix a ted-oChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48089 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09Fixed crash where SetBlkExpr would attempt to query the liveness data whenTed Kremenek
we weren't processing a statement within a basic block. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48087 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09improve comment.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48083 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09move PP::LookupFile from PPLexerChange -> PPDirectives.cppChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48082 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09Add PPLexerChange.cpp to the project.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48081 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09Move a bunch more code out of Preprocessor.cpp into PPLexerChange.cppChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48080 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09Bug fix: Don't call RemoveDeadBindings more than once (can kill newly ↵Ted Kremenek
generated values to Block-Level Expressions). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48079 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09split macro expansion support out of Preprocessor.cpp into PPMacroExpansion.cppChris Lattner
Rename Directives.cpp -> PPDirectives.cpp since it implements part of the Preprocessor class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48078 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09Propagate calling convention information to function declarations and CallInstNate Begeman
instructions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48077 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09rename HandleEndOfMacro -> HandleEndOfTokenLexerChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48076 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09split the MacroArgs class out of TokenLexer.cpp/h intoChris Lattner
MacroArgs.cpp/h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48075 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09update documentationChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48074 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09rename some MacroExpander-related ivars to TokenLexer.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48073 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09Rename MacroExpander.cpp/h -> TokenLexer.cpp/hChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48072 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09rename the MacroExpander class to TokenLexer. It handles bothChris Lattner
token streams and macro lexing, so a more generic name is useful. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48071 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09rename MacroTokens -> Tokens. When this is a token stream, there is no macroChris Lattner
involved. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48070 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09fix clang xcode buildNate Begeman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48069 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09split preprocesor directive handling out of Preprocessor.cpp into Directives.cppChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48068 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09secondary targets are gone, simplify this.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48067 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09simplify triple processing code now that there can be only one arch specified.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48066 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-09be more quiet when building headers.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48065 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-08add some comments.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48053 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-08make float format handling more regular.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48052 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-08simplify all the type info accessors in TargeTInfo to return scalars,Chris Lattner
which is simpler to use and provide. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48051 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-08Fix a fixme by allowing pointers in different address spaces to haveChris Lattner
different widths. Start simplifying TargetInfo accessor methods. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48050 91177308-0d34-0410-b5e6-96231b3b80d8