- Jan 10, 2008
-
-
Chris Lattner authored
llvm-svn: 45826
-
Chris Lattner authored
inferred from the instr patterns. llvm-svn: 45824
-
- Jan 07, 2008
-
-
Chris Lattner authored
llvm-svn: 45667
-
- Dec 29, 2007
-
-
Chris Lattner authored
llvm-svn: 45418
-
- Dec 18, 2007
-
-
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 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
-
Evan Cheng authored
llvm-svn: 45037
-
Evan Cheng authored
llvm-svn: 45036
-
Dan Gohman authored
llvm-svn: 45030
-
Evan Cheng authored
llvm-svn: 45024
-
- Dec 13, 2007
-
-
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
-
- Nov 12, 2007
-
-
Owen Anderson authored
Target maintainers: please check that the instructions for your target are correctly marked. llvm-svn: 44012
-
- Oct 19, 2007
-
-
Evan Cheng authored
Turn a store folding instruction into a load folding instruction. e.g. xorl %edi, %eax movl %eax, -32(%ebp) movl -36(%ebp), %eax orl %eax, -32(%ebp) => xorl %edi, %eax orl -36(%ebp), %eax mov %eax, -32(%ebp) This enables the unfolding optimization for a subsequent instruction which will also eliminate the newly introduced store instruction. llvm-svn: 43192
-
- Oct 12, 2007
-
-
Arnold Schwaighofer authored
for fastcc from X86CallingConv.td. This means that nested functions are not supported for calling convention 'fastcc'. llvm-svn: 42934
-
- Oct 11, 2007
-
-
Arnold Schwaighofer authored
enabled by passing -tailcallopt to llc. The optimization is performed if the following conditions are satisfied: * caller/callee are fastcc * elf/pic is disabled OR elf/pic enabled + callee is in module + callee has visibility protected or hidden llvm-svn: 42870
-
- Oct 06, 2007
-
-
Evan Cheng authored
to its inverse. Testing this as llcbeta llvm-svn: 42661
-
- Oct 05, 2007
-
-
Evan Cheng authored
llvm-svn: 42642
-
Evan Cheng authored
llvm-svn: 42640
-
- Sep 29, 2007
-
-
Evan Cheng authored
llvm-svn: 42459
-
- Sep 27, 2007
-
-
Evan Cheng authored
llvm-svn: 42413
-
- Sep 26, 2007
-
-
Evan Cheng authored
Some assemblers do not recognize aliases pushfd, pushfq, popfd, and popfq. Just emit them as pushf and popf. llvm-svn: 42371
-
Evan Cheng authored
llvm-svn: 42348
-
Evan Cheng authored
llvm-svn: 42335
-
- Sep 25, 2007
-
-
Evan Cheng authored
Added support for new condition code modeling scheme (i.e. physical register dependency). These are a bunch of instructions that are duplicated so the x86 backend can support both the old and new schemes at the same time. They will be deleted after all the kinks are worked out. llvm-svn: 42285
-
- Sep 17, 2007
-
-
Dan Gohman authored
llvm-svn: 42027
-
Dan Gohman authored
previously only done for 32-bit and smaller operands. llvm-svn: 42024
-
- Sep 15, 2007
-
-
Dan Gohman authored
llvm-svn: 41975
-
- Sep 14, 2007
-
-
Evan Cheng authored
llvm-svn: 41962
-
- Sep 11, 2007
-
-
Evan Cheng authored
llvm-svn: 41863
-
- Sep 07, 2007
-
-
Dan Gohman authored
by flagging the associated instructions as being trivially rematerializable. llvm-svn: 41775
-
- Aug 30, 2007
-
-
Evan Cheng authored
llvm-svn: 41595
-
- Aug 02, 2007
-
-
Evan Cheng authored
llvm-svn: 40702
-
- Jul 31, 2007
-
-
Dan Gohman authored
mnemonics from their operands instead of single spaces. This makes the assembly output a little more consistent with various other compilers (f.e. GCC), and slightly easier to read. Also, update the regression tests accordingly. llvm-svn: 40648
-
Evan Cheng authored
Redo and generalize previously removed opt for pinsrw: (vextract (v4i32 bc (v4f32 s2v (f32 load ))), 0) -> (i32 load ) llvm-svn: 40628
-
- Jul 29, 2007
-
-
Christopher Lamb authored
Change the x86 backend to use extract_subreg for truncation operations. Passes DejaGnu, SingleSource and MultiSource. llvm-svn: 40578
-
- Jul 23, 2007
-
-
Bill Wendling authored
__builtin_ia32_cvtss2si64 __builtin_ia32_cvttss2si64 __builtin_ia32_cvtsi642ss __builtin_ia32_cvtsd2si64 __builtin_ia32_cvttsd2si64 __builtin_ia32_cvtsi642sd llvm-svn: 40411
-
- Jul 21, 2007
-
-
Evan Cheng authored
llvm-svn: 40132
-
- Jul 19, 2007
-
-
Evan Cheng authored
InOperandList. This gives one piece of important information: # of results produced by an instruction. An example of the change: def ADD32rr : I<0x01, MRMDestReg, (ops GR32:$dst, GR32:$src1, GR32:$src2), "add{l} {$src2, $dst|$dst, $src2}", [(set GR32:$dst, (add GR32:$src1, GR32:$src2))]>; => def ADD32rr : I<0x01, MRMDestReg, (outs GR32:$dst), (ins GR32:$src1, GR32:$src2), "add{l} {$src2, $dst|$dst, $src2}", [(set GR32:$dst, (add GR32:$src1, GR32:$src2))]>; llvm-svn: 40033
-
- Jun 18, 2007
-
-
Dan Gohman authored
llvm-svn: 37625
-