- Jul 27, 2008
-
-
Dan Gohman authored
llvm-svn: 54128
-
- Mar 15, 2008
-
-
Evan Cheng authored
Replace all target specific implicit def instructions with a target independent one: TargetInstrInfo::IMPLICIT_DEF. llvm-svn: 48380
-
- Feb 27, 2008
-
-
Bill Wendling authored
llvm-svn: 47663
-
- Jan 17, 2008
-
-
Chris Lattner authored
1. Legalize now always promotes truncstore of i1 to i8. 2. Remove patterns and gunk related to truncstore i1 from targets. 3. Rename the StoreXAction stuff to TruncStoreAction in TLI. 4. Make the TLI TruncStoreAction table a 2d table to handle from/to conversions. 5. Mark a wide variety of invalid truncstores as such in various targets, e.g. X86 currently doesn't support truncstore of any of its integer types. 6. Add legalize support for truncstores with invalid value input types. 7. Add a dag combine transform to turn store(truncate) into truncstore when safe. The later allows us to compile CodeGen/X86/storetrunc-fp.ll to: _foo: fldt 20(%esp) fldt 4(%esp) faddp %st(1) movl 36(%esp), %eax fstps (%eax) ret instead of: _foo: subl $4, %esp fldt 24(%esp) fldt 8(%esp) faddp %st(1) fstps (%esp) movl 40(%esp), %eax movss (%esp), %xmm0 movss %xmm0, (%eax) addl $4, %esp ret llvm-svn: 46140
-
- Jan 15, 2008
-
-
Chris Lattner authored
Move definition of 'trap' sdnode up from x86 instrinfo to targetselectiondag.td. llvm-svn: 46017
-
- Jan 10, 2008
-
-
Chris Lattner authored
llvm-svn: 45821
-
- Jan 08, 2008
-
-
Evan Cheng authored
llvm-svn: 45727
-
- Jan 07, 2008
-
-
Chris Lattner authored
llvm-svn: 45667
-
- Jan 06, 2008
-
-
Chris Lattner authored
llvm-svn: 45656
-
Chris Lattner authored
llvm-svn: 45653
-
- Dec 29, 2007
-
-
Chris Lattner authored
llvm-svn: 45418
-
- 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 13, 2007
-
-
Bill Wendling authored
llvm-svn: 44045
-
Bill Wendling authored
adjustment fields, and an optional flag. If there is a "dynamic_stackalloc" in the code, make sure that it's bracketed by CALLSEQ_START and CALLSEQ_END. If not, then there is the potential for the stack to be changed while the stack's being used by another instruction (like a call). This can only result in tears... llvm-svn: 44037
-
- Nov 12, 2007
-
-
Owen Anderson authored
Target maintainers: please check that the instructions for your target are correctly marked. llvm-svn: 44012
-
- Sep 11, 2007
-
-
Evan Cheng authored
llvm-svn: 41863
-
Evan Cheng authored
llvm-svn: 41812
-
- Aug 31, 2007
-
-
Raul Herbster authored
llvm-svn: 41626
-
- Aug 07, 2007
-
-
Evan Cheng authored
llvm-svn: 40887
-
- Aug 01, 2007
-
-
Evan Cheng authored
llvm-svn: 40658
-
- 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
-
- Jul 10, 2007
-
-
Evan Cheng authored
llvm-svn: 38501
-
- Jul 07, 2007
-
-
Evan Cheng authored
llvm-svn: 37965
-
Evan Cheng authored
llvm-svn: 37961
-
- Jul 06, 2007
-
-
Evan Cheng authored
llvm-svn: 37931
-
- Jul 05, 2007
-
-
Evan Cheng authored
llvm-svn: 37914
-
Evan Cheng authored
Each ARM use predicate operand is now made up of two components. The new component is the CPSR register. llvm-svn: 37895
-
- Jun 26, 2007
-
-
Dan Gohman authored
instruction flag, and use the flag along with a virtual member function hook for targets to override if there are instructions that are only trivially rematerializable with specific operands (i.e. constant pool loads). llvm-svn: 37728
-
- Jun 22, 2007
-
-
Owen Anderson authored
llvm-svn: 37705
-
- Jun 19, 2007
-
-
Evan Cheng authored
llvm-svn: 37659
-
Dan Gohman authored
with a general target hook to identify rematerializable instructions. Some instructions are only rematerializable with specific operands, such as loads from constant pools, while others are always rematerializable. This hook allows both to be identified as being rematerializable with the same mechanism. llvm-svn: 37644
-
Evan Cheng authored
llvm-svn: 37643
-
- Jun 06, 2007
-
-
Evan Cheng authored
llvm-svn: 37468
-
- Jun 01, 2007
-
-
Evan Cheng authored
llvm-svn: 37388
-
Evan Cheng authored
llvm-svn: 37381
-
- May 30, 2007
-
-
Evan Cheng authored
llvm-svn: 37349
-
- May 22, 2007
-
-
Dale Johannesen authored
llvm-svn: 37271
-
Dale Johannesen authored
llvm-svn: 37269
-
- May 18, 2007
-
-
Evan Cheng authored
Mark calls non-predicable for now. Need to ensure it's the last instruction in the if-converted block or make sure it preserve condition code. llvm-svn: 37199
-