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 2019 of file MachineInstr.h.
|
inlinestatic |
Definition at line 2020 of file MachineInstr.h.
Referenced by isEqual().
|
static |
Definition at line 2109 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 2024 of file MachineInstr.h.
Referenced by isEqual().
|
inlinestatic |
Definition at line 2030 of file MachineInstr.h.
References getEmptyKey(), getTombstoneKey(), llvm::MachineInstr::IgnoreVRegDefs, LHS, and RHS.