Chris Lattner
a776f953d7
make a method public.
...
llvm-svn: 49770
2008-04-16 04:28:52 +00:00
Owen Anderson
81f7584c4e
XFAIL this test for the moment. The real solution is to prevent ADCE
...
from transforming loops and adding a separate loop pass for removing
loops with know trip counts. Until that happens, ADCE is miscompiling this code.
llvm-svn: 49769
2008-04-16 04:25:42 +00:00
Owen Anderson
57236b58f7
Major repairs to the post-dominators implementation. Patch from Florian Brandner!
...
llvm-svn: 49768
2008-04-16 04:21:16 +00:00
Chris Lattner
05e5310ad8
switch AddLineNumber to use a SmallString instead of sstream. This
...
speeds up -emit-html on ted's testcase by 29% (.138 -> 0.107s) in a
release build.
llvm-svn: 49767
2008-04-16 04:11:35 +00:00
Chris Lattner
08623f21ae
fix off by one error.
...
llvm-svn: 49766
2008-04-16 04:10:37 +00:00
Chris Lattner
ee61054d00
give smallstring some methods to do 'itoa'.
...
llvm-svn: 49765
2008-04-16 04:05:02 +00:00
Chris Lattner
e4dd37ce0a
speed up -emit-html in a release build by 6.5% by avoiding std::string.
...
llvm-svn: 49764
2008-04-16 03:46:57 +00:00
Ted Kremenek
e556f9e39c
Simplify some code.
...
llvm-svn: 49763
2008-04-16 02:59:55 +00:00
Dan Gohman
d43d3beeb0
Add support for the form of the SSE41 extractps instruction that
...
puts its result in a 32-bit GPR.
llvm-svn: 49762
2008-04-16 02:32:24 +00:00
Dan Gohman
8c99ccaf96
Recreate the size SDNode instead of reusing the old one in the x86
...
memcpy lowering code; this ensures that the size node has the desired
result type. This fixes a regression from r49572 with @llvm.memcpy.i64
on x86-32.
llvm-svn: 49761
2008-04-16 01:32:32 +00:00
Evan Cheng
e29e9774a4
Avoid read after free.
...
llvm-svn: 49760
2008-04-16 01:22:28 +00:00
Dan Gohman
3dd8ba6235
Remove X86_64SRet; it isn't used anymore.
...
llvm-svn: 49759
2008-04-16 00:24:30 +00:00
Dan Gohman
01a5d36d9d
Add movd instructions to move from MMX registers
...
to 64-bit GPR registers on x86-64.
llvm-svn: 49757
2008-04-15 23:55:07 +00:00
Ted Kremenek
748c7ce4ba
Added initial boilerplate to support toll-free bridging in the ref-count checker.
...
llvm-svn: 49756
2008-04-15 23:44:31 +00:00
Dan Gohman
8e5d812e9d
Add an svn:ignore for the test Output directory.
...
llvm-svn: 49753
2008-04-15 23:19:16 +00:00
Ted Kremenek
667cacb2ff
Added some comments to GRExprEngine. Reorder some of the method definitions
...
to start logically organizing them.
Added initial plug-in transfer function support for Objective-C message expressions.
llvm-svn: 49752
2008-04-15 23:06:53 +00:00
Ted Kremenek
32b1537cc2
Revert my previous patch.
...
llvm-svn: 49751
2008-04-15 23:06:05 +00:00
Ted Kremenek
3af355c900
Remove dispatch to "VisitParmVarDecl".
...
llvm-svn: 49750
2008-04-15 23:03:58 +00:00
Ted Kremenek
6204498aad
Change "VisitBlockVarDecl" to "VisitVarDecl". UninitializedValues now works
...
as before r49748 (where BlockVarDecl was removed).
llvm-svn: 49749
2008-04-15 23:02:18 +00:00
Steve Naroff
08899ff85d
Remove FileVarDecl and BlockVarDecl. They are replaced by VarDecl::isBlockVarDecl() and VarDecl::isFileVarDecl().
...
This is a fairly mechanical/large change. As a result, I avoided making any changes/simplifications that weren't directly related. I did break two Analysis tests. I also have a couple FIXME's in UninitializedValues.cpp. Ted, can you take a look? If the bug isn't obvious, I am happy to dig in and fix it (since I broke it).
llvm-svn: 49748
2008-04-15 22:42:06 +00:00
Dan Gohman
82b6673c44
Fix the new scheduler assertion checks to work when
...
the scheduler has inserted no-ops. This fixes
the 2006-07-03-schedulers.ll regression on ppc32.
llvm-svn: 49747
2008-04-15 22:40:14 +00:00
Bill Wendling
837b1dcf36
Apple GCC 4.2 builds things differently. It no longer spawns a bunch of
...
processes, but requires the project to use -j.
llvm-svn: 49744
2008-04-15 21:33:52 +00:00
Chuck Rose III
c6a47e8a79
VisualStudio project files updated. #include <algorithm> added to make VisualStudio happy. Also had to undefine setjmp because of #include <csetjmp> turning setjmp into _setjmp in VisualStudio.
...
llvm-svn: 49743
2008-04-15 21:27:11 +00:00
Ted Kremenek
7d6219f501
For HTML diagnostics, output more information about a bug report.
...
llvm-svn: 49742
2008-04-15 21:25:08 +00:00
Ted Kremenek
43445b3081
Added "summary table" to generated index.html page that allows one to
...
toggle which bug reports are displayed in the report table.
llvm-svn: 49738
2008-04-15 20:47:02 +00:00
Dale Johannesen
7b96b2e7da
Make 64-to-32 bit truncations explicit (prevent warnings).
...
All values here fit in 32 bits.
llvm-svn: 49736
2008-04-15 18:44:59 +00:00
Ted Kremenek
15d8f4cc27
Added test case illustrating the use of '&'.
...
llvm-svn: 49735
2008-04-15 18:37:29 +00:00
Ted Kremenek
82ff6d65bc
Fix bug in terminator processing for uninitialized-values: simply ignore the terminator, don't reprocess it.
...
LiveVariables analysis now does a flow-insensitive analysis to determine what variables have their address taken; these variables are now always treated as being live.
The DataflowSolver now uses "SetTopValue()" when getting the initial value for the entry/exit block.
llvm-svn: 49734
2008-04-15 18:35:30 +00:00
Dale Johannesen
8fc8a272e0
Don't assume a tail call can't reference a byval
...
argument to the outer function, this isn't correct.
llvm-svn: 49731
2008-04-15 17:41:34 +00:00
Dan Gohman
53d3241b52
Use gv's --spartan option, which trades away an extra row of UI buttons
...
for more space for displaying the graph.
llvm-svn: 49730
2008-04-15 17:27:05 +00:00
Chris Lattner
a5eb45bcfd
A couple minor fixes suggested by Matthijs Kooijman
...
llvm-svn: 49729
2008-04-15 16:59:22 +00:00
Argyrios Kyrtzidis
45887902b6
Fix a compiler error on MSVC (variable name 'E' clash).
...
llvm-svn: 49727
2008-04-15 16:30:10 +00:00
Nicolas Geoffray
7000c8f1aa
Change Divided flag to Split, as suggested by Evan
...
llvm-svn: 49715
2008-04-15 08:08:50 +00:00
Evan Cheng
ba7126064a
Sort sub-registers and super-registers lists according to super-sub register relations. e.g. X86::RAX sub-register list is EAX, AX, AL, AH (order of last two are not guaranteed).
...
llvm-svn: 49714
2008-04-15 07:56:03 +00:00
Bill Wendling
97632952c9
Install into the directory
...
llvm-svn: 49713
2008-04-15 07:02:59 +00:00
Chris Lattner
3e142b2585
finish commenting RewriteRope
...
llvm-svn: 49712
2008-04-15 06:37:11 +00:00
Ted Kremenek
6d41b82ea4
Improve dead store diagnostic.
...
llvm-svn: 49711
2008-04-15 05:31:00 +00:00
Ted Kremenek
2ecc9d42f7
Bug fix in VisitChildren: Only visit the last statement in a StmtExpr and the RHS of a comma expression, as the other Stmts will be visited elsewhere in a CFGBlock.
...
llvm-svn: 49710
2008-04-15 05:11:28 +00:00
Ted Kremenek
8adeebb274
Added initial support into the flow-sensitive dataflow solver to visit the Block-level expression
...
in a block's terminator. This expression is visited within a block, but it is accessed by the
terminator. This is important to observe because for live-variables analysis the block-level
expression is live between the terminator and where the expression occurs in the block. So far
this hasn't been an issue to not observe this because the block-level expression used in the
terminator is always the last one in the block, and we have never queried the liveness information
about this point (but before the terminator).
llvm-svn: 49709
2008-04-15 04:39:08 +00:00
Ted Kremenek
66279073f7
Bug fix in dead stores: don't always check the liveness of the first decl
...
in a DeclStmt.
llvm-svn: 49708
2008-04-15 04:11:48 +00:00
Ted Kremenek
cd76f95dd0
++/-- makes a variable live since it is used; thus the liveness state is
...
"Alive" as opposed to staying the same.
llvm-svn: 49707
2008-04-15 04:08:54 +00:00
Ted Kremenek
044eb055af
Handle "__private_extern__" storage class when printing FunctionDecls.
...
llvm-svn: 49706
2008-04-15 03:57:09 +00:00
Ted Kremenek
f4212bdbc3
Bug fix in LiveVariables: Operators ++/-- may kill a value, but the variable
...
is still live.
llvm-svn: 49705
2008-04-15 03:47:30 +00:00
Chris Lattner
52bc4ac84f
Fix a corner case that ted hit in -emit-html, rdar://5863212
...
llvm-svn: 49703
2008-04-15 02:26:21 +00:00
Dan Gohman
4370f26750
Treat EntryToken nodes as "passive" so that they aren't added to the
...
ScheduleDAG; they don't correspond to any actual instructions so they
don't need to be scheduled.
This fixes a bug where the EntryToken was being scheduled multiple
times in some cases, though it ended up not causing any trouble because
EntryToken doesn't expand into anything. With this fixed the schedulers
reliably schedule the expected number of units, so we can check this
with an assertion.
This requires a tweak to test/CodeGen/X86/loop-hoist.ll because it
ends up getting scheduled differently in a trivial way, though it was
enough to fool the prcontext+grep that the test does.
llvm-svn: 49701
2008-04-15 01:22:18 +00:00
Fariborz Jahanian
0152a1a5db
New AST representation for each objc2's property declaration.
...
llvm-svn: 49699
2008-04-14 23:36:35 +00:00
Dan Gohman
e5f21cea3e
In -view-sunit-dags, display "special" chain dependencies as cyan
...
instead of blue to distinguish them from regular dependencies.
llvm-svn: 49696
2008-04-14 23:15:07 +00:00
Steve Naroff
c5e5b38a8f
Remove bogus token...
...
llvm-svn: 49695
2008-04-14 22:53:48 +00:00
Chris Lattner
492530d2df
simplify the implementation of the insert/split operation to return
...
the new RHS directly instead of indirecting through the 'InsertResult'
struct. This eliminates InsertResult.
llvm-svn: 49694
2008-04-14 22:10:58 +00:00
Steve Naroff
a8f0d12e81
Rename a file and update the Xcode project.
...
llvm-svn: 49693
2008-04-14 22:05:54 +00:00