Remove ARM isel hacks that fold large immediates into a pair of add, sub, and,
[oota-llvm.git] / lib / Target / ARM / ARMBaseInstrInfo.h
index c929fce9e7b0fd2a05649a4cc9b4b15d6d9df1d7..cbcc428b7120e20680c83114aa34cfcad2546708 100644 (file)
@@ -346,6 +346,11 @@ public:
                                     int CmpMask, int CmpValue,
                                     const MachineRegisterInfo *MRI) const;
 
+  /// FoldImmediate - 'Reg' is known to be defined by a move immediate
+  /// instruction, try to fold the immediate into the use instruction.
+  virtual bool FoldImmediate(MachineInstr *UseMI, MachineInstr *DefMI,
+                             unsigned Reg, MachineRegisterInfo *MRI) const;
+
   virtual unsigned getNumMicroOps(const InstrItineraryData *ItinData,
                                   const MachineInstr *MI) const;