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 files changed, 10 insertions(+) Index: llvm/include/llvm/Target/TargetInstrInfo.h diff -u llvm/include/llvm/Target/TargetInstrInfo.h:1.127 llvm/include/llvm/Target/TargetInstrInfo.h:1.128 --- llvm/include/llvm/Target/TargetInstrInfo.h:1.127 Fri Jun 8 16:59:04 2007 +++ llvm/include/llvm/Target/TargetInstrInfo.h Thu Jun 14 15:50:44 2007 @@ -298,6 +298,16 @@ return 0; } + /// isOtherReMaterializableLoad - If the specified machine instruction is a + /// direct load that is trivially rematerializable, not counting loads from + /// stack slots, return true. If not, return false. This predicate must + /// return false if the instruction has any side effects other than + /// producing the value from the load, or if it requres any address + /// registers that are not always available. + virtual bool isOtherReMaterializableLoad(MachineInstr *MI) const { + return false; + } + /// convertToThreeAddress - This method must be implemented by targets that /// set the M_CONVERTIBLE_TO_3_ADDR flag. When this flag is set, the target /// may be able to convert a two-address instruction into one or moretrue _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits