Ted Kremenek
c3fddac8e7
Removed check for NULL CFG. Bad CFGs will fire an assertion failure
...
in the CFG builder logic.
llvm-svn: 42033
2007-09-17 17:10:02 +00:00
Gordon Henriksen
8f0e2f2329
Adding myself to credits.
...
llvm-svn: 42032
2007-09-17 17:04:44 +00:00
Ted Kremenek
cdc0bc45e4
When building CFGs we now (unconditionally) add an empty CFGBlock to the CFG
...
to serve as the entry block. An empty entry block (just as with an
empty exit block, which we already have) simplifies building analyses on top
of CFGs with very little extra overhead.
llvm-svn: 42031
2007-09-17 16:18:02 +00:00
Ted Kremenek
186a669014
Added ASTConsumer.h to XCode project.
...
llvm-svn: 42030
2007-09-17 16:09:32 +00:00
Dan Gohman
3243e10ef0
Add 64-bit jmp instructions to the list of instructions that
...
can terminate a block with no fall-through.
llvm-svn: 42029
2007-09-17 15:19:08 +00:00
Steve Naroff
ed977473fe
Fix a few 80 column violations.
...
llvm-svn: 42028
2007-09-17 15:07:43 +00:00
Dan Gohman
96aee15d33
Use xorl instead of xorq to enter a zero into a 64-bit register.
...
llvm-svn: 42027
2007-09-17 14:55:08 +00:00
Dan Gohman
863bdc332d
Emit integer x<1 as x<=0, as comparisons with zero (now includeing
...
64-bit) can use test instead of cmp with an immediate.
llvm-svn: 42026
2007-09-17 14:49:27 +00:00
Steve Naroff
83763f2c40
Add const to debug hook...
...
llvm-svn: 42025
2007-09-17 14:49:06 +00:00
Dan Gohman
51d1929b9e
Use "test reg,reg" in place of "cmp reg,0" for 64-bit operands. This was
...
previously only done for 32-bit and smaller operands.
llvm-svn: 42024
2007-09-17 14:35:24 +00:00
Steve Naroff
73d534a2e0
Add support for ObjC keyword selectors.
...
- Add SelectorInfo/SelectorTable classes, modeled after IdentifierInfo/IdentifierTable.
- Add SelectorTable instance to ASTContext, created lazily through ASTContext::getSelectorInfo().
- Add SelectorInfo slot to ObjcMethodDecl.
- Add helper function to derive a SelectorInfo from ObjcKeywordInfo.
Misc: Got the Decl stats stuff up and running again...it was missing support for ObjC AST's.
llvm-svn: 42023
2007-09-17 14:16:13 +00:00
Hartmut Kaiser
ffb47d0679
Fixed unterminated string issue.
...
llvm-svn: 42022
2007-09-17 12:29:55 +00:00
Duncan Sands
6d5da71288
Factor the trampoline transformation into a subroutine.
...
llvm-svn: 42021
2007-09-17 10:26:40 +00:00
Chris Lattner
699c2410a8
make var in anon namespace static. Use \n instead of std::endl.
...
llvm-svn: 42020
2007-09-17 06:16:32 +00:00
Dale Johannesen
7511e6b622
Implement x86 long double (uses host long double,
...
so only works on x86 target).
llvm-svn: 42019
2007-09-17 00:38:27 +00:00
Daniel Berlin
90aaa1dcf7
Fix bug in andersen's related to test_and_set.
...
Add operator == and != to SparseBitVector.
Simplify code for test_and_set
llvm-svn: 42018
2007-09-16 23:59:53 +00:00
Daniel Berlin
c637abee96
Fix a few bugs related to zero'ing of elements
...
llvm-svn: 42017
2007-09-16 22:31:47 +00:00
Daniel Berlin
ffce584d1c
Rewrite of andersen's to be about 100x faster, cleaner, and begin to support field sensitivity
...
llvm-svn: 42016
2007-09-16 21:45:02 +00:00
Hartmut Kaiser
af2584fbaf
Silenced a VC++ warning.
...
Updated VC++ project files.
llvm-svn: 42015
2007-09-16 21:35:35 +00:00
Chris Lattner
93c7f855e5
remove some obsolete interfaces.
...
llvm-svn: 42014
2007-09-16 19:47:56 +00:00
Chris Lattner
7ea6ca70f5
switch the llvm emitter to ASTConsumer interface.
...
llvm-svn: 42013
2007-09-16 19:46:59 +00:00
Chris Lattner
aadfe2f973
From Justin Handville:
...
"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
2007-09-16 19:27:16 +00:00
Chris Lattner
ac81722ff6
Fix html problem, patch by Justin Handville
...
llvm-svn: 42011
2007-09-16 19:25:23 +00:00
Chris Lattner
793d10ca38
fix some warnings, patch by Justin Handville
...
llvm-svn: 42010
2007-09-16 19:23:47 +00:00
Chris Lattner
81b7624c6f
decl counting isn't implemented yet for objc. -stats probably crashes for it.
...
Patch by Justin Handville
llvm-svn: 42009
2007-09-16 19:23:04 +00:00
Bill Wendling
327e1a386c
Follow-up to patch r41999. Make the conditional that emits the personality stub
...
match the conditional that turns on exception handling emittion in the asm
printer.
llvm-svn: 42008
2007-09-16 19:21:08 +00:00
Chris Lattner
b38b0ad095
Fix a GCC warning, patch by Justin Handville
...
llvm-svn: 42007
2007-09-16 19:12:45 +00:00
Chris Lattner
8ad0e6a484
fix warning.
...
llvm-svn: 42006
2007-09-16 19:11:53 +00:00
Dale Johannesen
7f724e9b94
Adjust per revew comments.
...
llvm-svn: 42002
2007-09-16 16:51:49 +00:00
Steve Naroff
2f742085f5
Fixes/tweaks that prevent "defaults-i.m" from compiling.
...
- Allow classnames as the receiver (removing a FIXME from ParseObjCMessageExpression).
- Added a FIXME to ParseObjCMessageExpression()...we need to return a message expr AST node!
llvm-svn: 42001
2007-09-16 16:16:00 +00:00
Steve Naroff
66356bda5d
Rename statement actions (from Parse-prefix to ActOn-prefix).
...
llvm-svn: 42000
2007-09-16 14:56:35 +00:00
Bill Wendling
e5615156cc
Only emit the personality function as a global value if the backend actually
...
supports it. This solves this error on the Darwin x86-64 platform:
$ cat testcase.ii
struct A {
A();
};
A *bork() {
return new A;
}
$ llvm-g++ -arch x86_64 -c testcase.ii
/var/tmp//cc3U8fd8.s:52:unknown section type: non_lazy_symbol_pointers
/var/tmp//cc3U8fd8.s:52:Rest of line ignored. 1st junk character valued 76 (L).
/var/tmp//cc3U8fd8.s:53:Unknown pseudo-op: .indirect_symbol
/var/tmp//cc3U8fd8.s:53:Rest of line ignored. 1st junk character valued 95 (_).
llvm-svn: 41999
2007-09-16 10:36:17 +00:00
Owen Anderson
4cd516b50b
Be more careful when constant-folding PHI nodes.
...
llvm-svn: 41998
2007-09-16 08:04:16 +00:00
Steve Naroff
83895f7888
Rename expression actions (from Parse-prefix to ActOn-prefix).
...
llvm-svn: 41997
2007-09-16 03:34:24 +00:00
Hartmut Kaiser
6d100165ae
Fixed a problem VC++ revealed in release mode. Please verify.
...
llvm-svn: 41996
2007-09-16 00:31:07 +00:00
Hartmut Kaiser
04bd2ef629
Fixed two problems VC++ revealed in release mode. Please verify.
...
llvm-svn: 41995
2007-09-16 00:28:28 +00:00
Hartmut Kaiser
0a6b11db24
Updated VC++ build system.
...
Silenced a couple of VC++ warnings.
llvm-svn: 41994
2007-09-16 00:04:22 +00:00
Chris Lattner
254987c411
switch the various CFG-based stuff over to using ASTConsumer interface,
...
this eliminates their dependence on the preprocessor and eliminates some
duplicated code.
llvm-svn: 41993
2007-09-15 23:21:08 +00:00
Chris Lattner
09c39db0c4
convert ast printer and dumper ocver to ASTConsumer interface,
...
genericizing them and eliminating boilerplate code.
llvm-svn: 41992
2007-09-15 23:02:28 +00:00
Chris Lattner
75e0c8cf4c
add a new ASTConsumer consumer to simplify stuff in the driver.
...
Switch -parse-ast over to it.
llvm-svn: 41991
2007-09-15 22:56:56 +00:00
Chris Lattner
e27d865e36
Initial checkin of rewriter interface. It is just stubbed out for now.
...
llvm-svn: 41990
2007-09-15 22:21:22 +00:00
Chris Lattner
5a4e9d2666
pretty print some nodes more nicely.
...
llvm-svn: 41989
2007-09-15 21:49:37 +00:00
Chris Lattner
1cf7bb15ea
fix comment
...
llvm-svn: 41988
2007-09-15 21:48:50 +00:00
Steve Naroff
30d242c99f
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
2007-09-15 18:49:24 +00:00
Fariborz Jahanian
29f99d7142
Couple of new classes for objective-c's @protocol typings.
...
llvm-svn: 41985
2007-09-15 18:27:26 +00:00
Chris Lattner
dd76f2f4ab
remove obsolete tests.
...
llvm-svn: 41984
2007-09-15 17:38:04 +00:00
Chris Lattner
4f230451e1
Fix PR1666, SPASS with the CBE and 254.gap with the CBE.
...
GCC optimizes away things like ptr < NULL to false. To "fix" this,
have the CBE emit casts of pointers to intptr_t when doing relational
pointer comparisons.
llvm-svn: 41983
2007-09-15 06:51:03 +00:00
Chris Lattner
6ad68c220a
New testcase for PR1662. GCC trees are horrible :(
...
llvm-svn: 41979
2007-09-15 05:46:41 +00:00
Dan Gohman
48ea03d169
Add patterns for SHLD64* and SHRD64*.
...
llvm-svn: 41975
2007-09-14 23:17:45 +00:00
Ted Kremenek
15d3b38ff2
Added several files to XCode project file...
...
Analysis/DataflowSolver.h
Analysis/UnintializedValues.cpp
include/clang/Analysis/CFGVarDeclVisitor.h
include/clang/Analysis/DataflowValues.h
include/clang/Analysis/UninitializedValues.h
llvm-svn: 41974
2007-09-14 23:13:28 +00:00