OSDN Git Service

Add a Number field w/ accessor method, for function-level unique numbering
authorBrian Gaeke <gaeke@uiuc.edu>
Wed, 12 May 2004 21:35:20 +0000 (21:35 +0000)
committerBrian Gaeke <gaeke@uiuc.edu>
Wed, 12 May 2004 21:35:20 +0000 (21:35 +0000)
of MBBs.

Add non-const MachineBasicBlock::getParent() accessor method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13512 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/CodeGen/MachineBasicBlock.h

index 5faf2a2..f12c200 100644 (file)
@@ -63,9 +63,11 @@ public:
   const BasicBlock *BB;
   std::vector<MachineBasicBlock *> Predecessors;
   std::vector<MachineBasicBlock *> Successors;
+  int Number;
 
 public:
-  MachineBasicBlock(const BasicBlock *bb = 0) : Prev(0), Next(0), BB(bb) {
+  MachineBasicBlock(const BasicBlock *bb = 0) : Prev(0), Next(0), BB(bb),
+                                                Number(-1) {
     Insts.parent = this;
   }
   ~MachineBasicBlock() {}
@@ -78,6 +80,7 @@ public:
   /// getParent - Return the MachineFunction containing this basic block.
   ///
   const MachineFunction *getParent() const;
+        MachineFunction *getParent();
 
   typedef ilist<MachineInstr>::iterator                       iterator;
   typedef ilist<MachineInstr>::const_iterator           const_iterator;
@@ -158,6 +161,10 @@ public:
   void dump() const;
   void print(std::ostream &OS) const;
 
+  // MachineBasicBlocks are uniquely numbered at the function level
+  // (unless they're not in a MachineFunction yet)
+  int getNumber() const { return Number; }
+
 private:   // Methods used to maintain doubly linked list of blocks...
   friend class ilist_traits<MachineBasicBlock>;