LLVM 18.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 2020 of file MachineInstr.h.
|
inlinestatic |
Definition at line 2021 of file MachineInstr.h.
Referenced by isEqual().
|
static |
Definition at line 2117 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 2025 of file MachineInstr.h.
Referenced by isEqual().
|
inlinestatic |
Definition at line 2031 of file MachineInstr.h.
References getEmptyKey(), getTombstoneKey(), llvm::MachineInstr::IgnoreVRegDefs, LHS, and RHS.