[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-06-25 Thread Dan Gohman
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.132 -> 1.133 --- Log message: Revert the earlier change that removed the M_REMATERIALIZABLE machine instruction flag, and use the flag along with a virtual member function hook for targets to override if there are instr

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-06-18 Thread Dan Gohman
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.131 -> 1.132 --- Log message: Replace M_REMATERIALIZIBLE and the newly-added isOtherReMaterializableLoad with a general target hook to identify rematerializable instructions. Some instructions are only rematerializable

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-06-18 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.130 -> 1.131 --- Log message: Replace CanBeDuplicated() with a M_NOT_DUPLICABLE bit. --- Diffs of the changes: (+20 -16) TargetInstrInfo.h | 36 1 files changed, 20 insertions(

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-06-15 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.129 -> 1.130 --- Log message: Added CanBeDuplicated(). It returns true if an instruction can be safely duplicated (e.g. during ifcvt). --- Diffs of the changes: (+7 -0) TargetInstrInfo.h |7 +++ 1 files cha

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-06-14 Thread Dale Johannesen
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.128 -> 1.129 --- Log message: Do not treat FP_REG_KILL as terminator in branch analysis (X86). --- Diffs of the changes: (+1 -1) TargetInstrInfo.h |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index:

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-06-14 Thread Dan Gohman
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.127 -> 1.128 --- Log message: Add a target hook to allow loads from constant pools to be rematerialized, and an implementation for x86. --- Diffs of the changes: (+10 -0) TargetInstrInfo.h | 10 ++ 1 fil

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-06-08 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.126 -> 1.127 --- Log message: Add a utility routine to check for unpredicated terminator instruction. --- Diffs of the changes: (+6 -2) TargetInstrInfo.h |8 ++-- 1 files changed, 6 insertions(+), 2 deletion

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-06-06 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.125 -> 1.126 --- Log message: Add a machine instruction flag indicating the instruction can clobber condition code / register(s) used to predicate instructions. --- Diffs of the changes: (+6 -0) TargetInstrInfo.h |

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-29 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.124 -> 1.125 --- Log message: Add missing const qualifiers. --- Diffs of the changes: (+7 -5) TargetInstrInfo.h | 12 +++- 1 files changed, 7 insertions(+), 5 deletions(-) Index: llvm/include/llvm/Target

Re: [llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-24 Thread Chris Lattner
> Add a couple of target hooks for predication. > > + /// isPredicable - Returns true if the instruction is already > predicated. > + /// > + virtual bool isPredicated(MachineInstr *MI) const { Should take const MachineInstr* > +return false; > + } > + >/// PredicateInstruction - Co

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-23 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.123 -> 1.124 --- Log message: Add a couple of target hooks for predication. --- Diffs of the changes: (+14 -1) TargetInstrInfo.h | 15 ++- 1 files changed, 14 insertions(+), 1 deletion(-) Index: llvm

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-21 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.122 -> 1.123 --- Log message: Consistency. --- Diffs of the changes: (+3 -3) TargetInstrInfo.h |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) Index: llvm/include/llvm/Target/TargetInstrInfo.h diff

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-17 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.121 -> 1.122 --- Log message: RemoveBranch() and InsertBranch() now returns number of instructions deleted / inserted. --- Diffs of the changes: (+8 -4) TargetInstrInfo.h | 12 1 files changed, 8 ins

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-16 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.120 -> 1.121 --- Log message: Remove. Not needed. --- Diffs of the changes: (+0 -5) TargetInstrInfo.h |5 - 1 files changed, 5 deletions(-) Index: llvm/include/llvm/Target/TargetInstrInfo.h diff -u llvm/in

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h TargetLowering.h

2007-05-16 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.119 -> 1.120 TargetLowering.h updated: 1.124 -> 1.125 --- Log message: Add target hook to specify block size limit for if-conversion. --- Diffs of the changes: (+21 -0) TargetInstrInfo.h |5 + TargetLowering

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-16 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.118 -> 1.119 --- Log message: PredicateInstruction returns true if the operation was successful. --- Diffs of the changes: (+2 -2) TargetInstrInfo.h |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) In

Re: [llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-16 Thread Evan Cheng
It's there now. Evan On May 16, 2007, at 2:16 PM, Lauro Ramos Venancio wrote: > >/// PredicateInstruction - Convert the instruction into a > predicated >/// instruction. >virtual void PredicateInstruction(MachineInstr *MI, > -std::vector > &Cond

Re: [llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-16 Thread Lauro Ramos Venancio
/// PredicateInstruction - Convert the instruction into a predicated /// instruction. virtual void PredicateInstruction(MachineInstr *MI, -std::vector &Cond) const { -assert(0 && "Target didn't implement PredicateInstruction!"); -abort(); - }

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-16 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.117 -> 1.118 --- Log message: Rename M_PREDICATED to M_PREDICABLE; Move TargetInstrInfo::isPredicatable() to MachineInstr::isPredicable(). --- Diffs of the changes: (+6 -15) TargetInstrInfo.h | 21 ++-

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-15 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.116 -> 1.117 --- Log message: Fix comments. --- Diffs of the changes: (+10 -4) TargetInstrInfo.h | 14 ++ 1 files changed, 10 insertions(+), 4 deletions(-) Index: llvm/include/llvm/Target/TargetInstr

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-15 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.115 -> 1.116 --- Log message: Add TargetInstrInfo predication hooks. --- Diffs of the changes: (+14 -0) TargetInstrInfo.h | 14 ++ 1 files changed, 14 insertions(+) Index: llvm/include/llvm/Target/Ta

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-05-14 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.114 -> 1.115 --- Log message: All operands that made up of the predicate operands are maked M_PREDICATE_OPERAND. --- Diffs of the changes: (+2 -2) TargetInstrInfo.h |4 ++-- 1 files changed, 2 insertions(+), 2

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-03-18 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.113 -> 1.114 --- Log message: Add a TargetInstrDescriptor flag to mark an instruction as "re-materializable". It means the instruction can be easily re-materialized at any point. e.g. constant generation, load from cons

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-03-16 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.112 -> 1.113 --- Log message: These forward declarations are not needed. --- Diffs of the changes: (+0 -5) TargetInstrInfo.h |5 - 1 files changed, 5 deletions(-) Index: llvm/include/llvm/Target/TargetInst

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-03-14 Thread Jeff Cohen
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.111 -> 1.112 --- Log message: Fix for VS 2005 problem supplied by Morten Ofstad. --- Diffs of the changes: (+1 -0) TargetInstrInfo.h |1 + 1 files changed, 1 insertion(+) Index: llvm/include/llvm/Target/Target

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2007-01-26 Thread Jim Laskey
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.110 -> 1.111 --- Log message: Make LABEL a builtin opcode. --- Diffs of the changes: (+2 -8) TargetInstrInfo.h | 10 ++ 1 files changed, 2 insertions(+), 8 deletions(-) Index: llvm/include/llvm/Target/Ta

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-12-14 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.109 -> 1.110 --- Log message: Silly assertion. Forgot variable_ops instructions can have arbitrary number of operands. --- Diffs of the changes: (+4 -2) TargetInstrInfo.h |6 -- 1 files changed, 4 insertions

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-12-08 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.108 -> 1.109 --- Log message: Move findTiedToSrcOperand to TargetInstrDescriptor. --- Diffs of the changes: (+4 -5) TargetInstrInfo.h |9 - 1 files changed, 4 insertions(+), 5 deletions(-) Index: llvm/

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-12-07 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.107 -> 1.108 --- Log message: Use MI's TargetInstrDescriptor. --- Diffs of the changes: (+2 -1) TargetInstrInfo.h |3 ++- 1 files changed, 2 insertions(+), 1 deletion(-) Index: llvm/include/llvm/Target/TargetI

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-12-01 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.106 -> 1.107 --- Log message: - Add getOperandConstraint() to TargetInstrDescriptor. - convertToThreeAddress() change to allow single two-address MI to be converted into one or more 3-address MIs. --- Diffs of the ch

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-11-16 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.105 -> 1.106 --- Log message: Add opcode to TargetInstrDescriptor. --- Diffs of the changes: (+2 -1) TargetInstrInfo.h |3 ++- 1 files changed, 2 insertions(+), 1 deletion(-) Index: llvm/include/llvm/Target/Ta

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-11-08 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.104 -> 1.105 --- Log message: Remove M_2_ADDR_FLAG. --- Diffs of the changes: (+7 -13) TargetInstrInfo.h | 20 +++- 1 files changed, 7 insertions(+), 13 deletions(-) Index: llvm/include/llvm/Targ

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-11-06 Thread Chris Lattner
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.103 -> 1.104 --- Log message: Add a new operand flag to mark which operand is the first predicate operand of an M_PREDICATED instruction. --- Diffs of the changes: (+5 -0) TargetInstrInfo.h |5 + 1 files ch

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-11-06 Thread Chris Lattner
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.102 -> 1.103 --- Log message: add a flag so that predicated instructions can be recognized by branch folding --- Diffs of the changes: (+8 -0) TargetInstrInfo.h |8 1 files changed, 8 insertions(+) I

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-11-01 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.101 -> 1.102 --- Log message: Rename --- Diffs of the changes: (+2 -2) TargetInstrInfo.h |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index: llvm/include/llvm/Target/TargetInstrInfo.h diff -u llvm

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-11-01 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.100 -> 1.101 --- Log message: Added getTiedToSrcOperand() to check for two-address'ness. --- Diffs of the changes: (+5 -1) TargetInstrInfo.h |6 +- 1 files changed, 5 insertions(+), 1 deletion(-) Index: ll

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-10-31 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.99 -> 1.100 --- Log message: Add operand constraints to TargetInstrInfo. --- Diffs of the changes: (+21 -0) TargetInstrInfo.h | 21 + 1 files changed, 21 insertions(+) Index: llvm/include/llv

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-10-28 Thread Chris Lattner
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.98 -> 1.99 --- Log message: add another target hook for branch folding. --- Diffs of the changes: (+8 -0) TargetInstrInfo.h |8 1 files changed, 8 insertions(+) Index: llvm/include/llvm/Target/Target

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-10-24 Thread Chris Lattner
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.97 -> 1.98 --- Log message: update comment --- Diffs of the changes: (+3 -2) TargetInstrInfo.h |5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) Index: llvm/include/llvm/Target/TargetInstrInfo.h diff

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-10-24 Thread Rafael Espindola
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.96 -> 1.97 --- Log message: fix assert comment --- Diffs of the changes: (+1 -1) TargetInstrInfo.h |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/include/llvm/Target/TargetInstrInfo.h diff

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-10-17 Thread Chris Lattner
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.95 -> 1.96 --- Log message: expose DWARF_LABEL opcode# so the branch folder can update debug info properly. --- Diffs of the changes: (+7 -0) TargetInstrInfo.h |7 +++ 1 files changed, 7 insertions(+) In

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-10-17 Thread Chris Lattner
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.94 -> 1.95 --- Log message: update comment --- Diffs of the changes: (+4 -2) TargetInstrInfo.h |6 -- 1 files changed, 4 insertions(+), 2 deletions(-) Index: llvm/include/llvm/Target/TargetInstrInfo.h dif

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-10-13 Thread Chris Lattner
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.93 -> 1.94 --- Log message: it is easier to implement these when they are virtual --- Diffs of the changes: (+4 -4) TargetInstrInfo.h |8 1 files changed, 4 insertions(+), 4 deletions(-) Index: llvm/

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-10-13 Thread Chris Lattner
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.92 -> 1.93 --- Log message: allow branch reversal to fail --- Diffs of the changes: (+5 -4) TargetInstrInfo.h |9 + 1 files changed, 5 insertions(+), 4 deletions(-) Index: llvm/include/llvm/Target/Tar

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-10-13 Thread Chris Lattner
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.91 -> 1.92 --- Log message: replace the existing branch inspection/modification APIs with something more useful and general. --- Diffs of the changes: (+44 -17) TargetInstrInfo.h | 61

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-06-16 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.89 -> 1.90 --- Log message: Clean up --- Diffs of the changes: (+1 -2) TargetInstrInfo.h |3 +-- 1 files changed, 1 insertion(+), 2 deletions(-) Index: llvm/include/llvm/Target/TargetInstrInfo.h diff -u llvm/i

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-06-15 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.88 -> 1.89 --- Log message: Avoid undesirable behavior when assert is not enabled. --- Diffs of the changes: (+3 -3) TargetInstrInfo.h |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) Index: llvm/in

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-06-15 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.87 -> 1.88 --- Log message: Instructions with variable operands (variable_ops) can have a number required operands. e.g. def CALL32r : I<0xFF, MRM2r, (ops GR32:$dst, variable_ops), "call {*}$dst", [(X86c

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-05-18 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.86 -> 1.87 --- Log message: lib/Target/Target.td --- Diffs of the changes: (+20 -1) TargetInstrInfo.h | 21 - 1 files changed, 20 insertions(+), 1 deletion(-) Index: llvm/include/llvm/Target/

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-05-11 Thread Evan Cheng
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.85 -> 1.86 --- Log message: Add capability to scheduler to commute nodes for profit. If a two-address code whose first operand has uses below, it should be commuted when possible. --- Diffs of the changes: (+3 -0)

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-04-20 Thread Chris Lattner
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.84 -> 1.85 --- Log message: Remove a bunch of dead stuff, shrinkifying TargetInstrDescriptor significantly. --- Diffs of the changes: (+12 -79) TargetInstrInfo.h | 91 +++--

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-03-05 Thread Chris Lattner
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.83 -> 1.84 --- Log message: add a hook to insert a noop --- Diffs of the changes: (+7 -0) TargetInstrInfo.h |7 +++ 1 files changed, 7 insertions(+) Index: llvm/include/llvm/Target/TargetInstrInfo.h diff

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

2006-01-26 Thread Chris Lattner
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.81 -> 1.82 --- Log message: Add a common INLINEASM opcode --- Diffs of the changes: (+5 -2) TargetInstrInfo.h |7 +-- 1 files changed, 5 insertions(+), 2 deletions(-) Index: llvm/include/llvm/Target/Targe

[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h TargetInstrItineraries.h TargetMachine.h

2005-11-01 Thread Jim Laskey
Changes in directory llvm/include/llvm/Target: TargetInstrInfo.h updated: 1.80 -> 1.81 TargetInstrItineraries.h updated: 1.1 -> 1.2 TargetMachine.h updated: 1.57 -> 1.58 --- Log message: Allow itineraries to be passed through the Target Machine. --- Diffs of the changes: (+60 -1) TargetIns