- Oct 10, 2007
-
-
Chris Lattner authored
llvm-svn: 42838
-
Steve Naroff authored
Fix a latent bug in MinimalActions (created by a recent name change). llvm-svn: 42829
-
Chris Lattner authored
predefined macros. Previously, these were handled by the driver, now they are handled by the preprocessor. Some fallout of this: 1. Instead of preprocessing two buffers (the predefines, then the main source file) we now start preprocessing the main source file and inject the predefines as a "psuedo #include" from the main source file. 2. #1 allows us to nuke the Lexer::IsMainFile flag and simplify Preprocessor::isInPrimaryFile. 3. The driver doesn't have to know about standard #defines, the preprocessor knows, which is nice for people wanting to define their own drivers. 4. This allows us to put normal tokens in the predefine buffer, for example a definition for __builtin_va_list that is target-specific, and a typedef for id in objc. llvm-svn: 42818
-
- Oct 09, 2007
-
-
Chris Lattner authored
llvm-svn: 42800
-
Fariborz Jahanian authored
Protocols are now sorted and made unique in the list. Enhanced pretty printer for @interface (So, I can see the protocol list). llvm-svn: 42776
-
- Oct 08, 2007
-
-
Fariborz Jahanian authored
(minimal printing), Derive ObjcClassDecl from Decl. Ted may want to take note of the change I made to CFGRecStmtDeclVisitor.h llvm-svn: 42764
-
- Oct 07, 2007
-
-
Chris Lattner authored
llvm-svn: 42730
-
Chris Lattner authored
llvm-svn: 42718
-
- Oct 06, 2007
-
-
Chris Lattner authored
llvm-svn: 42704
-
Chris Lattner authored
llvm-svn: 42703
-
Chris Lattner authored
for holding builtin target-specific macros. llvm-svn: 42689
-
- Oct 01, 2007
-
-
Ted Kremenek authored
tracked BlkExpr information now maintained by the CFG class. llvm-svn: 42498
-
- Sep 26, 2007
-
-
Ted Kremenek authored
using "-parse-ast -verify". Updated all test cases (using a sed script) that invoked -parse-ast-check to now use -parse-ast -verify. Fixed a bug where using "-verify" instead of "-parse-ast-check" would not correctly create the DiagClient needed to accumulate diagnostics. llvm-svn: 42365
-
Ted Kremenek authored
declaration. This is because this option is logically tightly connected to the actions defined in ProgAction. llvm-svn: 42364
-
Ted Kremenek authored
aren't used auto_ptr's anymore. llvm-svn: 42363
-
Ted Kremenek authored
ASTConsumer can also be verified using the diagnostics checker. From the command line, users may activate diagnostic checking using the "-verify" option. For example, "clang -verify -warn-dead-stores" checks if the warnings flagged by the dead store checker match those in the comments. Note that we still have the option "-parse-ast-check" for backwards comptability with existing test cases. This option is now equivalent to "-parse-ast -verify". llvm-svn: 42362
-
- Sep 25, 2007
-
-
Ted Kremenek authored
llvm-svn: 42317
-
Ted Kremenek authored
"CheckDiagnostics" (used for -parse-ast-check) to check the diagnostics of any ASTConsumer. Reimplemented CheckDiagnostics to use CheckASTConsumer instead. Added driver option -warn-dead-stores-check, which checks the diagnostics generated by the DeadStores checker. This is implemented using CheckASTConsumer.111 llvm-svn: 42310
-
Ted Kremenek authored
"-check-uninit-values" to "-warn-dead-stores" and "-warn-uninit-values" llvm-svn: 42307
-
Ted Kremenek authored
between forward and backward analyses, with trait classes being used to implement the key differences in operations/functionality. Converted the LiveVariables analysis to use the generic DataflowSolver. This, along with removing some extra functionality that was not needed, reduced the code for LiveVariables by over half. Modified Driver code to handle the updated interface to LiveVariables. Modified the DeadStores checker to handle the update interface to LiveVariables. Updated DataflowValues (generic ADT to store dataflow values) to also store values for blocks. This is used by DeadStores. Updated some comments. llvm-svn: 42293
-
- Sep 19, 2007
-
-
Ted Kremenek authored
functionality is still preliminary. llvm-svn: 42152
-
- Sep 17, 2007
-
-
Ted Kremenek authored
llvm-svn: 42062
-
Ted Kremenek authored
globals and function parameters. llvm-svn: 42055
-
Ted Kremenek authored
in the CFG builder logic. llvm-svn: 42033
-
- Sep 16, 2007
-
-
Chris Lattner authored
llvm-svn: 42013
-
Chris Lattner authored
"The ExpectedStr search was starting at the end of the comment string. This patch starts the search at the beginning of the comment string. After applying this patch, clang -parse-ast-check on negative test case source files worked as expected." llvm-svn: 42012
-
Chris Lattner authored
this eliminates their dependence on the preprocessor and eliminates some duplicated code. llvm-svn: 41993
-
Chris Lattner authored
genericizing them and eliminating boilerplate code. llvm-svn: 41992
-
Chris Lattner authored
Switch -parse-ast over to it. llvm-svn: 41991
-
Chris Lattner authored
llvm-svn: 41990
-
- Sep 15, 2007
-
-
Steve Naroff authored
Start converting Action methods from Parse-prefix to ActOn-prefix. The previous naming scheme was confusing, since it resulted in both the Parser and Action modules having methods with the same name. In addition, the Action module never does any parsing... llvm-svn: 41986
-
- Sep 13, 2007
-
-
Steve Naroff authored
Phase 2 of making the Decl class more lightweight... Move Identifier/Loc instance variables (and associated getters/setters) down from Decl to ScopedDecl/FieldDecl. Objc AST's can now inherit from Decl without getting instance variables and types that are C specific. For now, I am keeping NextDeclarator, since I believe it may be useful to ObjC. If not, it can be moved later. llvm-svn: 41934
-
Chris Lattner authored
llvm-svn: 41906
-
- Sep 12, 2007
-
-
Steve Naroff authored
Fix the following bug submitted by Ted Kremenek: void func() { int xx = xx; // incorrectly diagnosed 'xx' as an undeclared identifier. } This smallish bug resulted in a largish fix. Here are some highlights: - Needed to make sure ParseDeclarator is called *before* parsing any initializer. Removed the "Init" argument to ParseDeclarator. - Added AddInitializerToDecl() to the Action & Sema classes. In Sema, this hook is responsible for validating the initializer and installing it into the respective decl. - Moved several semantic checks from ParseDeclarator() to FinalizeDeclaratorGroup(). Previously, this hook was only responsible for reversing a list. Now it plays a much larger semantic role. All of the above changes ended up simplifying ParseDeclarator(), which is goodness... llvm-svn: 41877
-
- Sep 10, 2007
-
-
Steve Naroff authored
llvm-svn: 41803
-
Ted Kremenek authored
that refer to direct function calls. Modified interface of LiveVariables to only track liveness of VarDecls. This cleans up a bunch of edge cases, and removed the bug just mentioned. llvm-svn: 41797
-
- Sep 08, 2007
-
-
Ted Kremenek authored
for each function. This was the behavior prior to the following patch: http://llvm.org/viewvc/llvm-project?view=rev&revision=41779 llvm-svn: 41780
-
Ted Kremenek authored
"CFGVisitor", which now handles all the boilerplate for iterating over the function definitions in a translation unit and building the CFGs. This logic was previously replicated for each driver option that used CFGs. The options -dump-cfg, -view-cfg, -check-dead-stores, and -dump-live-variables now use this refactored code. llvm-svn: 41779
-
- Sep 07, 2007
-
-
Ted Kremenek authored
to variables that are no longer live. This analysis is built on top of CFGs and the LiveVariables analysis. changes to driver: added driver option "-check-dead-stores" to run the analysis llvm-svn: 41754
-
- Sep 06, 2007
-
-
Ted Kremenek authored
- Finished 99% of analysis logic. Probably a few bugs. - Added querying functions to query liveness. - Added better pretty printing of liveness. - Added better bookkeeping of per-variable liveness information. - Added LiveVariablesAuditor interface, which allows "lazy" querying of intra-basic block liveness information. Driver: - Minor cleanups involved in dumping liveness information. llvm-svn: 41753
-