LLVM API Documentation
#include <SmallVector.h>
Inherits llvm::SmallVectorBase.
Public Types | |
typedef size_t | size_type |
typedef ptrdiff_t | difference_type |
typedef T | value_type |
typedef T * | iterator |
typedef const T * | const_iterator |
typedef std::reverse_iterator < const_iterator > | const_reverse_iterator |
typedef std::reverse_iterator < iterator > | reverse_iterator |
typedef T & | reference |
typedef const T & | const_reference |
typedef T * | pointer |
typedef const T * | const_pointer |
Public Member Functions | |
iterator | begin () |
const_iterator | begin () const |
iterator | end () |
const_iterator | end () const |
reverse_iterator | rbegin () |
const_reverse_iterator | rbegin () const |
reverse_iterator | rend () |
const_reverse_iterator | rend () const |
size_type | size () const |
size_type | max_size () const |
size_t | capacity () const |
pointer | data () |
data - Return a pointer to the vector's buffer, even if empty(). More... | |
const_pointer | data () const |
data - Return a pointer to the vector's buffer, even if empty(). More... | |
reference | operator[] (unsigned idx) |
const_reference | operator[] (unsigned idx) const |
reference | front () |
const_reference | front () const |
reference | back () |
const_reference | back () const |
![]() | |
size_t | size_in_bytes () const |
size_in_bytes - This returns size()*sizeof(T). More... | |
size_t | capacity_in_bytes () const |
capacity_in_bytes - This returns capacity()*sizeof(T). More... | |
bool LLVM_ATTRIBUTE_UNUSED_RESULT | empty () const |
Protected Member Functions | |
SmallVectorTemplateCommon (size_t Size) | |
void | grow_pod (size_t MinSizeInBytes, size_t TSize) |
bool | isSmall () const |
void | resetToSmall () |
resetToSmall - Put this vector in a state of being small. More... | |
void | setEnd (T *P) |
iterator | capacity_ptr () |
const_iterator | capacity_ptr () const |
![]() | |
SmallVectorBase (void *FirstEl, size_t Size) | |
void | grow_pod (void *FirstEl, size_t MinSizeInBytes, size_t TSize) |
Friends | |
template<typename , unsigned > | |
struct | SmallVectorStorage |
Additional Inherited Members | |
![]() | |
void * | BeginX |
void * | EndX |
void * | CapacityX |
SmallVectorTemplateCommon - This is the part of SmallVectorTemplateBase which does not depend on whether the type T is a POD. The extra dummy template argument is used by ArrayRef to avoid unnecessarily requiring T to be complete.
Definition at line 66 of file SmallVector.h.
typedef const T* llvm::SmallVectorTemplateCommon< T, typename >::const_iterator |
Definition at line 101 of file SmallVector.h.
typedef const T* llvm::SmallVectorTemplateCommon< T, typename >::const_pointer |
Definition at line 109 of file SmallVector.h.
typedef const T& llvm::SmallVectorTemplateCommon< T, typename >::const_reference |
Definition at line 107 of file SmallVector.h.
typedef std::reverse_iterator<const_iterator> llvm::SmallVectorTemplateCommon< T, typename >::const_reverse_iterator |
Definition at line 103 of file SmallVector.h.
typedef ptrdiff_t llvm::SmallVectorTemplateCommon< T, typename >::difference_type |
Definition at line 98 of file SmallVector.h.
typedef T* llvm::SmallVectorTemplateCommon< T, typename >::iterator |
Definition at line 100 of file SmallVector.h.
typedef T* llvm::SmallVectorTemplateCommon< T, typename >::pointer |
Definition at line 108 of file SmallVector.h.
typedef T& llvm::SmallVectorTemplateCommon< T, typename >::reference |
Definition at line 106 of file SmallVector.h.
typedef std::reverse_iterator<iterator> llvm::SmallVectorTemplateCommon< T, typename >::reverse_iterator |
Definition at line 104 of file SmallVector.h.
typedef size_t llvm::SmallVectorTemplateCommon< T, typename >::size_type |
Definition at line 97 of file SmallVector.h.
typedef T llvm::SmallVectorTemplateCommon< T, typename >::value_type |
Definition at line 99 of file SmallVector.h.
|
inlineprotected |
Definition at line 78 of file SmallVector.h.
|
inline |
Definition at line 157 of file SmallVector.h.
Referenced by llvm::MachineInstr::addRegisterDead(), llvm::MachineInstr::addRegisterKilled(), advanceToNextLeafType(), llvm::yaml::Output::canElideEmptySequence(), llvm::LiveRange::endIndex(), llvm::BitstreamCursor::EnterSubBlock(), llvm::SparseSet< unsigned, llvm::VirtReg2IndexFunctor >::erase(), ExposePointerBase(), firstRealType(), llvm::MCStreamer::getCurrentSection(), llvm::MCStreamer::getPreviousSection(), llvm::ImutAVLTreeGenericIterator< ImutInfo >::getVisitState(), nextRealType(), llvm::ImutAVLTreeGenericIterator< ImutInfo >::operator*(), llvm::ImutAVLTreeGenericIterator< ImutInfo >::operator++(), llvm::ImutAVLTreeGenericIterator< ImutInfo >::operator--(), llvm::DWARFDebugLoc::parse(), ParseFunctionArgs(), llvm::MCStreamer::PopSection(), llvm::yaml::Output::postflightKey(), llvm::ARMFrameLowering::processFunctionBeforeCalleeSavedScan(), llvm::returnTypeIsEligibleForTailCall(), llvm::Instruction::setMetadata(), llvm::ImutAVLTreeGenericIterator< ImutInfo >::skipToParent(), llvm::MCStreamer::SubSection(), llvm::MCStreamer::SwitchSection(), llvm::MCStreamer::SwitchSectionNoChange(), and llvm::sys::path::system_temp_directory().
|
inline |
Definition at line 161 of file SmallVector.h.
|
inline |
Definition at line 112 of file SmallVector.h.
Referenced by llvm::SpillPlacement::Node::addLink(), llvm::FoldingSetNodeID::AddNodeID(), llvm::LiveRange::addSegment(), llvm::SmallString< 256 >::append(), llvm::SmallString< 256 >::assign(), llvm::opt::ArgList::begin(), llvm::LiveRangeEdit::begin(), llvm::SparseSet< unsigned, llvm::VirtReg2IndexFunctor >::begin(), llvm::LiveRange::begin(), llvm::DwarfDebug::beginModule(), llvm::ScheduleDAGInstrs::buildSchedGraph(), llvm::SmallVectorTemplateCommon< std::pair< int, int64_t > >::capacity(), llvm::RegPressureTracker::closeBottom(), llvm::RegPressureTracker::closeTop(), llvm::GCOVBlock::collectLineCounts(), collectOperands(), llvm::PMDataManager::collectRequiredAnalysis(), llvm::SmallVectorTemplateCommon< std::pair< int, int64_t > >::data(), llvm::DWARFDebugLoc::dump(), llvm::GCOVBlock::dump(), llvm::MCObjectStreamer::EmitInstToFragment(), llvm::cl::ExpandResponseFiles(), llvm::opt::ArgList::filtered_begin(), llvm::SSAUpdaterImpl< UpdaterT >::FindAvailableVals(), llvm::SSAUpdaterImpl< UpdaterT >::FindExistingPHI(), llvm::SlotIndexes::findLiveInMBBs(), foldPatchpoint(), llvm::RegScavenger::forward(), llvm::SmallVectorTemplateCommon< std::pair< int, int64_t > >::front(), llvm::opt::ArgList::getAllArgValues(), llvm::opt::Arg::getAsString(), llvm::LexicalScopes::getMachineBasicBlocks(), llvm::SlotIndexes::getMBBCoveringRange(), llvm::SlotIndexes::getMBBFromIndex(), llvm::Mangler::getNameWithPrefix(), llvm::RegScavenger::getScavengingFrameIndices(), llvm::DataLayout::getStringRepresentation(), llvm::yaml::ScalarNode::getValue(), llvm::ExtractValueInst::idx_begin(), llvm::InsertValueInst::idx_begin(), llvm::PMDataManager::initializeAnalysisImpl(), llvm::RegScavenger::initRegState(), llvm::SlotIndexes::insertMBBInMaps(), llvm::FoldingSetNodeID::Intern(), llvm::AllocationOrder::isHint(), llvm::RegScavenger::isScavengingFrameIndex(), llvm::SpillPlacement::iterate(), llvm::MipsSEInstrInfo::loadImmediate(), llvm::sys::path::native(), llvm::SmallVectorTemplateCommon< std::pair< int, int64_t > >::operator[](), llvm::yaml::Scanner::peekNext(), llvm::PMDataManager::preserveHigherLevelAnalysis(), llvm::MachineInstr::print(), llvm::ARMFrameLowering::processFunctionBeforeCalleeSavedScan(), llvm::SSAUpdaterImpl< UpdaterT >::RecordMatchingPHIs(), llvm::sys::path::remove_filename(), llvm::PMDataManager::removeNotPreservedAnalysis(), llvm::SmallVectorTemplateCommon< std::pair< int, int64_t > >::rend(), llvm::sys::path::replace_extension(), llvm::IntervalMapImpl::Path::replaceRoot(), llvm::LiveVariables::runOnMachineFunction(), llvm::SlotIndexes::runOnMachineFunction(), llvm::PMTopLevelManager::schedulePass(), llvm::StackMaps::serializeToStackMapSection(), llvm::PMTopLevelManager::setLastUser(), llvm::SmallVectorTemplateCommon< std::pair< int, int64_t > >::size(), llvm::MachineBasicBlock::SplitCriticalEdge(), llvm::raw_svector_ostream::str(), llvm::APInt::toString(), llvm::SpillPlacement::Node::update(), llvm::PMDataManager::verifyPreservedAnalysis(), llvm::LiveRange::vni_begin(), llvm::opt::DerivedArgList::~DerivedArgList(), and llvm::ManagedStringPool::~ManagedStringPool().
|
inline |
Definition at line 113 of file SmallVector.h.
|
inline |
capacity - Return the total number of elements in the currently allocated buffer.
Definition at line 132 of file SmallVector.h.
Referenced by llvm::raw_svector_ostream::raw_svector_ostream(), and llvm::raw_svector_ostream::resync().
|
inlineprotected |
Definition at line 117 of file SmallVector.h.
Referenced by llvm::SmallVectorTemplateCommon< std::pair< int, int64_t > >::capacity().
|
inlineprotected |
Definition at line 118 of file SmallVector.h.
|
inline |
data - Return a pointer to the vector's buffer, even if empty().
Definition at line 135 of file SmallVector.h.
Referenced by llvm::FoldingSetNodeID::ComputeHash(), llvm::MCAssembler::Finish(), llvm::ObjectBufferStream::flush(), llvm::MachineTraceMetrics::getProcResourceCycles(), llvm::sys::fs::make_absolute(), llvm::sys::path::native(), llvm::FoldingSetNodeID::operator<(), llvm::FoldingSetNodeID::operator==(), llvm::sys::path::system_temp_directory(), llvm::Twine::toNullTerminatedStringRef(), llvm::Twine::toStringRef(), and llvm::MCObjectWriter::WriteBytes().
|
inline |
data - Return a pointer to the vector's buffer, even if empty().
Definition at line 137 of file SmallVector.h.
|
inline |
Definition at line 114 of file SmallVector.h.
Referenced by llvm::SpillPlacement::Node::addLink(), llvm::FoldingSetNodeID::AddNodeID(), llvm::SmallString< 256 >::append(), llvm::SmallString< 256 >::assign(), llvm::SmallVectorTemplateCommon< std::pair< int, int64_t > >::back(), llvm::DwarfDebug::beginModule(), llvm::ScheduleDAGInstrs::buildSchedGraph(), llvm::RegPressureTracker::closeBottom(), llvm::RegPressureTracker::closeTop(), llvm::GCOVBlock::collectLineCounts(), collectOperands(), llvm::PMDataManager::collectRequiredAnalysis(), llvm::DWARFDebugLoc::dump(), llvm::GCOVBlock::dump(), llvm::MCObjectStreamer::EmitInstToFragment(), llvm::opt::ArgList::end(), llvm::LiveRangeEdit::end(), llvm::SparseSet< unsigned, llvm::VirtReg2IndexFunctor >::end(), llvm::LiveRange::end(), llvm::opt::ArgList::filtered_end(), llvm::SSAUpdaterImpl< UpdaterT >::FindAvailableVals(), llvm::SSAUpdaterImpl< UpdaterT >::FindExistingPHI(), llvm::SlotIndexes::findLiveInMBBs(), foldPatchpoint(), llvm::RegScavenger::forward(), llvm::opt::ArgList::getAllArgValues(), llvm::opt::Arg::getAsString(), llvm::LexicalScopes::getMachineBasicBlocks(), llvm::SlotIndexes::getMBBCoveringRange(), llvm::SlotIndexes::getMBBFromIndex(), llvm::RegScavenger::getScavengingFrameIndices(), GetSymbolFromOperand(), llvm::yaml::ScalarNode::getValue(), llvm::ExtractValueInst::idx_end(), llvm::InsertValueInst::idx_end(), llvm::PMDataManager::initializeAnalysisImpl(), llvm::RegScavenger::initRegState(), llvm::SlotIndexes::insertMBBInMaps(), llvm::FoldingSetNodeID::Intern(), llvm::AllocationOrder::isHint(), llvm::RegScavenger::isScavengingFrameIndex(), llvm::SpillPlacement::iterate(), llvm::MipsSEInstrInfo::loadImmediate(), llvm::sys::path::native(), llvm::AllocationOrder::next(), llvm::AllocationOrder::nextWithDups(), llvm::SmallVectorTemplateCommon< std::pair< int, int64_t > >::operator[](), llvm::yaml::Scanner::peekNext(), llvm::PMDataManager::preserveHigherLevelAnalysis(), llvm::ARMFrameLowering::processFunctionBeforeCalleeSavedScan(), llvm::raw_svector_ostream::raw_svector_ostream(), llvm::SmallVectorTemplateCommon< std::pair< int, int64_t > >::rbegin(), llvm::SSAUpdaterImpl< UpdaterT >::RecordMatchingPHIs(), llvm::PMDataManager::removeNotPreservedAnalysis(), llvm::raw_svector_ostream::resync(), llvm::LiveVariables::runOnMachineFunction(), llvm::SlotIndexes::runOnMachineFunction(), llvm::PMTopLevelManager::schedulePass(), llvm::StackMaps::serializeToStackMapSection(), llvm::PMTopLevelManager::setLastUser(), llvm::SmallVectorTemplateCommon< std::pair< int, int64_t > >::size(), llvm::MachineBasicBlock::SplitCriticalEdge(), llvm::APInt::toString(), llvm::SpillPlacement::Node::update(), llvm::PMDataManager::verifyPreservedAnalysis(), llvm::LiveRange::vni_end(), llvm::opt::DerivedArgList::~DerivedArgList(), and llvm::ManagedStringPool::~ManagedStringPool().
|
inline |
Definition at line 115 of file SmallVector.h.
|
inline |
Definition at line 148 of file SmallVector.h.
Referenced by llvm::LiveRange::beginIndex(), llvm::ARMFrameLowering::processFunctionBeforeCalleeSavedScan(), and llvm::IntervalMapImpl::Path::replaceRoot().
|
inline |
Definition at line 152 of file SmallVector.h.
|
inlineprotected |
Definition at line 80 of file SmallVector.h.
|
inlineprotected |
isSmall - Return true if this is a smallvector which has not had dynamic memory allocated for it.
Definition at line 86 of file SmallVector.h.
|
inline |
Definition at line 128 of file SmallVector.h.
|
inline |
Definition at line 139 of file SmallVector.h.
|
inline |
Definition at line 143 of file SmallVector.h.
|
inline |
Definition at line 122 of file SmallVector.h.
Referenced by llvm::SSAUpdaterImpl< UpdaterT >::FindAvailableVals(), llvm::SSAUpdaterImpl< UpdaterT >::FindDominators(), llvm::SSAUpdaterImpl< UpdaterT >::FindPHIPlacement(), getNoopInput(), llvm::SpillPlacement::iterate(), llvm::opt::ArgList::rbegin(), and llvm::returnTypeIsEligibleForTailCall().
|
inline |
Definition at line 123 of file SmallVector.h.
|
inline |
Definition at line 124 of file SmallVector.h.
Referenced by llvm::SSAUpdaterImpl< UpdaterT >::FindAvailableVals(), llvm::SSAUpdaterImpl< UpdaterT >::FindDominators(), llvm::SSAUpdaterImpl< UpdaterT >::FindPHIPlacement(), llvm::SpillPlacement::iterate(), llvm::opt::ArgList::rend(), and llvm::returnTypeIsEligibleForTailCall().
|
inline |
Definition at line 125 of file SmallVector.h.
|
inlineprotected |
resetToSmall - Put this vector in a state of being small.
Definition at line 91 of file SmallVector.h.
|
inlineprotected |
Definition at line 95 of file SmallVector.h.
|
inline |
Definition at line 127 of file SmallVector.h.
Referenced by llvm::ARMJITInfo::addConstantPoolEntryAddr(), llvm::ARMJITInfo::addJumpTableBaseAddr(), llvm::RegPressureTracker::advance(), llvm::AggressiveAntiDepBreaker::AggressiveAntiDepBreaker(), llvm::AllocationOrder::AllocationOrder(), AnalyzeArguments(), llvm::Hexagon_CCState::AnalyzeCallOperands(), llvm::CCState::AnalyzeCallOperands(), llvm::MipsTargetLowering::MipsCC::analyzeCallOperands(), llvm::Hexagon_CCState::AnalyzeCallResult(), llvm::CCState::AnalyzeCallResult(), llvm::Hexagon_CCState::AnalyzeFormalArguments(), llvm::CCState::AnalyzeFormalArguments(), llvm::MipsTargetLowering::MipsCC::analyzeFormalArguments(), llvm::Hexagon_CCState::AnalyzeReturn(), llvm::CCState::AnalyzeReturn(), llvm::sys::path::append(), llvm::cl::ValuesClass< DataType >::apply(), llvm::ImutAVLTreeGenericIterator< ImutInfo >::atBeginning(), llvm::PBQPBuilder::build(), llvm::PBQPBuilderWithCoalescing::build(), buildFromShuffleMostly(), BuildSubAggregate(), CalculateParameterAndLinkageAreaSize(), llvm::yaml::Output::canElideEmptySequence(), llvm::X86InstrInfo::canFoldMemoryOperand(), llvm::TargetInstrInfo::canFoldMemoryOperand(), llvm::CCState::CheckReturn(), llvm::ArrayRecycler< llvm::MachineOperand >::clear(), collectPDiff(), commuteShuffle(), llvm::IntEqClasses::compress(), llvm::FoldingSetNodeID::ComputeHash(), llvm::MachObjectWriter::ComputeSymbolTable(), llvm::LiveRange::containsOneValue(), llvm::LiveRange::createValueCopy(), llvm::RegisterPressure::dump(), llvm::opt::Arg::dump(), llvm::MCFragment::dump(), EmitDarwinBCHeaderAndTrailer(), llvm::PPCFrameLowering::emitEpilogue(), llvm::MCObjectStreamer::EmitGPRel32Value(), llvm::MCObjectStreamer::EmitGPRel64Value(), llvm::R600TargetLowering::EmitInstrWithCustomInserter(), llvm::MCObjectStreamer::EmitLabel(), llvm::PPCFrameLowering::emitPrologue(), llvm::MCObjectStreamer::EmitValueImpl(), llvm::object::MachOObjectFile::end_sections(), llvm::cl::ExpandResponseFiles(), llvm::UnwindOpcodeAssembler::Finalize(), llvm::finalizeBundle(), llvm::SparseMultiSet< VReg2SUnit, VirtReg2IndexFunctor >::findIndex(), llvm::MachineInstr::findTiedOperandIdx(), llvm::SplitEditor::finish(), llvm::MCAssembler::Finish(), llvm::DataLayout::fitsInLegalInteger(), llvm::ObjectBufferStream::flush(), llvm::TargetInstrInfo::foldMemoryOperand(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), llvm::X86InstrInfo::foldMemoryOperandImpl(), ForwardSwitchConditionToPHI(), llvm::BitstreamCursor::freeState(), llvm::ConstantArray::get(), llvm::ConstantVector::get(), llvm::DWARFAbbreviationDeclaration::getAttrByIndex(), llvm::ARMJITInfo::getConstantPoolEntryAddr(), llvm::DWARFAbbreviationDeclaration::getFormByIndex(), llvm::CCState::getInRegsParamInfo(), llvm::CCState::getInRegsParamsCount(), llvm::ARMJITInfo::getJumpTableBaseAddr(), llvm::DataLayout::getLargestLegalIntTypeSize(), llvm::DWARFContext::getLineInfoForAddressRange(), llvm::MachineFrameInfo::getLocalFrameObjectCount(), llvm::MachineFrameInfo::getLocalFrameObjectMap(), llvm::SlotIndexes::getMBBFromIndex(), getMemcpyLoadsAndStores(), getMemmoveLoadsAndStores(), getMemsetStores(), llvm::LiveRange::getNextValue(), getNoopInput(), llvm::DWARFAbbreviationDeclaration::getNumAttributes(), llvm::GCOVBlock::getNumEdges(), llvm::ExtractValueInst::getNumIndices(), llvm::InsertValueInst::getNumIndices(), llvm::LiveRange::getNumValNums(), llvm::opt::Arg::getNumValues(), GetOptionInfo(), llvm::AMDGPUTargetLowering::getOriginalFunctionArgs(), llvm::PBQPRAProblem::getPRegForOption(), llvm::MachineTraceMetrics::getProcResourceCycles(), llvm::DataLayout::getSmallestLegalIntType(), llvm::DataLayout::getStringRepresentation(), llvm::yaml::ScalarNode::getValue(), llvm::IntEqClasses::grow(), llvm::RegPressureTracker::initLiveThru(), llvm::LiveIntervals::insertMBBInMaps(), llvm::FoldingSetNodeID::Intern(), llvm::DataLayout::isLegalInteger(), isReverseVectorMask(), llvm::LiveRange::join(), llvm::MipsSEInstrInfo::loadImmediate(), LookupNearestOption(), llvm::NVPTXTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::TargetLowering::LowerCallTo(), llvm::R600TargetLowering::LowerFormalArguments(), llvm::SITargetLowering::LowerFormalArguments(), llvm::NVPTXTargetLowering::LowerReturn(), llvm::sys::fs::make_absolute(), llvm::opt::InputArgList::MakeIndex(), matchMask(), llvm::CCState::nextInRegsParam(), llvm::FoldingSetNodeID::operator<(), llvm::BitstreamCursor::operator=(), llvm::FoldingSetNodeID::operator==(), llvm::ImutAVLTreeGenericIterator< ImutInfo >::operator==(), llvm::DWARFDebugLoc::parse(), llvm::MCStreamer::PopSection(), llvm::MachineInstr::print(), llvm::ARMFrameLowering::processFunctionBeforeCalleeSavedScan(), llvm::raw_svector_ostream::raw_svector_ostream(), llvm::RegPressureTracker::recede(), redirectValuesFromPredecessorsToPhi(), llvm::sys::path::remove_filename(), llvm::LiveRange::RenumberValues(), llvm::sys::path::replace_extension(), llvm::RuntimeDyldImpl::resolveRelocationList(), llvm::raw_svector_ostream::resync(), llvm::AllocationOrder::rewind(), llvm::LiveVariables::runOnMachineFunction(), llvm::RegScavenger::scavengeRegister(), llvm::EngineBuilder::selectTarget(), llvm::StackMaps::serializeToStackMapSection(), llvm::Instruction::setMetadata(), llvm::opt::ArgList::size(), llvm::LiveRangeEdit::size(), llvm::SparseSet< unsigned, llvm::VirtReg2IndexFunctor >::size(), llvm::LiveRange::size(), llvm::SparseMultiSet< VReg2SUnit, VirtReg2IndexFunctor >::size(), llvm::LiveRegUnits::stepForward(), llvm::raw_svector_ostream::str(), llvm::sys::path::system_temp_directory(), llvm::Twine::toNullTerminatedStringRef(), llvm::APInt::toString(), llvm::Twine::toStringRef(), TrackDefUses(), llvm::IntEqClasses::uncompress(), updatePhysDepsDownwards(), updatePhysDepsUpwards(), llvm::LiveRange::verify(), llvm::MCObjectWriter::WriteBytes(), llvm::MachObjectWriter::WriteObject(), llvm::MCAssembler::writeSectionData(), and llvm::opt::Arg::~Arg().
|
friend |
Definition at line 68 of file SmallVector.h.