- May 07, 2008
-
-
Duncan Sands authored
on x86-64 linux. This causes no regressions on 32 bit linux and 32 bit ppc. More tests pass on 64 bit ppc with no regressions. I didn't turn on eh on 64 bit linux because the intrinsics needed to compile the eh runtime aren't done yet. But if you turn it on and link with the mainline runtime then eh seems to work fine on x86-64 linux with this patch. Thanks to Dale for testing. The main point of the patch is that if you output that some object is encoded using 4 bytes you had better not output 8 bytes for it: the patch makes everything consistent. llvm-svn: 50825
-
- May 06, 2008
-
-
Chris Lattner authored
llvm-svn: 50698
-
Dan Gohman authored
llvm-svn: 50696
-
Chris Lattner authored
llvm-svn: 50681
-
Mon P Wang authored
llvm-svn: 50677
-
Evan Cheng authored
llvm-svn: 50675
-
- May 05, 2008
-
-
Mon P Wang authored
llvm-svn: 50663
-
Dan Gohman authored
llvm-svn: 50660
-
Anton Korobeynikov authored
llvm-svn: 50654
-
Dan Gohman authored
llvm-svn: 50649
-
Dan Gohman authored
the code being generated does not require an executable stack. Also, add target-specific code to make use of this on Linux on x86. llvm-svn: 50634
-
- May 04, 2008
-
-
Anton Korobeynikov authored
but should work. Work is in progress, more models will follow llvm-svn: 50630
-
Evan Cheng authored
Select vector shift with non-immediate i32 shift amount operand by first moving the operand into the right register. llvm-svn: 50619
-
- May 03, 2008
-
-
Evan Cheng authored
Add separate intrinsics for MMX / SSE shifts with i32 integer operands. This allow us to simplify the horribly complicated matching code. llvm-svn: 50601
-
- May 02, 2008
-
-
Evan Cheng authored
llvm-svn: 50578
-
Evan Cheng authored
llvm-svn: 50575
-
Evan Cheng authored
Not safe folding a load + FsXORPSrr into FsXORPSrm. It's loading a FR64 value but the load folding variant expects a 16-byte aligned address. llvm-svn: 50574
-
- Apr 30, 2008
-
-
Arnold Schwaighofer authored
Move platform independent code (lowering of possibly overwritten arguments, check for tail call optimization eligibility) from target X86ISelectionLowering.cpp to TargetLowering.h and SelectionDAGISel.cpp. Initial PowerPC tail call implementation: Support ppc32 implemented and tested (passes my tests and test-suite llvm-test). Support ppc64 implemented and half tested (passes my tests). On ppc tail call optimization is performed if caller and callee are fastcc call is a tail call (in tail call position, call followed by ret) no variable argument lists or byval arguments option -tailcallopt is enabled Supported: * non pic tail calls on linux/darwin * module-local tail calls on linux(PIC/GOT)/darwin(PIC) * inter-module tail calls on darwin(PIC) If constraints are not met a normal call will be emitted. A test checking the argument lowering behaviour on x86-64 was added. llvm-svn: 50477
-
Scott Michel authored
fixes are target-specific lowering of frame indices, fix constants generated for the FSMBI instruction, and fixing SPUTargetLowering::computeMaskedBitsFor- TargetNode(). llvm-svn: 50462
-
- Apr 29, 2008
-
-
Anton Korobeynikov authored
llvm-svn: 50433
-
- Apr 28, 2008
-
-
Dan Gohman authored
memcpy/memset expansion. It was a bug for the SVOffset value to be used in the actual address calculations. llvm-svn: 50359
-
Anton Korobeynikov authored
llvm-svn: 50342
-
Anton Korobeynikov authored
llvm-svn: 50325
-
Anton Korobeynikov authored
llvm-svn: 50324
-
- Apr 27, 2008
-
-
Chris Lattner authored
- Make targetlowering.h fit in 80 cols. - Make LowerAsmOperandForConstraint const. - Make lowerXConstraint -> LowerXConstraint - Make LowerXConstraint return a const char* instead of taking a string byref. llvm-svn: 50312
-
Chris Lattner authored
the default impl. llvm-svn: 50311
-
- Apr 25, 2008
-
-
Evan Cheng authored
llvm-svn: 50292
-
Evan Cheng authored
llvm-svn: 50291
-
Evan Cheng authored
llvm-svn: 50289
-
Evan Cheng authored
llvm-svn: 50278
-
Chris Lattner authored
llvm-svn: 50267
-
Evan Cheng authored
llvm-svn: 50266
-
Evan Cheng authored
llvm-svn: 50260
-
Evan Cheng authored
- Add comments. llvm-svn: 50259
-
Evan Cheng authored
On Darwin / Linux x86-32, v8i8, v4i16, v2i32 values are passed in MM[0-2]. On Darwin / Linux x86-32, v1i64 values are passed in memory. On Darwin x86-64, v8i8, v4i16, v2i32 values are passed in XMM[0-7]. On Darwin x86-64, v1i64 values are passed in 64-bit GPRs. llvm-svn: 50257
-
Chris Lattner authored
idea what this code (findNonImmUse) does, so I'm only guessing that this is the right thing. It would be really really nice if this had comments and perhaps switched to SmallPtrSet (hint hint) :) This fixes rdar://5886601, a crash on gcc.target/i386/sse4_1-pblendw.c llvm-svn: 50252
-
Evan Cheng authored
Fix bug in x86 memcpy / memset lowering. If there are trailing bytes not handled by rep instructions, a new memcpy / memset is introduced for them. However, since source / destination addresses are already adjusted, their offsets should be zero. llvm-svn: 50239
-
- Apr 24, 2008
-
-
Dan Gohman authored
llvm-svn: 50196
-
Anton Korobeynikov authored
llvm-svn: 50192
-
Anton Korobeynikov authored
llvm-svn: 50190
-