- Mar 07, 2008
-
-
Chris Lattner authored
we're using SSE or not. This fixes PR2122. llvm-svn: 48006
-
- Mar 06, 2008
-
-
Gabor Greif authored
llvm-svn: 47996
-
- Mar 05, 2008
-
-
Chris Lattner authored
llvm-svn: 47948
-
Evan Cheng authored
llvm-svn: 47941
-
Evan Cheng authored
llvm-svn: 47940
-
Chris Lattner authored
llvm-svn: 47939
-
Evan Cheng authored
llvm-svn: 47934
-
Evan Cheng authored
llvm-svn: 47933
-
Evan Cheng authored
For x86, if sse2 is available, it's not a good idea since cvtss2sd is slower than a movsd load and it prevents load folding. On x87, it's important to shrink fp constant since fldt is very expensive. llvm-svn: 47931
-
Andrew Lenharth authored
llvm-svn: 47929
-
Evan Cheng authored
findRegisterUseOperandIdx, findRegisterDefOperandIndx. Fix some naming inconsistencies. llvm-svn: 47927
-
- Mar 04, 2008
-
-
Andrew Lenharth authored
llvm-svn: 47903
-
Evan Cheng authored
llvm-svn: 47878
-
Evan Cheng authored
llvm-svn: 47871
-
- Mar 03, 2008
-
-
Dan Gohman authored
llvm-svn: 47865
-
Devang Patel authored
llvm-svn: 47857
-
- Mar 02, 2008
-
-
Chris Lattner authored
llvm-svn: 47828
-
Andrew Lenharth authored
llvm-svn: 47800
-
- Mar 01, 2008
-
-
Andrew Lenharth authored
llvm-svn: 47799
-
Andrew Lenharth authored
llvm-svn: 47798
-
Andrew Lenharth authored
Add lock prefix support to x86. Also add the instructions necessary for the atomic ops. They are still marked pseudo, since I cannot figure out what format to use, but they are the correct opcode. llvm-svn: 47795
-
- Feb 29, 2008
-
-
Anton Korobeynikov authored
llvm-svn: 47770
-
Anders Carlsson authored
llvm-svn: 47740
-
Evan Cheng authored
llvm-svn: 47736
-
- Feb 28, 2008
-
-
Evan Cheng authored
llvm-svn: 47711
-
Chris Lattner authored
llvm-svn: 47704
-
Evan Cheng authored
llvm-svn: 47703
-
Eli Friedman authored
llvm-svn: 47702
-
Anton Korobeynikov authored
provide TAI hook for selection of EH data emission format. Currently unused. llvm-svn: 47699
-
- Feb 27, 2008
-
-
Evan Cheng authored
llvm-svn: 47688
-
Chris Lattner authored
stack slot and store if the SINT_TO_FP is actually legal. This allows us to compile: double a(double b) {return (unsigned)b;} to: _a: cvttsd2siq %xmm0, %rax movl %eax, %eax cvtsi2sdq %rax, %xmm0 ret instead of: _a: subq $8, %rsp cvttsd2siq %xmm0, %rax movl %eax, %eax cvtsi2sdq %rax, %xmm0 addq $8, %rsp ret crazy. llvm-svn: 47660
-
Chris Lattner authored
llvm-svn: 47659
-
Chris Lattner authored
_test: movl %edi, %eax ret instead of: _test: movl $4294967295, %ecx movq %rdi, %rax andq %rcx, %rax ret It would be great to write this as a Pat pattern that used subregs instead of a 'pseudo' instruction, but I don't know how to do that in td files. llvm-svn: 47658
-
Chris Lattner authored
llvm-svn: 47652
-
- Feb 26, 2008
-
-
Arnold Schwaighofer authored
llvm-svn: 47635
-
Bill Wendling authored
would have been a Godsend here! llvm-svn: 47625
-
Arnold Schwaighofer authored
llvm-svn: 47606
-
Bill Wendling authored
llvm-svn: 47600
-
Arnold Schwaighofer authored
GOT-style position independent code. Before only tail calls to protected/hidden functions within the same module were optimized. Now all function calls are tail call optimized. llvm-svn: 47594
-
Arnold Schwaighofer authored
calls. Before arguments that could overwrite each other were explicitly lowered to a stack slot, not giving the register allocator a chance to optimize. Now a sequence of copyto/copyfrom virtual registers ensures that arguments are loaded in (virtual) registers before they are lowered to the stack slot (and might overwrite each other). Also parameter stack slots are marked mutable for (potentially) tail calling functions. llvm-svn: 47593
-