aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAlkis Evlogimenos <alkis@evlogimenos.com>2004-08-27 04:00:26 +0000
committerAlkis Evlogimenos <alkis@evlogimenos.com>2004-08-27 04:00:26 +0000
commit6177d3f4481ef622ce8cc19bbde8709214881aec (patch)
tree8c2a81322a6c9f846516772f91ea50b5c773b588 /include
parentfc093bd0810b6e726c02c2430f77618fd7255541 (diff)
downloadexternal_llvm-6177d3f4481ef622ce8cc19bbde8709214881aec.zip
external_llvm-6177d3f4481ef622ce8cc19bbde8709214881aec.tar.gz
external_llvm-6177d3f4481ef622ce8cc19bbde8709214881aec.tar.bz2
Add MachineBasicBlock2IndexFunctor. This is useful for densemaps from
MachineBasicBlocks to an arbitrary type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16068 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/CodeGen/MachineBasicBlock.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/MachineBasicBlock.h b/include/llvm/CodeGen/MachineBasicBlock.h
index 9d4ede6..fb03740 100644
--- a/include/llvm/CodeGen/MachineBasicBlock.h
+++ b/include/llvm/CodeGen/MachineBasicBlock.h
@@ -220,6 +220,16 @@ private: // Methods used to maintain doubly linked list of blocks...
}
};
+// This is useful when building DenseMaps keyed on MachineBasicBlocks
+struct MachineBasicBlock2IndexFunctor
+ : std::unary_function<const MachineBasicBlock*, unsigned> {
+ unsigned operator()(const MachineBasicBlock* MBB) const {
+ assert(MBB->getNumber() != -1 &&
+ "MachineBasicBlock does not belong to a MachineFunction");
+ return MBB->getNumber();
+ }
+};
+
//===--------------------------------------------------------------------===//
// GraphTraits specializations for machine basic block graphs (machine-CFGs)