- Dec 12, 2004
-
-
Chris Lattner authored
llvm-svn: 18840
-
Chris Lattner authored
llvm-svn: 18839
-
Chris Lattner authored
In particular, implement div.ll:test10 and rem.ll:test4. llvm-svn: 18838
-
Chris Lattner authored
failures from last night. llvm-svn: 18832
-
Chris Lattner authored
This fixes a crash compiling TimberWolfMC that was exposed due to recent optimizer changes. llvm-svn: 18831
-
Chris Lattner authored
in SPEC, the subsequent optimziations that we are after don't play with with FP values, so disable this xform for them. Really we just don't want stuff like: double G; (always 0 or 412312.312) = G; turning into: bool G_b; = G_b ? 412312.312 : 0; We'd rather just do the load. -Chris llvm-svn: 18819
-
Chris Lattner authored
down to actually BE a bool. This allows simple value range propagation stuff work harder, deleting comparisons in bzip2 in some hot loops. This implements GlobalOpt/integer-bool.ll, which is the essence of the loop condition distilled into a testcase. llvm-svn: 18817
-
Chris Lattner authored
if the other side is overdefined. This allows us to fold conditions like: if (X < Y || Y > Z) in some cases. llvm-svn: 18807
-
- Dec 11, 2004
-
-
Chris Lattner authored
llvm-svn: 18800
-
Chris Lattner authored
llvm-svn: 18799
-
Chris Lattner authored
1. Actually increment the Statistic for the GV elim optzn 2. When resolving undef branches, only resolve branches in executable blocks, avoiding marking a bunch of completely dead blocks live. This has a big impact on the quality of the generated code. With this patch, we positively rip up vortex, compiling Ut_MoveBytes to a single memcpy call. In vortex we get this: 12 ipsccp - Number of globals found to be constant 986 ipsccp - Number of arguments constant propagated 1378 ipsccp - Number of basic blocks unreachable 8919 ipsccp - Number of instructions removed llvm-svn: 18796
-
Chris Lattner authored
llvm-svn: 18795
-
Chris Lattner authored
non-address-taken global variables. llvm-svn: 18790
-
Chris Lattner authored
In functions where we fully constant prop the return value, replace all ret instructions with 'ret undef'. llvm-svn: 18786
-
- Dec 10, 2004
-
-
Chris Lattner authored
llvm-svn: 18781
-
Chris Lattner authored
llvm-svn: 18776
-
Chris Lattner authored
and the failure on make_dparser last night. llvm-svn: 18766
-
Chris Lattner authored
This implements SCCP/ipsccp-basic.ll, rips apart Olden/mst (as described in PR415), and does other nice things. There is still more to come with this, but it's a start. llvm-svn: 18752
-
- Dec 09, 2004
-
-
Chris Lattner authored
llvm-svn: 18693
-
Chris Lattner authored
llvm-svn: 18692
-
Chris Lattner authored
successor block. This turns cases like this: x = a op b if (c) { use x } into: if (c) { x = a op b use x } This triggers 3965 times in spec, and is tested by Regression/Transforms/InstCombine/sink_instruction.ll This appears to expose a bug in the X86 backend for 177.mesa, which I'm looking in to. llvm-svn: 18677
-
Alkis Evlogimenos authored
llvm-svn: 18674
-
- Dec 08, 2004
-
-
Chris Lattner authored
llvm-svn: 18670
-
Chris Lattner authored
by Bjørn Wennberg llvm-svn: 18627
-
Chris Lattner authored
llvm-svn: 18625
-
- Dec 07, 2004
-
-
Reid Spencer authored
Add doInitialization method to avoid overloaded virtuals llvm-svn: 18602
-
- Dec 03, 2004
-
-
Chris Lattner authored
gccas/gccld more than just a noop. llvm-svn: 18456
-
- Dec 02, 2004
-
-
Chris Lattner authored
-S llvm-svn: 18440
-
Chris Lattner authored
llvm-svn: 18439
-
Chris Lattner authored
in scary and unknown ways before we promote it. This fixes the miscompilation of 188.ammp that has been plauging us since a globalopt patch went in. Thanks a ton to Tanya for helping me diagnose the problem! llvm-svn: 18418
-
Chris Lattner authored
This doesn't fix anything that I'm aware of, just noticed it by inspection llvm-svn: 18417
-
- Nov 30, 2004
-
-
Chris Lattner authored
llvm-svn: 18387
-
Chris Lattner authored
llvm-svn: 18381
-
Chris Lattner authored
This only fails on darwin or on X86 under valgrind. llvm-svn: 18377
-
Chris Lattner authored
llvm-svn: 18369
-
Chris Lattner authored
if (x) { code ... } else { code ... } Turn it into: code if (x) { ... } else { ... } This reduces code size and in some common cases allows us to completely eliminate the conditional. This turns several if/then/else blocks in loops into straightline code in 179.art, turning the loops into single basic blocks (good for modsched even!). Maybe now brg will leave me alone ;-) llvm-svn: 18366
-
- Nov 29, 2004
-
-
Chris Lattner authored
llvm-svn: 18363
-
- Nov 28, 2004
-
-
Reid Spencer authored
* Make sure we handle signed to unsigned conversion correctly * Move this visitSetCondInst case to its own method. llvm-svn: 18312
-
Chris Lattner authored
llvm-svn: 18309
-
- Nov 27, 2004
-
-
Chris Lattner authored
occurs many times in crafty llvm-svn: 18273
-