- Jun 21, 2006
-
-
Chris Lattner authored
void test6() { Y = 0xABCD0123BCDE4567; } into: _test6: lis r2, -21555 lis r3, ha16(_Y) ori r2, r2, 291 rldicr r2, r2, 32, 31 oris r2, r2, 48350 ori r2, r2, 17767 std r2, lo16(_Y)(r3) blr llvm-svn: 28885
-
Chris Lattner authored
set, so disable the pattern in that case. llvm-svn: 28884
-
Chris Lattner authored
Split imm16Shifted into a sext/zext form for 64-bit support. Add some patterns for immediate formation. For example, we now compile this: static unsigned long long Y; void test3() { Y = 0xF0F00F00; } into: _test3: li r2, 3840 lis r3, ha16(_Y) xoris r2, r2, 61680 std r2, lo16(_Y)(r3) blr GCC produces: _test3: li r0,0 lis r2,ha16(_Y) ori r0,r0,61680 sldi r0,r0,16 ori r0,r0,3840 std r0,lo16(_Y)(r2) blr llvm-svn: 28883
-
Evan Cheng authored
llvm-svn: 28881
-
- Jun 20, 2006
-
-
Chris Lattner authored
llvm-svn: 28880
-
Chris Lattner authored
static unsigned long long X, Y; void test1() { X = Y; } into: _test1: lis r2, ha16(_Y) lis r3, ha16(_X) ld r2, lo16(_Y)(r2) std r2, lo16(_X)(r3) blr llvm-svn: 28879
-
Jim Laskey authored
llvm-svn: 28874
-
Chris Lattner authored
removed, tblgen produces identical output to with them in. llvm-svn: 28867
-
Chris Lattner authored
llvm-svn: 28866
-
Chris Lattner authored
llvm-svn: 28864
-
Chris Lattner authored
llvm-svn: 28862
-
- Jun 19, 2006
-
-
Jim Laskey authored
llvm-svn: 28861
-
Evan Cheng authored
llvm-svn: 28860
-
Andrew Lenharth authored
Do partial inlining in BU. This resolves more call sites. Also add options to merge in globals during recursion and to back annotate DSNodes when function pointers are resolved. This makes PA work for a whole lot more things (unresolved call sites being what has been killing various DSA based passes) llvm-svn: 28859
-
Jim Laskey authored
llvm-svn: 28858
-
Andrew Lenharth authored
Fix a bug, don't drop indirect call sites, especially if there is nothing known about them yet, and restore a simple version of a removed function llvm-svn: 28857
-
Jim Laskey authored
llvm-svn: 28855
-
- Jun 18, 2006
-
-
Rafael Espindola authored
fixes test/Regression/CodeGen/ARM/ret_arg5.ll llvm-svn: 28854
-
- Jun 17, 2006
-
-
Chris Lattner authored
llvm-svn: 28853
-
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
-
Evan Cheng authored
llvm-svn: 28848
-
Chris Lattner authored
magic to work. llvm-svn: 28847
-
Jim Laskey authored
llvm-svn: 28846
-
- Jun 16, 2006
-
-
Evan Cheng authored
llvm-svn: 28843
-
Chris Lattner authored
llvm-svn: 28841
-
Chris Lattner authored
llvm-svn: 28840
-
Chris Lattner authored
now compile: static unsigned long X; void test1() { X = 0; } into: _test1: lis r2, ha16(_X) li r3, 0 stw r3, lo16(_X)(r2) blr Totally amazing :) llvm-svn: 28839
-
Chris Lattner authored
llvm-svn: 28838
-
Chris Lattner authored
llvm-svn: 28837
-
Chris Lattner authored
the target triple & subtarget info. woo. llvm-svn: 28835
-
Evan Cheng authored
llvm-svn: 28834
-
Chris Lattner authored
llvm-svn: 28832
-
Chris Lattner authored
Remove explicit casts to std::string now that there is no overload resolution issues in the TargetData ctors. llvm-svn: 28830
-
Chris Lattner authored
add a new init method. llvm-svn: 28828
-
Chris Lattner authored
llvm-svn: 28827
-
Chris Lattner authored
llvm-svn: 28826
-
Chris Lattner authored
support, and 64-bit register use are all consistent with each other. Add a new "IsPPC" feature, to distinguish ppc32 vs ppc64 targets, use this to configure TargetData differently. This not makes ppc64 blow up on lots of stuff :) llvm-svn: 28825
-
Chris Lattner authored
can in 32-bit mode we can choose to optionally *use* 64-bit registers. llvm-svn: 28824
-
Andrew Lenharth authored
llvm-svn: 28819
-
Andrew Lenharth authored
llvm-svn: 28818
-