| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 32460
|
|
|
|
| |
llvm-svn: 32459
|
|
|
|
| |
llvm-svn: 32458
|
|
|
|
|
|
| |
to the createIntegerCast and createFPCast for CastInst instructions.
llvm-svn: 32457
|
|
|
|
|
|
|
|
| |
integer and floating point cast creation. createIntegerCast generates
ZExt/SExt, BitCast or Trunc. createFPCast generates FPExt, Bitcast, or
FPTrunc.
llvm-svn: 32456
|
|
|
|
|
|
| |
Don't rebuild llvm-config if none of the library dependencies changed.
llvm-svn: 32455
|
|
|
|
| |
llvm-svn: 32454
|
|
|
|
| |
llvm-svn: 32453
|
|
|
|
| |
llvm-svn: 32452
|
|
|
|
|
|
|
|
|
|
| |
emitted for external globals in PPC64-JIT-PIC mode (which is good because
we didn't handle them before!).
This also fixes a bug handling the picbase delta, which we would get wrong
in some cases.
llvm-svn: 32451
|
|
|
|
|
|
|
| |
to infer the cast from its operand and type. This fixes:
test/Regression/Bytecode/2006-12-11-Cast-ConstExpr.ll
llvm-svn: 32450
|
|
|
|
| |
llvm-svn: 32449
|
|
|
|
| |
llvm-svn: 32448
|
|
|
|
| |
llvm-svn: 32447
|
|
|
|
| |
llvm-svn: 32446
|
|
|
|
| |
llvm-svn: 32445
|
|
|
|
|
|
| |
union to perform the bitcast.
llvm-svn: 32444
|
|
|
|
| |
llvm-svn: 32442
|
|
|
|
|
|
| |
For now, just grab the stream and perform the output on it directly.
llvm-svn: 32441
|
|
|
|
| |
llvm-svn: 32440
|
|
|
|
| |
llvm-svn: 32439
|
|
|
|
|
|
|
| |
Transforms/ConstProp/bitcast.ll and fixes
SingleSource/Regression/C/2003-10-12-GlobalVarInitializers
llvm-svn: 32438
|
|
|
|
| |
llvm-svn: 32437
|
|
|
|
| |
llvm-svn: 32436
|
|
|
|
|
|
|
| |
different code to be produced between two llvm builds that differe slightly.
This is useful in tracking down mis-optimization bugs.
llvm-svn: 32435
|
|
|
|
|
|
| |
type.
llvm-svn: 32434
|
|
|
|
| |
llvm-svn: 32433
|
|
|
|
| |
llvm-svn: 32432
|
|
|
|
|
|
| |
dag combiner.
llvm-svn: 32431
|
|
|
|
|
|
|
|
|
| |
Supports constant pools
Supports relocations to jump tables
Supports relocations within the data segment (global = address of global)
Allocates memory in a non-hacky for all non-code objects.
llvm-svn: 32430
|
|
|
|
|
|
| |
field after creation.
llvm-svn: 32429
|
|
|
|
| |
llvm-svn: 32428
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
_pairtest:
movl 8(%esp), %eax
movl 4(%esp), %ecx
movd %eax, %xmm0
movd %ecx, %xmm1
addss %xmm0, %xmm1
movl 12(%esp), %eax
movss %xmm1, (%eax)
ret
instead of:
_pairtest:
subl $12, %esp
movl 20(%esp), %eax
movl %eax, 4(%esp)
movl 16(%esp), %eax
movl %eax, (%esp)
movss (%esp), %xmm0
addss 4(%esp), %xmm0
movl 24(%esp), %eax
movss %xmm0, (%eax)
addl $12, %esp
ret
llvm-svn: 32427
|
|
|
|
| |
llvm-svn: 32426
|
|
|
|
| |
llvm-svn: 32425
|
|
|
|
| |
llvm-svn: 32424
|
|
|
|
|
|
|
|
| |
The rot example works if the type is cast to ubyte.
Move sroa examples together and upgrade them to HEAD syntax.
llvm-svn: 32423
|
|
|
|
|
|
| |
This implements Transforms/ScalarRepl/union-packed.ll
llvm-svn: 32422
|
|
|
|
| |
llvm-svn: 32421
|
|
|
|
|
|
| |
Regression/Transforms/IndVarsSimplify/2006-12-10-BitCast.ll
llvm-svn: 32420
|
|
|
|
| |
llvm-svn: 32419
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add support for promoting unions with fp values in them. This produces
our new int<->fp bitcast instructions, implementing
Transforms/ScalarRepl/union-fp-int.ll
As an example, this allows us to compile this:
union intfloat { int i; float f; };
float invsqrt(const float arg_x) {
union intfloat x = { .f = arg_x };
const float xhalf = arg_x * 0.5f;
x.i = 0x5f3759df - (x.i >> 1);
return x.f * (1.5f - xhalf * x.f * x.f);
}
into:
_invsqrt:
movss 4(%esp), %xmm0
movd %xmm0, %eax
sarl %eax
movl $1597463007, %ecx
subl %eax, %ecx
movd %ecx, %xmm1
mulss LCPI1_0, %xmm0
mulss %xmm1, %xmm0
movss LCPI1_1, %xmm2
mulss %xmm1, %xmm0
subss %xmm0, %xmm2
movl 8(%esp), %eax
mulss %xmm2, %xmm1
movss %xmm1, (%eax)
ret
instead of:
_invsqrt:
subl $4, %esp
movss 8(%esp), %xmm0
movss %xmm0, (%esp)
movl (%esp), %eax
movl $1597463007, %ecx
sarl %eax
subl %eax, %ecx
movl %ecx, (%esp)
mulss LCPI1_0, %xmm0
movss (%esp), %xmm1
mulss %xmm1, %xmm0
mulss %xmm1, %xmm0
movss LCPI1_1, %xmm2
subss %xmm0, %xmm2
mulss %xmm2, %xmm1
movl 12(%esp), %eax
movss %xmm1, (%eax)
addl $4, %esp
ret
llvm-svn: 32418
|
|
|
|
| |
llvm-svn: 32417
|
|
|
|
| |
llvm-svn: 32416
|
|
|
|
|
|
|
| |
code (both asm & cbe) for Mingw32 target.
Removed autoconf checks for underscored versions of setjmp/longjmp.
llvm-svn: 32415
|
|
|
|
|
|
| |
instead of returning from main.
llvm-svn: 32414
|
|
|
|
| |
llvm-svn: 32413
|
|
|
|
| |
llvm-svn: 32412
|
|
|
|
|
|
| |
static dtors.
llvm-svn: 32411
|
|
|
|
|
|
| |
need it like llvm-gcc3 did.
llvm-svn: 32410
|