- Jun 26, 2006
-
-
Owen Anderson authored
of LCSSA. This results several times the number of unswitchings occurring on tests such and timberwolfmc, unix-tbl, and ldecod. llvm-svn: 28912
-
- Jun 17, 2006
-
-
Chris Lattner authored
"LCSSA" phi node causes indvars to break dominance properties. This fixes causes indvars to avoid inserting aggressive code in this case, instead indvars should be fixed to be more aggressive in the face of lcssa phi's. llvm-svn: 28850
-
- Jun 16, 2006
-
-
Evan Cheng authored
llvm-svn: 28834
-
Evan Cheng authored
printf("%s\n", str) -> puts(str) printf("%c", c) -> putchar(c) Also fixed fprintf(file, "%c", c) -> fputc(c, file) llvm-svn: 28815
-
Evan Cheng authored
llvm-svn: 28814
-
- Jun 15, 2006
-
-
Chris Lattner authored
idioms into bswap intrinsics. llvm-svn: 28803
-
- Jun 14, 2006
-
-
Chris Lattner authored
bug exposed by the recent lcssa work. llvm-svn: 28779
-
Chris Lattner authored
LCSSA is still the slowest pass when gccas'ing 252.eon, but now it only takes 39s instead of 289s. :) llvm-svn: 28776
-
- Jun 13, 2006
-
-
Owen Anderson authored
llvm-svn: 28774
-
Owen Anderson authored
not handling PHI nodes correctly when determining if a value was live-out. This patch reduces the number of detected live-out variables in the testcase from 6565 to 485. llvm-svn: 28771
-
- Jun 12, 2006
-
-
Owen Anderson authored
llvm-svn: 28759
-
Chris Lattner authored
llvm-svn: 28758
-
Owen Anderson authored
If a single exit block has multiple predecessors within the loop, it will appear in the exit blocks list more than once. LCSSA needs to take that into account so that it doesn't double process that exit block. llvm-svn: 28750
-
- Jun 11, 2006
-
-
Owen Anderson authored
llvm-svn: 28748
-
Evan Cheng authored
Back out Owen's 6/9 changes. They broke MultiSource/Benchmarks/Prolangs-C/bison (and perhaps others). llvm-svn: 28747
-
- Jun 09, 2006
-
-
Owen Anderson authored
LCSSA. llvm-svn: 28739
-
Owen Anderson authored
on this. llvm-svn: 28738
-
Evan Cheng authored
post-increment value, should be first cast to the appropriated type (to the type of the common expr). Otherwise, the rewrite of a use based on (common + iv) may end up with an incorrect type. llvm-svn: 28735
-
- Jun 08, 2006
-
-
Owen Anderson authored
require LCSSA. llvm-svn: 28734
-
- Jun 07, 2006
-
-
Reid Spencer authored
llvm-svn: 28714
-
Chris Lattner authored
PPC/altivec llvm-svn: 28698
-
- Jun 06, 2006
-
-
Owen Anderson authored
llvm-svn: 28694
-
Owen Anderson authored
llvm-svn: 28693
-
- Jun 04, 2006
-
-
Owen Anderson authored
llvm-svn: 28680
-
Owen Anderson authored
llvm-svn: 28678
-
Owen Anderson authored
actually going on. llvm-svn: 28677
-
- Jun 02, 2006
-
-
Chris Lattner authored
llvm-svn: 28664
-
Chris Lattner authored
to link in the implementation. Thanks to Anton Korobeynikov for figuring out what was going on here. llvm-svn: 28660
-
- Jun 01, 2006
-
-
Chris Lattner authored
llvm-svn: 28642
-
Chris Lattner authored
code (while cloning) it often gets the branch/switch instructions. Since it knows that edges of the CFG are dead, it need not clone (or even look) at the obviously dead blocks. This should speed up the inliner substantially on code where there are lots of inlinable calls to functions with constant arguments. On C++ code in particular, this kicks in. llvm-svn: 28641
-
Chris Lattner authored
llvm-svn: 28632
-
Owen Anderson authored
llvm-svn: 28619
-
Owen Anderson authored
reimplement getValueDominatingFunction to walk the DominanceTree rather than just searching blindly. llvm-svn: 28618
-
- May 31, 2006
-
-
Chris Lattner authored
but for sub, it really does! Fix fixes a miscompilation of fibheap_cut in llvmgcc4. llvm-svn: 28600
-
Owen Anderson authored
llvm-svn: 28599
-
- May 29, 2006
-
-
Owen Anderson authored
is now theoretically feature-complete. It has not, however, been thoroughly test, and is still considered experimental. llvm-svn: 28529
-
- May 28, 2006
-
-
Owen Anderson authored
other calculations on each individually, rather than trying to delay it and do them all at the end. llvm-svn: 28527
-
- May 27, 2006
-
-
Owen Anderson authored
the iterated Dominance Frontier of the loop-closure Phi's. This is the second phase of the LCSSA pass. The third phase (coming soon) will be to update all uses of loop variables to use the loop-closure Phi's instead. llvm-svn: 28524
-
Chris Lattner authored
ldecod, lencod, and SPASS. llvm-svn: 28523
-
Chris Lattner authored
makes it so that it constant folds instructions on the fly. This is good for several reasons: 0. Many instructions are constant foldable after inlining, particularly if inlining a call with constant arguments. 1. Without this, the inliner has to allocate memory for all of the instructions that can be constant folded, then a subsequent pass has to delete them. This gets the job done without this extra work. 2. This makes the inliner *pass* a bit more aggressive: in particular, it partially solves a phase order issue where the inliner would inline lots of code that folds away to nothing, but think that the resultant function is big because of this code that will be gone. Now the code never exists. This is the first part of a 2-step process. The second part will be smart enough to see when this implicit constant folding propagates a constant into a branch or switch instruction, making CFG edges dead. This implements Transforms/Inline/inline_constprop.ll llvm-svn: 28521
-