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

Alkis Evlogimenos alkis at cs.uiuc.edu
Thu Feb 12 02:12:17 PST 2004


Changes in directory llvm/include/llvm/Target:

MRegisterInfo.h updated: 1.29 -> 1.30

---
Log message:

Change interface so that we can add to the end of a basic block
without getting an assertion from ilist that we are dereferencing
ilist<T>::end().


---
Diffs of the changes:  (+6 -6)

Index: llvm/include/llvm/Target/MRegisterInfo.h
diff -u llvm/include/llvm/Target/MRegisterInfo.h:1.29 llvm/include/llvm/Target/MRegisterInfo.h:1.30
--- llvm/include/llvm/Target/MRegisterInfo.h:1.29	Wed Feb 11 20:27:10 2004
+++ llvm/include/llvm/Target/MRegisterInfo.h	Thu Feb 12 02:11:04 2004
@@ -17,11 +17,11 @@
 #define LLVM_TARGET_MREGISTERINFO_H
 
 #include <cassert>
+#include "llvm/CodeGen/MachineBasicBlock.h"
 
 namespace llvm {
 
 class Type;
-class MachineBasicBlock;
 class MachineFunction;
 class MachineInstr;
 
@@ -227,17 +227,17 @@
   //
 
   virtual int storeRegToStackSlot(MachineBasicBlock &MBB,
-                                  MachineInstr* MI,
+                                  MachineBasicBlock::iterator MI,
                                   unsigned SrcReg, int FrameIndex,
                                   const TargetRegisterClass *RC) const = 0;
 
   virtual int loadRegFromStackSlot(MachineBasicBlock &MBB,
-                                   MachineInstr* MI,
+                                   MachineBasicBlock::iterator MI,
                                    unsigned DestReg, int FrameIndex,
                                    const TargetRegisterClass *RC) const = 0;
 
   virtual int copyRegToReg(MachineBasicBlock &MBB,
-                           MachineInstr* MI,
+                           MachineBasicBlock::iterator MI,
                            unsigned DestReg, unsigned SrcReg,
                            const TargetRegisterClass *RC) const = 0;
 
@@ -262,7 +262,7 @@
   ///
   virtual int eliminateCallFramePseudoInstr(MachineFunction &MF,
                                             MachineBasicBlock &MBB,
-                                            MachineInstr* MI) const {
+                                            MachineBasicBlock::iterator MI) const {
     assert(getCallFrameSetupOpcode()== -1 && getCallFrameDestroyOpcode()== -1 &&
 	   "eliminateCallFramePseudoInstr must be implemented if using"
 	   " call frame setup/destroy pseudo instructions!");
@@ -290,7 +290,7 @@
   /// added to (negative if removed from) the basic block.
   ///
   virtual int eliminateFrameIndex(MachineFunction &MF,
-                                  MachineInstr* MI) const = 0;
+                                  MachineBasicBlock::iterator MI) const = 0;
 
   /// emitProlog/emitEpilog - These methods insert prolog and epilog code into
   /// the function. The return value is the number of instructions





More information about the llvm-commits mailing list