- Dec 29, 2007
-
-
Chris Lattner authored
comparisons with a constant. This allows us to compile isnan to: _foo: fcmpu cr7, f1, f1 mfcr r2 rlwinm r3, r2, 0, 31, 31 blr instead of: LCPI1_0: ; float .space 4 _foo: lis r2, ha16(LCPI1_0) lfs f0, lo16(LCPI1_0)(r2) fcmpu cr7, f1, f0 mfcr r2 rlwinm r3, r2, 0, 31, 31 blr llvm-svn: 45405
-
Chris Lattner authored
llvm-svn: 45404
-
Chris Lattner authored
as: _bar: pushl %esi subl $8, %esp movl 16(%esp), %esi call L_foo$stub fstps (%esi) addl $8, %esp popl %esi #FP_REG_KILL ret instead of: _bar: pushl %esi subl $8, %esp movl 16(%esp), %esi call L_foo$stub fstpl (%esi) cvtsd2ss (%esi), %xmm0 movss %xmm0, (%esi) addl $8, %esp popl %esi #FP_REG_KILL ret llvm-svn: 45401
-
Chris Lattner authored
if we are just going to store it back anyway. This improves things like: double foo(); void bar(double *P) { *P = foo(); } llvm-svn: 45399
-
Chris Lattner authored
llvm-svn: 45397
-
- Dec 28, 2007
-
-
Chris Lattner authored
llvm-svn: 45387
-
- Dec 24, 2007
-
-
Chris Lattner authored
llvm-svn: 45343
-
- Dec 22, 2007
-
-
Anton Korobeynikov authored
llvm-svn: 45319
-
Anton Korobeynikov authored
llvm-svn: 45318
-
Evan Cheng authored
llvm-svn: 45313
-
Evan Cheng authored
llvm-svn: 45312
-
Evan Cheng authored
llvm-svn: 45307
-
Evan Cheng authored
llvm-svn: 45304
-
- Dec 21, 2007
-
-
Evan Cheng authored
llvm-svn: 45280
-
- Dec 20, 2007
-
-
Evan Cheng authored
llvm-svn: 45268
-
- Dec 18, 2007
-
-
Chris Lattner authored
llvm-svn: 45161
-
Bill Wendling authored
based what flag to set on whether it was already marked as "isRematerializable". If there was a further check to determine if it's "really" rematerializable, then I marked it as "mayHaveSideEffects" and created a check in the X86 back-end similar to the remat one. llvm-svn: 45132
-
- Dec 17, 2007
-
-
Bill Wendling authored
llvm-svn: 45128
-
- Dec 16, 2007
-
-
Chris Lattner authored
llvm-svn: 45075
-
Chris Lattner authored
X86CodeEmitter.cpp:378: failed assertion `0 && "Immediate size not set!"' I *think* this is right, but Evan, please verify. It also looks like CMPSDrr and maybe others are missing this info. Evan, plz investigate. llvm-svn: 45074
-
- Dec 15, 2007
-
-
Evan Cheng authored
llvm-svn: 45058
-
- Dec 14, 2007
-
-
Evan Cheng authored
llvm-svn: 45041
-
Evan Cheng authored
Fix (mem) <-> low 64-bits of xmm bugs pointed out by David Greene. Mac OS X Leopard assembler recognizes movq. llvm-svn: 45040
-
Dale Johannesen authored
for parameter passing (only for that, on Darwin). llvm-svn: 45038
-
Evan Cheng authored
llvm-svn: 45037
-
Evan Cheng authored
llvm-svn: 45036
-
Dan Gohman authored
llvm-svn: 45030
-
Evan Cheng authored
Fix ctlz and cttz. llvm definition requires them to return number of bits in of the src type when value is zero. llvm-svn: 45029
-
Evan Cheng authored
llvm-svn: 45024
-
- Dec 13, 2007
-
-
Evan Cheng authored
llvm-svn: 44970
-
Evan Cheng authored
Implicit def instructions, e.g. X86::IMPLICIT_DEF_GR32, are always re-materializable and they should not be spilled. llvm-svn: 44960
-
- Dec 12, 2007
-
-
Dan Gohman authored
SelectionDAG::getConstant, in the same way as vector floating-point constants. This allows the legalize expansion code for @llvm.ctpop and friends to be usable with vector types. llvm-svn: 44954
-
Evan Cheng authored
llvm-svn: 44929
-
Evan Cheng authored
Lower a build_vector with all constants into a constpool load unless it can be done with a move to low part. llvm-svn: 44921
-
Scott Michel authored
llvm-svn: 44904
-
- Dec 11, 2007
-
-
Nate Begeman authored
llvm-svn: 44869
-
Evan Cheng authored
possible before resorting to pextrw and pinsrw. - Better codegen for v4i32 shuffles masquerading as v8i16 or v16i8 shuffles. - Improves (i16 extract_vector_element 0) codegen by recognizing (i32 extract_vector_element 0) does not require a pextrw. llvm-svn: 44836
-
Nate Begeman authored
llvm-svn: 44835
-
Anton Korobeynikov authored
llvm-svn: 44820
-
Anton Korobeynikov authored
llvm-svn: 44819
-