LLVM
8.0.1
|
SmallSet - This maintains a set of unique values, optimizing for the case when the set is small (less than N). More...
#include "llvm/ADT/SmallSet.h"
Public Types | |
using | size_type = size_t |
using | const_iterator = SmallSetIterator< T, N, C > |
Public Member Functions | |
SmallSet ()=default | |
LLVM_NODISCARD bool | empty () const |
size_type | size () const |
size_type | count (const T &V) const |
count - Return 1 if the element is in the set, 0 otherwise. More... | |
std::pair< NoneType, bool > | insert (const T &V) |
insert - Insert an element into the set if it isn't already there. More... | |
template<typename IterT > | |
void | insert (IterT I, IterT E) |
bool | erase (const T &V) |
void | clear () |
const_iterator | begin () const |
const_iterator | end () const |
SmallSet - This maintains a set of unique values, optimizing for the case when the set is small (less than N).
In this case, the set can be maintained with no mallocs. If the set gets large, we expand to using an std::set to maintain reasonable lookup times.
Definition at line 135 of file SmallSet.h.
using llvm::SmallSet< T, N, C >::const_iterator = SmallSetIterator<T, N, C> |
Definition at line 152 of file SmallSet.h.
using llvm::SmallSet< T, N, C >::size_type = size_t |
Definition at line 151 of file SmallSet.h.
|
default |
|
inline |
Definition at line 224 of file SmallSet.h.
Referenced by findConsecutiveLoad(), INITIALIZE_PASS(), llvm::mca::LSUnit::isReady(), and llvm::mca::LSUnit::onInstructionExecuted().
|
inline |
Definition at line 219 of file SmallSet.h.
Referenced by llvm::HexagonSubtarget::adjustSchedDependency(), llvm::HexagonHazardRecognizer::AdvanceCycle(), isCopy(), isEFLAGSLive(), isVirtualRegisterOperand(), mayUsePostIncMode(), and llvm::HexagonHazardRecognizer::Reset().
|
inline |
count - Return 1 if the element is in the set, 0 otherwise.
Definition at line 165 of file SmallSet.h.
Referenced by llvm::ARMBaseInstrInfo::canCauseFpMLxStall(), ClearKillFlags(), computeLiveOuts(), llvm::ARMBaseInstrInfo::copyPhysReg(), llvm::createLanaiDelaySlotFillerPass(), llvm::createSparcDelaySlotFillerPass(), llvm::HexagonFrameLowering::determineCalleeSaves(), llvm::Instruction::dropUnknownNonDebugMetadata(), llvm::mca::LSUnit::dump(), llvm::finalizeBundle(), findDeadCallerSavedReg(), findHoistingInsertPosAndDeps(), llvm::DWARFDie::findRecursively(), llvm::HexagonHazardRecognizer::getHazardType(), llvm::DILocation::getMergedLocation(), getNewSource(), getOffsetFromIndices(), llvm::SystemZRegisterInfo::getRegAllocationHints(), getUnconditionalBrDisp(), getZeroLatency(), llvm::LiveVariables::HandleVirtRegDef(), llvm::VPlan::hasVF(), INITIALIZE_PASS(), InstructionStoresToFI(), isCallerPreservedOrConstPhysReg(), isCopy(), isEFLAGSLive(), isHighLatencyCPSR(), isImmValidForOpcode(), llvm::mca::LSUnit::isReady(), IsSafeAndProfitableToMove(), isVirtualRegisterOperand(), mayLoopAccessLocation(), MaySpeculate(), phiHasBreakDef(), llvm::MachineBasicBlock::SplitCriticalEdge(), UpdatePredRedefs(), and verifyCTRBranch().
|
inline |
Definition at line 156 of file SmallSet.h.
Referenced by llvm::Instruction::dropUnknownNonDebugMetadata(), findHoistingInsertPosAndDeps(), INITIALIZE_PASS(), isCallerPreservedOrConstPhysReg(), isImmValidForOpcode(), llvm::mca::LSUnit::isReady(), isVirtualRegisterOperand(), and llvm::mca::LSUnit::onInstructionExecuted().
|
inline |
Definition at line 230 of file SmallSet.h.
Referenced by findConsecutiveLoad().
|
inline |
Definition at line 208 of file SmallSet.h.
Referenced by llvm::finalizeBundle(), findHoistingInsertPosAndDeps(), getUnconditionalBrDisp(), llvm::LiveVariables::HandleVirtRegDef(), INITIALIZE_PASS(), isVirtualRegisterOperand(), and llvm::mca::LSUnit::onInstructionExecuted().
|
inline |
insert - Insert an element into the set if it isn't already there.
Returns true if the element is inserted (it was not in the set before). The first value of the returned pair is unused and provided for partial compatibility with the standard library self-associative container concept.
Definition at line 181 of file SmallSet.h.
Referenced by llvm::VPlan::addVF(), AntiDepEdges(), llvm::ARMBaseInstrInfo::ARMBaseInstrInfo(), AssignProtectedObjSet(), buildMultiplyTree(), CheckForLiveRegDef(), CheckForLiveRegDefMasked(), combineShuffleOfScalars(), CompareMBBNumbers(), computeLiveOuts(), llvm::ARMBaseInstrInfo::copyPhysReg(), llvm::createLanaiDelaySlotFillerPass(), llvm::createSparcDelaySlotFillerPass(), llvm::HexagonFrameLowering::determineCalleeSaves(), llvm::mca::LSUnit::dispatch(), llvm::Instruction::dropUnknownNonDebugMetadata(), llvm::mca::LSUnit::dump(), llvm::HexagonHazardRecognizer::EmitInstruction(), ExpandBVWithShuffles(), llvm::finalizeBundle(), findConsecutiveLoad(), findDeadCallerSavedReg(), llvm::DWARFDie::findRecursively(), llvm::R600InstrInfo::fitsConstReadLimitations(), llvm::sys::getHostCPUName(), llvm::DILocation::getMergedLocation(), getNewSource(), getOffsetFromIndices(), getParentPad(), llvm::SystemZRegisterInfo::getRegAllocationHints(), llvm::TargetRegisterInfo::getRegAllocationHints(), getUnconditionalBrDisp(), getZeroLatency(), llvm::LiveVariables::HandleVirtRegDef(), INITIALIZE_PASS(), InstructionStoresToFI(), isCallerPreservedOrConstPhysReg(), isEFLAGSLive(), isHighLatencyCPSR(), isImmValidForOpcode(), isOperandKill(), IsSafeAndProfitableToMove(), isVirtualRegisterOperand(), LowerBUILD_VECTORAsVariablePermute(), mayLoopAccessLocation(), mayUsePostIncMode(), phiHasBreakDef(), llvm::PointerMayBeCaptured(), llvm::WebAssemblyInstPrinter::printInst(), ProcessSourceNode(), llvm::programUndefinedIfFullPoison(), propagateSwiftErrorVRegs(), llvm::MachineDominatorTree::recordSplitCriticalEdge(), shouldReorderOperands(), llvm::sortPtrAccesses(), llvm::MachineBasicBlock::SplitCriticalEdge(), TrackDefUses(), unique_unsorted(), UpdatePredRedefs(), llvm::SelectionDAGBuilder::UpdateSplitBlock(), and verifyCTRBranch().
|
inline |
Definition at line 203 of file SmallSet.h.
|
inline |
Definition at line 160 of file SmallSet.h.
Referenced by llvm::mca::LSUnit::dump(), ExpandBVWithShuffles(), llvm::R600InstrInfo::fitsConstReadLimitations(), llvm::sys::getHostCPUName(), llvm::mca::LSUnit::isReady(), IsSafeAndProfitableToMove(), and LowerBUILD_VECTORAsVariablePermute().