- Dec 13, 2004
-
-
Reid Spencer authored
llvm-svn: 18846
-
Brian Gaeke authored
llvm-svn: 18844
-
Chris Lattner authored
llvm-svn: 18843
-
Chris Lattner authored
in some cases. llvm-svn: 18842
-
- Dec 12, 2004
-
-
Chris Lattner authored
llvm-svn: 18841
-
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
when compiled with debug information. llvm-svn: 18835
-
Chris Lattner authored
llvm-svn: 18833
-
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
llvm-svn: 18830
-
Brian Gaeke authored
llvm-svn: 18826
-
Brian Gaeke authored
llvm-svn: 18824
-
Brian Gaeke authored
Also, fix a bug where ubyte 255 would sometimes be output as -1. This was afflicting hbd. llvm-svn: 18823
-
Brian Gaeke authored
llvm-svn: 18820
-
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
-
Brian Gaeke authored
llvm-svn: 18818
-
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
-
-
Brian Gaeke authored
llvm-svn: 18805
-
Chris Lattner authored
test in the suite. :( llvm-svn: 18804
-
Brian Gaeke authored
llvm-svn: 18803
-
Reid Spencer authored
llvm-svn: 18802
-
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
-
Brian Gaeke authored
ctor parameters can be defaulted. Print the transformed llvm code input to the instruction selector when -print-machineinstrs is on, just like V9. llvm-svn: 18794
-
Brian Gaeke authored
*or g0, x add g0, x recognized * as a move) or x, g0 add x, g0 or 0, x add 0, x or x, 0 add x, 0 llvm-svn: 18793
-
Brian Gaeke authored
* Don't emit the Index * ElementSize multiply if Index is a constant. * Use a shift, not a multiply, if ElementSize is 1/2/4/8. * If ElementSize fits in the immediate field of SMUL, then put it there. Fix a bug where struct offsets might be truncated (ConstantSInt::get is now used instead of ConstantInt::get). llvm-svn: 18792
-
Brian Gaeke authored
ones are failing in cbe. llvm-svn: 18791
-
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
-
Reid Spencer authored
llvm-svn: 18785
-
- Dec 10, 2004
-
-
Chris Lattner authored
llvm-svn: 18781
-
Chris Lattner authored
llvm-svn: 18776
-
Chris Lattner authored
llvm-svn: 18774
-
Chris Lattner authored
and the failure on make_dparser last night. llvm-svn: 18766
-