- Mar 27, 2007
-
-
Evan Cheng authored
llvm-svn: 35365
-
Evan Cheng authored
llvm-svn: 35363
-
Dale Johannesen authored
hopefully forestall similar errors. llvm-svn: 35362
-
- Mar 26, 2007
-
-
Chris Lattner authored
llvm-svn: 35361
-
Reid Spencer authored
llvm-svn: 35360
-
Reid Spencer authored
original and new instruction. A slight performance hit with ostringstream but it is only for debug. Also, clean up an uninitialized variable warning noticed in a release build. llvm-svn: 35358
-
Reid Spencer authored
llvm-svn: 35357
-
Bill Wendling authored
llvm-svn: 35353
-
Bill Wendling authored
llvm-svn: 35352
-
Bill Wendling authored
#include <mmintrin.h> extern __m64 C; void baz(__v2si *A, __v2si *B) { *A = C; _mm_empty(); } We get this: _baz: call "L1$pb" "L1$pb": popl %eax movl L_C$non_lazy_ptr-"L1$pb"(%eax), %eax movq (%eax), %mm0 movl 4(%esp), %eax movq %mm0, (%eax) emms ret GCC gives us this: _baz: pushl %ebx call L3 "L00000000001$pb": L3: popl %ebx subl $8, %esp movl L_C$non_lazy_ptr-"L00000000001$pb"(%ebx), %eax movl (%eax), %edx movl 4(%eax), %ecx movl 16(%esp), %eax movl %edx, (%eax) movl %ecx, 4(%eax) emms addl $8, %esp popl %ebx ret llvm-svn: 35351
-
Evan Cheng authored
llvm-svn: 35350
-
Reid Spencer authored
Fix SingleSource/Regression/C/2003-05-21-UnionBitFields.c by changing a getHighBitsSet call to getLowBitsSet call that was incorrectly converted from the original lshr constant expression. llvm-svn: 35348
-
Dale Johannesen authored
llvm-svn: 35347
-
- Mar 25, 2007
-
-
Reid Spencer authored
Remove a use of getLowBitsSet that caused the mask used for replacement of shl/lshr pairs with an AND instruction to be computed incorrectly. Its not clear exactly why this is the case. This solves the disappearing shifts problem, but it doesn't fix Regression/C/2003-05-21-UnionBitFields. It seems there is more going on. llvm-svn: 35342
-
Chris Lattner authored
llvm-svn: 35341
-
Reid Spencer authored
* Don't assume shift amounts are <= 64 bits * Avoid creating an extra APInt in SubOne and AddOne by using -- and ++ * Add another use of getLowBitsSet * Convert a series of if statements to a switch llvm-svn: 35339
-
Anton Korobeynikov authored
strategy, emit JT's where possible. llvm-svn: 35338
-
Anton Korobeynikov authored
llvm-svn: 35337
-
Chris Lattner authored
llvm-svn: 35336
-
Reid Spencer authored
using the facilities of APInt. While this duplicates a tiny fraction of the constant folding code, it also makes the code easier to read and avoids large ConstantExpr overhead for simple, known computations. llvm-svn: 35335
-
Chris Lattner authored
llvm-svn: 35334
-
Zhou Sheng authored
2. Use isStrictlyPositive() instead of isPositive() in two places where they need APInt value > 0 not only >=0. llvm-svn: 35333
-
Chris Lattner authored
CodeGen/X86/2007-03-24-InlineAsmVectorOp.ll llvm-svn: 35332
-
Chris Lattner authored
llvm-svn: 35330
-
Chris Lattner authored
llvm-svn: 35329
-
Chris Lattner authored
implement initial support for the silly X constraint. Testcase here: CodeGen/X86/2007-03-24-InlineAsmXConstraint.ll llvm-svn: 35327
-
Reid Spencer authored
APInt with its type mask. llvm-svn: 35325
-
Chris Lattner authored
llvm-svn: 35324
-
Chris Lattner authored
not just the first letter. No functionality change. llvm-svn: 35322
-
Reid Spencer authored
* Convert the last use of a uint64_t that should have been an APInt. * Change ComputeMaskedBits to have a const reference argument for the Mask so that recursions don't cause unneeded temporaries. This causes temps to be needed in other places (where the mask has to change) but this change optimizes for the recursion which is more frequent. * Remove two instances of &ing a Mask with getAllOnesValue. Its not needed any more because APInt is accurate in its bit computations. * Start using the getLowBitsSet and getHighBits set methods on APInt instead of shifting. This makes it more clear in the code what is going on. llvm-svn: 35321
-
Chris Lattner authored
Allow the b/h/w/k constraints to be applied to values that have multiple alternatives, and end up not being registers. llvm-svn: 35320
-
Chris Lattner authored
llvm-svn: 35319
-
Chris Lattner authored
llvm-svn: 35318
-
Chris Lattner authored
llvm-svn: 35314
-
- Mar 24, 2007
-
-
Chris Lattner authored
llvm-svn: 35299
-
Chris Lattner authored
llvm-svn: 35298
-
Zhou Sheng authored
llvm-svn: 35297
-
Chris Lattner authored
llvm-svn: 35296
-
Reid Spencer authored
Convert some calls to ConstantInt::getZExtValue() into getValue() and use APInt facilities in the subsequent computations. llvm-svn: 35294
-
Evan Cheng authored
llvm-svn: 35293
-