diff options
author | Alkis Evlogimenos <alkis@evlogimenos.com> | 2004-08-27 04:00:26 +0000 |
---|---|---|
committer | Alkis Evlogimenos <alkis@evlogimenos.com> | 2004-08-27 04:00:26 +0000 |
commit | 390c820a82fc5568e5fd2a69a3721a5ea18ddd11 (patch) | |
tree | 084f447231c0497da5ba4706b91b81e3f8882b40 | |
parent | 60f33d4d66b90e3ddc838d912cc39a09421725b4 (diff) | |
download | bcm5719-llvm-390c820a82fc5568e5fd2a69a3721a5ea18ddd11.tar.gz bcm5719-llvm-390c820a82fc5568e5fd2a69a3721a5ea18ddd11.zip |
Add MachineBasicBlock2IndexFunctor. This is useful for densemaps from
MachineBasicBlocks to an arbitrary type.
llvm-svn: 16068
-rw-r--r-- | llvm/include/llvm/CodeGen/MachineBasicBlock.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/include/llvm/CodeGen/MachineBasicBlock.h b/llvm/include/llvm/CodeGen/MachineBasicBlock.h index 9d4ede6de1f..fb037402903 100644 --- a/llvm/include/llvm/CodeGen/MachineBasicBlock.h +++ b/llvm/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) |