[llvm-commits] CVS: llvm/lib/Target/PowerPC/PowerPCRegisterInfo.cpp PowerPCRegisterInfo.h

Chris Lattner lattner at cs.uiuc.edu
Sun Aug 15 15:16:08 PDT 2004



Changes in directory llvm/lib/Target/PowerPC:

PowerPCRegisterInfo.cpp updated: 1.29 -> 1.30
PowerPCRegisterInfo.h updated: 1.5 -> 1.6
---
Log message:

Insertion methods now return void instead of #instrs inserted.  Also, use 
more powerful forms of BuildMI to concisify the code


---
Diffs of the changes:  (+25 -31)

Index: llvm/lib/Target/PowerPC/PowerPCRegisterInfo.cpp
diff -u llvm/lib/Target/PowerPC/PowerPCRegisterInfo.cpp:1.29 llvm/lib/Target/PowerPC/PowerPCRegisterInfo.cpp:1.30
--- llvm/lib/Target/PowerPC/PowerPCRegisterInfo.cpp:1.29	Sun Aug 15 16:56:19 2004
+++ llvm/lib/Target/PowerPC/PowerPCRegisterInfo.cpp	Sun Aug 15 17:15:56 2004
@@ -68,7 +68,7 @@
   abort();
 }
 
-int 
+void 
 PowerPCRegisterInfo::storeRegToStackSlot(MachineBasicBlock &MBB,
                                          MachineBasicBlock::iterator MI,
                                          unsigned SrcReg, int FrameIdx) const {
@@ -79,17 +79,15 @@
 
   unsigned OC = Opcode[getIdx(RC)];
   if (SrcReg == PPC::LR) {
-    MBB.insert(MI, BuildMI(PPC::MFLR, 0, PPC::R0));
-    MBB.insert(MI, addFrameReference(BuildMI(OC,3).addReg(PPC::R0),FrameIdx));
-    return 2;
+    BuildMI(MBB, MI, PPC::MFLR, 0, PPC::R0);
+    addFrameReference(BuildMI(MBB, MI, OC, 3).addReg(PPC::R0),FrameIdx);
   } else {
-    MBB.insert(MI, BuildMI(PPC::IMPLICIT_DEF, 0, PPC::R0));
-    MBB.insert(MI, addFrameReference(BuildMI(OC, 3).addReg(SrcReg),FrameIdx));
-    return 2;
+    BuildMI(MBB, MI, PPC::IMPLICIT_DEF, 0, PPC::R0);
+    addFrameReference(BuildMI(MBB, MI, OC, 3).addReg(SrcReg),FrameIdx);
   }
 }
 
-int 
+void
 PowerPCRegisterInfo::loadRegFromStackSlot(MachineBasicBlock &MBB,
                                           MachineBasicBlock::iterator MI,
                                           unsigned DestReg, int FrameIdx) const{
@@ -99,32 +97,28 @@
   const TargetRegisterClass *RC = getRegClass(DestReg);
   unsigned OC = Opcode[getIdx(RC)];
   if (DestReg == PPC::LR) {
-    MBB.insert(MI, addFrameReference(BuildMI(OC, 2, PPC::R0), FrameIdx));
-    MBB.insert(MI, BuildMI(PPC::MTLR, 1).addReg(PPC::R0));
-    return 2;
+    addFrameReference(BuildMI(MBB, MI, OC, 2, PPC::R0), FrameIdx);
+    BuildMI(MBB, MI, PPC::MTLR, 1).addReg(PPC::R0);
   } else {
-    MBB.insert(MI, BuildMI(PPC::IMPLICIT_DEF, 0, PPC::R0));
-    MBB.insert(MI, addFrameReference(BuildMI(OC, 2, DestReg), FrameIdx));
-    return 2;
+    BuildMI(MBB, MI, PPC::IMPLICIT_DEF, 0, PPC::R0);
+    addFrameReference(BuildMI(MBB, MI, OC, 2, DestReg), FrameIdx);
   }
 }
 
-int PowerPCRegisterInfo::copyRegToReg(MachineBasicBlock &MBB,
-                                      MachineBasicBlock::iterator MI,
-                                      unsigned DestReg, unsigned SrcReg,
-                                      const TargetRegisterClass *RC) const {
+void PowerPCRegisterInfo::copyRegToReg(MachineBasicBlock &MBB,
+                                       MachineBasicBlock::iterator MI,
+                                       unsigned DestReg, unsigned SrcReg,
+                                       const TargetRegisterClass *RC) const {
   MachineInstr *I;
 
   if (RC == PowerPC::GPRCRegisterClass) {
-    I = BuildMI(PPC::OR, 2, DestReg).addReg(SrcReg).addReg(SrcReg);
+    BuildMI(MBB, MI, PPC::OR, 2, DestReg).addReg(SrcReg).addReg(SrcReg);
   } else if (RC == PowerPC::FPRCRegisterClass) {
-    I = BuildMI(PPC::FMR, 1, DestReg).addReg(SrcReg);
+    BuildMI(MBB, MI, PPC::FMR, 1, DestReg).addReg(SrcReg);
   } else { 
     std::cerr << "Attempt to copy register that is not GPR or FPR";
     abort();
   }
-  MBB.insert(MI, I);
-  return 1;
 }
 
 //===----------------------------------------------------------------------===//


Index: llvm/lib/Target/PowerPC/PowerPCRegisterInfo.h
diff -u llvm/lib/Target/PowerPC/PowerPCRegisterInfo.h:1.5 llvm/lib/Target/PowerPC/PowerPCRegisterInfo.h:1.6
--- llvm/lib/Target/PowerPC/PowerPCRegisterInfo.h:1.5	Sun Aug 15 16:56:20 2004
+++ llvm/lib/Target/PowerPC/PowerPCRegisterInfo.h	Sun Aug 15 17:15:56 2004
@@ -30,17 +30,17 @@
   const TargetRegisterClass* getRegClassForType(const Type* Ty) const;
 
   /// Code Generation virtual methods...
-  int storeRegToStackSlot(MachineBasicBlock &MBB,
-                          MachineBasicBlock::iterator MBBI,
-                          unsigned SrcReg, int FrameIndex) const;
-
-  int loadRegFromStackSlot(MachineBasicBlock &MBB,
+  void storeRegToStackSlot(MachineBasicBlock &MBB,
                            MachineBasicBlock::iterator MBBI,
-                           unsigned DestReg, int FrameIndex) const;
+                           unsigned SrcReg, int FrameIndex) const;
+
+  void loadRegFromStackSlot(MachineBasicBlock &MBB,
+                            MachineBasicBlock::iterator MBBI,
+                            unsigned DestReg, int FrameIndex) const;
   
-  int copyRegToReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI,
-		   unsigned DestReg, unsigned SrcReg,
-		   const TargetRegisterClass *RC) const;
+  void copyRegToReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI,
+                    unsigned DestReg, unsigned SrcReg,
+                    const TargetRegisterClass *RC) const;
 
   void eliminateCallFramePseudoInstr(MachineFunction &MF,
                                      MachineBasicBlock &MBB,






More information about the llvm-commits mailing list