LLVM 17.0.0git
|
Special DenseMapInfo traits to compare MachineInstr* by value of the instruction rather than by pointer value. More...
#include "llvm/CodeGen/MachineInstr.h"
Static Public Member Functions | |
static MachineInstr * | getEmptyKey () |
static MachineInstr * | getTombstoneKey () |
static unsigned | getHashValue (const MachineInstr *const &MI) |
static bool | isEqual (const MachineInstr *const &LHS, const MachineInstr *const &RHS) |
Special DenseMapInfo traits to compare MachineInstr* by value of the instruction rather than by pointer value.
The hashing and equality testing functions ignore definitions so this is useful for CSE, etc.
Definition at line 1937 of file MachineInstr.h.
|
inlinestatic |
Definition at line 1938 of file MachineInstr.h.
Referenced by isEqual().
|
static |
Definition at line 2081 of file MachineInstr.cpp.
References llvm::SmallVectorTemplateCommon< T, typename >::begin(), llvm::SmallVectorTemplateCommon< T, typename >::end(), llvm::MachineOperand::getReg(), llvm::hash_combine_range(), llvm::hash_value(), llvm::MachineOperand::isDef(), llvm::MachineOperand::isReg(), llvm::Register::isVirtual(), MI, llvm::SmallVectorTemplateBase< T, bool >::push_back(), and llvm::SmallVectorImpl< T >::reserve().
|
inlinestatic |
Definition at line 1942 of file MachineInstr.h.
Referenced by isEqual().
|
inlinestatic |
Definition at line 1948 of file MachineInstr.h.
References getEmptyKey(), getTombstoneKey(), llvm::MachineInstr::IgnoreVRegDefs, LHS, and RHS.