LLVM: llvm::MachineInstrExpressionTrait Struct Reference (original) (raw)

Special DenseMapInfo traits to compare MachineInstr* by value of the instruction rather than by pointer value. More...

#include "[llvm/CodeGen/MachineInstr.h](MachineInstr%5F8h%5Fsource.html)"

Inheritance diagram for llvm::MachineInstrExpressionTrait:

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)

Detailed Description

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 2072 of file MachineInstr.h.

Member Function Documentation

getEmptyKey()

static MachineInstr * llvm::MachineInstrExpressionTrait::getEmptyKey ( ) inlinestatic

getHashValue()

Definition at line 2208 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().

getTombstoneKey()

static MachineInstr * llvm::MachineInstrExpressionTrait::getTombstoneKey ( ) inlinestatic

isEqual()


The documentation for this struct was generated from the following files: