Move even more functionality from MRegisterInfo into TargetInstrInfo.

Some day I'll get it all moved over...

llvm-svn: 45672
diff --git a/llvm/lib/Target/CellSPU/SPUInstrInfo.h b/llvm/lib/Target/CellSPU/SPUInstrInfo.h
index 22581fc..e2ecf9b 100644
--- a/llvm/lib/Target/CellSPU/SPUInstrInfo.h
+++ b/llvm/lib/Target/CellSPU/SPUInstrInfo.h
@@ -74,7 +74,19 @@
     virtual void loadRegFromAddr(MachineFunction &MF, unsigned DestReg,
 				                         SmallVectorImpl<MachineOperand> &Addr,
 				                         const TargetRegisterClass *RC,
-				                         SmallVectorImpl<MachineInstr*> &NewMIs) const;
+                                 SmallVectorImpl<MachineInstr*> &NewMIs) const;
+    
+    //! Fold spills into load/store instructions
+    virtual MachineInstr* foldMemoryOperand(MachineInstr* MI,
+                                            SmallVectorImpl<unsigned> &Ops,
+                                            int FrameIndex) const;
+
+    //! Fold any load/store to an operand
+    virtual MachineInstr* foldMemoryOperand(MachineInstr* MI,
+                                            SmallVectorImpl<unsigned> &Ops,
+                                            MachineInstr* LoadMI) const {
+      return 0;
+    }
   };
 }