LLVM  4.0.0
Public Types | Public Member Functions | Protected Member Functions | List of all members
llvm::SmallVectorImpl< T > Class Template Reference

This class consists of common code factored out of the SmallVector class to reduce code duplication based on the SmallVector 'N' template parameter. More...

#include <APFloat.h>

Inherits llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >.

Inherited by llvm::SmallVector< T, N >, and llvm::SmallVector< T, 0 >.

Collaboration diagram for llvm::SmallVectorImpl< T >:
[legend]

Public Types

typedef SuperClass::iterator iterator
 
typedef SuperClass::const_iterator const_iterator
 
typedef SuperClass::size_type size_type
 
- Public Types inherited from llvm::SmallVectorTemplateCommon< T >
typedef size_t size_type
 
typedef ptrdiff_t difference_type
 
typedef T value_type
 
typedef Titerator
 
typedef const Tconst_iterator
 
typedef std::reverse_iterator
< const_iterator
const_reverse_iterator
 
typedef std::reverse_iterator
< iterator
reverse_iterator
 
typedef Treference
 
typedef const Tconst_reference
 
typedef Tpointer
 
typedef const Tconst_pointer
 

Public Member Functions

 SmallVectorImpl (const SmallVectorImpl &)=delete
 
 ~SmallVectorImpl ()
 
void clear ()
 
void resize (size_type N)
 
void resize (size_type N, const T &NV)
 
void reserve (size_type N)
 
LLVM_NODISCARD T pop_back_val ()
 
void swap (SmallVectorImpl &RHS)
 
template<typename in_iter >
void append (in_iter in_start, in_iter in_end)
 Add the specified range to the end of the SmallVector. More...
 
void append (size_type NumInputs, const T &Elt)
 Add the specified range to the end of the SmallVector. More...
 
void append (std::initializer_list< T > IL)
 
void assign (size_type NumElts, const T &Elt)
 
void assign (std::initializer_list< T > IL)
 
iterator erase (const_iterator CI)
 
iterator erase (const_iterator CS, const_iterator CE)
 
iterator insert (iterator I, T &&Elt)
 
iterator insert (iterator I, const T &Elt)
 
iterator insert (iterator I, size_type NumToInsert, const T &Elt)
 
template<typename ItTy >
iterator insert (iterator I, ItTy From, ItTy To)
 
void insert (iterator I, std::initializer_list< T > IL)
 
template<typename... ArgTypes>
void emplace_back (ArgTypes &&...Args)
 
SmallVectorImploperator= (const SmallVectorImpl &RHS)
 
SmallVectorImploperator= (SmallVectorImpl &&RHS)
 
bool operator== (const SmallVectorImpl &RHS) const
 
bool operator!= (const SmallVectorImpl &RHS) const
 
bool operator< (const SmallVectorImpl &RHS) const
 
void set_size (size_type N)
 Set the array size to N, which the current array must have enough capacity for. More...
 
- Public Member Functions inherited from llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >
void push_back (const T &Elt)
 
void push_back (T &&Elt)
 
void pop_back ()
 
- Public Member Functions inherited from llvm::SmallVectorTemplateCommon< T >
LLVM_ATTRIBUTE_ALWAYS_INLINE
iterator 
begin ()
 
LLVM_ATTRIBUTE_ALWAYS_INLINE
const_iterator 
begin () const
 
LLVM_ATTRIBUTE_ALWAYS_INLINE
iterator 
end ()
 
LLVM_ATTRIBUTE_ALWAYS_INLINE
const_iterator 
end () const
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
LLVM_ATTRIBUTE_ALWAYS_INLINE
size_type 
size () const
 
size_type max_size () const
 
size_t capacity () const
 Return the total number of elements in the currently allocated buffer. More...
 
pointer data ()
 Return a pointer to the vector's buffer, even if empty(). More...
 
const_pointer data () const
 Return a pointer to the vector's buffer, even if empty(). More...
 
LLVM_ATTRIBUTE_ALWAYS_INLINE
reference 
operator[] (size_type idx)
 
LLVM_ATTRIBUTE_ALWAYS_INLINE
const_reference 
operator[] (size_type idx) const
 
reference front ()
 
const_reference front () const
 
reference back ()
 
const_reference back () const
 
- Public Member Functions inherited from llvm::SmallVectorBase
size_t size_in_bytes () const
 This returns size()*sizeof(T). More...
 
size_t capacity_in_bytes () const
 capacity_in_bytes - This returns capacity()*sizeof(T). More...
 
LLVM_NODISCARD bool empty () const
 

Protected Member Functions

 SmallVectorImpl (unsigned N)
 
- Protected Member Functions inherited from llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >
 SmallVectorTemplateBase (size_t Size)
 
void grow (size_t MinSize=0)
 Grow the allocated memory (without initializing new elements), doubling the size of the allocated memory. More...
 
- Protected Member Functions inherited from llvm::SmallVectorTemplateCommon< T >
 SmallVectorTemplateCommon (size_t Size)
 
void grow_pod (size_t MinSizeInBytes, size_t TSize)
 
bool isSmall () const
 Return true if this is a smallvector which has not had dynamic memory allocated for it. More...
 
void resetToSmall ()
 Put this vector in a state of being small. More...
 
void setEnd (T *P)
 
iterator capacity_ptr ()
 
const_iterator capacity_ptr () const
 
- Protected Member Functions inherited from llvm::SmallVectorBase
 SmallVectorBase (void *FirstEl, size_t Size)
 
void grow_pod (void *FirstEl, size_t MinSizeInBytes, size_t TSize)
 This is an implementation of the grow() method which only works on POD-like data types and is out of line to reduce code duplication. More...
 

Additional Inherited Members

- Static Protected Member Functions inherited from llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >
static void destroy_range (T *S, T *E)
 
static void uninitialized_move (It1 I, It1 E, It2 Dest)
 Move the range [I, E) into the uninitialized memory starting with "Dest", constructing elements as needed. More...
 
static void uninitialized_copy (It1 I, It1 E, It2 Dest)
 Copy the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements as needed. More...
 
- Protected Attributes inherited from llvm::SmallVectorBase
void * BeginX
 
void * EndX
 
void * CapacityX
 

Detailed Description

template<typename T>
class llvm::SmallVectorImpl< T >

This class consists of common code factored out of the SmallVector class to reduce code duplication based on the SmallVector 'N' template parameter.

Definition at line 32 of file APFloat.h.

Member Typedef Documentation

Definition at line 326 of file SmallVector.h.

template<typename T>
typedef SuperClass::iterator llvm::SmallVectorImpl< T >::iterator

Definition at line 325 of file SmallVector.h.

template<typename T>
typedef SuperClass::size_type llvm::SmallVectorImpl< T >::size_type

Definition at line 327 of file SmallVector.h.

Constructor & Destructor Documentation

template<typename T>
llvm::SmallVectorImpl< T >::SmallVectorImpl ( unsigned  N)
inlineexplicitprotected

Definition at line 331 of file SmallVector.h.

template<typename T>
llvm::SmallVectorImpl< T >::SmallVectorImpl ( const SmallVectorImpl< T > &  )
delete
template<typename T>
llvm::SmallVectorImpl< T >::~SmallVectorImpl ( )
inline

Definition at line 338 of file SmallVector.h.

Member Function Documentation

template<typename T>
template<typename in_iter >
void llvm::SmallVectorImpl< T >::append ( in_iter  in_start,
in_iter  in_end 
)
inline

Add the specified range to the end of the SmallVector.

Definition at line 392 of file SmallVector.h.

Referenced by llvm::opt::ArgList::AddAllArgValues(), addAllGlobalValueUsers(), llvm::FoldingSetNodeID::AddNodeID(), llvm::RecurrenceDescriptor::AddReductionVar(), llvm::FoldingSetNodeID::AddString(), analyzeLoopUnrollCost(), llvm::SmallString< 256 >::append(), llvm::sys::path::append(), llvm::SmallVectorImpl< std::pair< llvm::RelocationValueRef, llvm::RelocationEntry > >::append(), llvm::RegsForValue::append(), llvm::internal::appendLoopsToWorklist(), llvm::SmallString< 256 >::assign(), llvm::SmallVectorImpl< std::pair< llvm::RelocationValueRef, llvm::RelocationEntry > >::assign(), BuildReplacementDIExpr(), combineConcatVectorOfExtracts(), ConcatenateVectors(), llvm::ConstantFoldGetElementPtr(), containsConstantSomewhere(), llvm::ConvertDebugDeclareToDebugValue(), llvm::DecodeEXTRQIMask(), llvm::DecodeINSERTQIMask(), llvm::DecodeVectorBroadcast(), llvm::MCObjectStreamer::EmitBytes(), llvm::MCWinCOFFStreamer::EmitInstToData(), llvm::MCObjectStreamer::EmitInstToFragment(), llvm::DIBuilder::finalize(), llvm::FindInsertedValue(), llvm::SSAUpdaterTraits< SSAUpdater >::FindPredecessorBlocks(), llvm::LiveRange::flushSegmentSet(), FoldCONCAT_VECTORS(), llvm::X86InstrInfo::foldMemoryOperandImpl(), llvm::AttributeSet::get(), llvm::ScalarEvolution::getAddExpr(), llvm::ScalarEvolution::getAddRecExpr(), llvm::DominatorTreeBase< BasicBlock >::getDescendants(), getFauxShuffleMask(), getHostID(), llvm::ScalarEvolution::getMulExpr(), getNoopInput(), llvm::object::ELFFile< ELFT >::getRelocationTypeName(), llvm::object::MachOObjectFile::getRelocationTypeName(), llvm::object::COFFObjectFile::getRelocationTypeName(), llvm::ScalarEvolution::getSMaxExpr(), llvm::ConstantDataArray::getString(), getTargetShuffleMaskIndices(), llvm::ScalarEvolution::getUDivExactExpr(), llvm::ScalarEvolution::getUMaxExpr(), llvm::DebugHandlerBase::identifyScopeMarkers(), llvm::opt::InputArgList::InputArgList(), llvm::sroa::AllocaSlices::insert(), llvm::SmallVectorImpl< std::pair< llvm::RelocationValueRef, llvm::RelocationEntry > >::insert(), llvm::LazyCallGraph::RefSCC::insertIncomingRefEdge(), llvm::isPotentiallyReachableFromMany(), IsValueFullyAvailableInBlock(), LowerBITCAST(), llvm::LowerDbgDeclare(), llvm::SITargetLowering::LowerFormalArguments(), moveBelowOrigChain(), llvm::R600TargetLowering::PerformDAGCombine(), llvm::BitstreamCursor::readRecord(), llvm::LazyCallGraph::RefSCC::removeInternalRefEdge(), llvm::opt::Arg::render(), llvm::opt::Arg::renderAsInput(), llvm::sys::path::replace_extension(), ReplaceINTRINSIC_W_CHAIN(), replaceOneDbgValueForAlloca(), llvm::EngineBuilder::setMAttrs(), SimplifyAddOperands(), llvm::simplifyLoop(), llvm::SmallVector< llvm::cl::parser::OptionInfo, 8 >::SmallVector(), SplitAddRecs(), llvm::APInt::toString(), and llvm::InstCombiner::visitGetElementPtrInst().

template<typename T>
void llvm::SmallVectorImpl< T >::append ( size_type  NumInputs,
const T Elt 
)
inline

Add the specified range to the end of the SmallVector.

Definition at line 404 of file SmallVector.h.

template<typename T>
void llvm::SmallVectorImpl< T >::append ( std::initializer_list< T IL)
inline

Definition at line 414 of file SmallVector.h.

template<typename T>
void llvm::SmallVectorImpl< T >::assign ( size_type  NumElts,
const T Elt 
)
inline
template<typename T>
void llvm::SmallVectorImpl< T >::assign ( std::initializer_list< T IL)
inline

Definition at line 426 of file SmallVector.h.

template<typename T>
void llvm::SmallVectorImpl< T >::clear ( )
inline

Definition at line 347 of file SmallVector.h.

Referenced by llvm::PMDataManager::add(), llvm::LiveIntervals::addKillFlags(), llvm::BPFInstrInfo::analyzeBranch(), llvm::MSP430InstrInfo::analyzeBranch(), llvm::LanaiInstrInfo::analyzeBranch(), llvm::HexagonInstrInfo::analyzeBranch(), llvm::AVRInstrInfo::analyzeBranch(), llvm::ARMBaseInstrInfo::analyzeBranch(), llvm::SystemZInstrInfo::analyzeBranch(), llvm::SystemZCCState::AnalyzeCallOperands(), llvm::MipsCCState::AnalyzeCallOperands(), llvm::MipsCCState::AnalyzeCallResult(), llvm::SystemZCCState::AnalyzeFormalArguments(), llvm::MipsCCState::AnalyzeFormalArguments(), analyzeLoopUnrollCost(), llvm::MipsCCState::AnalyzeReturn(), llvm::internal::appendLoopsToWorklist(), llvm::SmallVectorImpl< std::pair< llvm::RelocationValueRef, llvm::RelocationEntry > >::assign(), llvm::SSAUpdaterImpl< UpdaterT >::BuildBlockList(), llvm::IDFCalculator< NodeTy >::calculate(), llvm::CC_ARM_AAPCS_Custom_Aggregate(), llvm::MipsCCState::CheckReturn(), CleanupPointerRootUsers(), llvm::IntEqClasses::clear(), llvm::IndexedMap< unsigned, llvm::VirtReg2IndexFunctor >::clear(), llvm::SpillPlacement::Node::clear(), llvm::ArrayRecycler< llvm::MachineOperand >::clear(), llvm::SchedDFSResult::clear(), llvm::SparseSet< unsigned, llvm::VirtReg2IndexFunctor >::clear(), llvm::FunctionLoweringInfo::clear(), llvm::LiveRange::clear(), llvm::SparseMultiSet< VReg2SUnit, VirtReg2IndexFunctor >::clear(), llvm::FoldingSetNodeID::clear(), llvm::CCState::clearByValRegsInfo(), llvm::FastISel::CallLoweringInfo::clearIns(), llvm::FastISel::CallLoweringInfo::clearOuts(), llvm::PPCCCState::clearWasPPCF128(), collectDebugValues(), llvm::ScalarEvolution::computeAccessFunctions(), llvm::ComputeSignatureVTs(), llvm::convertUTF8ToUTF16String(), llvm::DecodeVPPERMMask(), llvm::RuntimeDyldELF::deregisterEHFrames(), llvm::ConnectedVNInfoEqClasses::Distribute(), llvm::AsmPrinter::doFinalization(), DoPromotion(), emitComments(), llvm::CodeViewContext::encodeDefRange(), llvm::CodeViewContext::encodeInlineLineTable(), ExpandBVWithShuffles(), llvm::ARMTargetLowering::ExpandInlineAsm(), llvm::X86TargetLowering::ExpandInlineAsm(), llvm::ScalarEvolution::findArrayDimensions(), findConsecutiveLoad(), FindMostPopularDest(), llvm::SplitEditor::finish(), ForeachHelper(), llvm::formLCSSAForInstructions(), llvm::ScalarEvolution::getAddExpr(), getAdjustedPtr(), llvm::RegsForValue::getCopyFromRegs(), llvm::TargetSubtargetInfo::getCriticalPathRCs(), llvm::pdb::DIARawSymbol::getDataBytes(), llvm::DominatorTreeBase< BasicBlock >::getDescendants(), getFauxShuffleMask(), getHostID(), llvm::DWARFUnit::getInlinedChainForAddress(), getMemmoveLoadsAndStores(), llvm::pdb::DIADataStream::getNext(), llvm::MemoryDependenceResults::getNonLocalPointerDependency(), llvm::ScalarEvolution::getUDivExpr(), getUnderlyingObjectsForInstr(), llvm::Loop::getUniqueExitBlocks(), llvm::yaml::ScalarNode::getValue(), llvm::InlineFunction(), insertVector(), llvm::SpillPlacement::iterate(), llvm::AArch64CallLowering::lowerCall(), llvm::TargetLowering::LowerCallTo(), makeAllConstantUsesInstructions(), llvm::Regex::match(), mergeConstants(), moveBelowOrigChain(), llvm::sys::path::native(), llvm::BlockFrequencyInfoImplBase::packageLoop(), llvm::MetadataLoader::MetadataLoaderImpl::parseMetadata(), llvm::MetadataLoader::MetadataLoaderImpl::parseMetadataAttachment(), llvm::MetadataLoader::MetadataLoaderImpl::parseMetadataKinds(), parseOperands(), llvm::SpillPlacement::prepare(), llvm::sampleprof::SampleProfileReaderText::read(), llvm::BitstreamCursor::ReadBlockInfoBlock(), llvm::HexagonInstrInfo::reduceLoopCount(), llvm::RuntimeDyldELF::registerEHFrames(), llvm::LiveIntervals::releaseMemory(), llvm::SlotIndexes::releaseMemory(), llvm::LiveRange::RenumberValues(), llvm::UnwindOpcodeAssembler::Reset(), llvm::codeview::TypeRecordBuilder::reset(), llvm::HexagonShuffler::reset(), llvm::LiveRangeCalc::reset(), llvm::BumpPtrAllocatorImpl< MallocAllocator, 65536 >::Reset(), llvm::DataLayout::reset(), llvm::MCStreamer::reset(), llvm::MCContext::reset(), llvm::RuntimePointerChecking::reset(), llvm::SchedRemainder::reset(), llvm::SchedBoundary::reset(), llvm::TypeFinder::run(), llvm::DevirtSCCRepeatedPass< PassT >::run(), runIPSCCP(), llvm::RegisterClassInfo::runOnMachineFunction(), llvm::MachineDominatorTree::runOnMachineFunction(), llvm::SpillPlacement::scanActiveBundles(), llvm::SelectionDAGISel::SelectCodeCommon(), llvm::FileRemover::setFile(), llvm::EngineBuilder::setMAttrs(), setupSwiftErrorVals(), SimplifyAddOperands(), SimplifyLoopInst(), llvm::SplitCriticalEdge(), llvm::LazyCallGraph::RefSCC::switchInternalEdgeToRef(), llvm::RegBankSelect::RepairingPlacement::switchTo(), llvm::TailDuplicator::tailDuplicateAndUpdate(), llvm::cl::TokenizeGNUCommandLine(), llvm::cl::TokenizeWindowsCommandLine(), llvm::BlockFrequencyInfoImplBase::updateLoopWithIrreducible(), llvm::MachineBasicBlock::updateTerminator(), llvm::ValueEnumerator::ValueEnumerator(), llvm::MemorySSA::verifyOrdering(), llvm::codeview::TypeSerializer::visitTypeEndGetIndex(), and llvm::GCOVBlock::~GCOVBlock().

template<typename T>
template<typename... ArgTypes>
void llvm::SmallVectorImpl< T >::emplace_back ( ArgTypes &&...  Args)
inline
template<typename T>
iterator llvm::SmallVectorImpl< T >::erase ( const_iterator  CI)
inline
template<typename T>
iterator llvm::SmallVectorImpl< T >::erase ( const_iterator  CS,
const_iterator  CE 
)
inline

Definition at line 446 of file SmallVector.h.

template<typename T>
iterator llvm::SmallVectorImpl< T >::insert ( iterator  I,
T &&  Elt 
)
inline
template<typename T>
iterator llvm::SmallVectorImpl< T >::insert ( iterator  I,
const T Elt 
)
inline

Definition at line 494 of file SmallVector.h.

template<typename T>
iterator llvm::SmallVectorImpl< T >::insert ( iterator  I,
size_type  NumToInsert,
const T Elt 
)
inline

Definition at line 523 of file SmallVector.h.

template<typename T>
template<typename ItTy >
iterator llvm::SmallVectorImpl< T >::insert ( iterator  I,
ItTy  From,
ItTy  To 
)
inline

Definition at line 575 of file SmallVector.h.

template<typename T>
void llvm::SmallVectorImpl< T >::insert ( iterator  I,
std::initializer_list< T IL 
)
inline

Definition at line 631 of file SmallVector.h.

template<typename T>
bool llvm::SmallVectorImpl< T >::operator!= ( const SmallVectorImpl< T > &  RHS) const
inline

Definition at line 650 of file SmallVector.h.

template<typename T>
bool llvm::SmallVectorImpl< T >::operator< ( const SmallVectorImpl< T > &  RHS) const
inline

Definition at line 654 of file SmallVector.h.

template<typename T >
SmallVectorImpl< T > & llvm::SmallVectorImpl< T >::operator= ( const SmallVectorImpl< T > &  RHS)
template<typename T >
SmallVectorImpl< T > & llvm::SmallVectorImpl< T >::operator= ( SmallVectorImpl< T > &&  RHS)

Definition at line 762 of file SmallVector.h.

References llvm::sys::path::begin(), and llvm::sys::path::end().

template<typename T>
bool llvm::SmallVectorImpl< T >::operator== ( const SmallVectorImpl< T > &  RHS) const
inline

Definition at line 646 of file SmallVector.h.

template<typename T>
LLVM_NODISCARD T llvm::SmallVectorImpl< T >::pop_back_val ( )
inline

Definition at line 382 of file SmallVector.h.

Referenced by addAllGlobalValueUsers(), addBlockAndPredsToSet(), AddReachableCodeToWorklist(), llvm::ARMFrameLowering::adjustForSegmentedStacks(), allUsersAreInFunction(), allUsersAreInFunctions(), analyzeLoopUnrollCost(), llvm::internal::appendLoopsToWorklist(), AreAnyUnderlyingObjectsAnAlloca(), llvm::SSAUpdaterImpl< UpdaterT >::BuildBlockList(), buildMultiplyTree(), llvm::IDFCalculator< NodeTy >::calculate(), llvm::calculateClrEHStateNumbers(), llvm::SSAUpdaterImpl< UpdaterT >::CheckIfPHIMatches(), collectFuncletMembers(), llvm::colorEHFunclets(), combineOrCmpEqZeroToCtlzSrl(), combineRedundantDWordShuffle(), llvm::FunctionComparator::compare(), llvm::computeMinimumValueSizes(), llvm::slpvectorizer::BoUpSLP::computeMinimumValueSizes(), ComputePostOrders(), ConstHasGlobalValuePredicate(), containsConstantSomewhere(), deleteDeadInstruction(), DeleteTriviallyDeadInstructions(), llvm::ARMFrameLowering::determineCalleeSaves(), determinePointerReadAttrs(), llvm::JumpThreadingPass::DuplicateCondBranchOnPHIIntoPred(), llvm::LiveRangeEdit::eliminateDeadDefs(), findBasePointer(), llvm::objcarc::FindDependencies(), llvm::FindFunctionBackedges(), findRefEdges(), foldReturnAndProcessPred(), llvm::ScalarEvolution::forgetLoop(), llvm::ScalarEvolution::forgetValue(), llvm::formLCSSAForInstructions(), llvm::FunctionComparator::functionHash(), llvm::DominatorTreeBase< BasicBlock >::getDescendants(), llvm::MemoryDependenceResults::getInvariantGroupPointerDependency(), llvm::RecurrenceDescriptor::getSourceExtensionKind(), getUnderlyingObjects(), llvm::GetUnderlyingObjects(), getUnwindDestToken(), getUnwindDestTokenHelper(), llvm::slpvectorizer::BoUpSLP::getVectorElementSize(), llvm::SDNode::hasPredecessorHelper(), llvm::HexagonMCShuffle(), llvm::DebugHandlerBase::identifyScopeMarkers(), llvm::LazyCallGraph::RefSCC::insertIncomingRefEdge(), llvm::MachineTraceMetrics::Ensemble::invalidate(), isAllocSiteRemovable(), llvm::LazyCallGraph::SCC::isAncestorOf(), llvm::LazyCallGraph::RefSCC::isDescendantOf(), isEphemeralValueOf(), isLeakCheckerRoot(), isNonEscapingGlobalNoAliasWithLoad(), isObjectSizeLessThanOrEq(), isOnlyCopiedFromConstantGlobal(), llvm::isPotentiallyReachableFromMany(), IsStoredObjCPointer(), isSuccOrder(), IsValueFullyAvailableInBlock(), markAliveBlocks(), markTails(), memoryIsNotModifiedBetween(), llvm::SIInstrInfo::moveToVALU(), llvm::PHITransAddr::PHITranslateWithInsertion(), llvm::BasicAAResult::pointsToConstantMemory(), llvm::SparseSet< unsigned, llvm::VirtReg2IndexFunctor >::pop_back_val(), llvm::WebAssemblyInstPrinter::printInst(), llvm::AlignmentFromAssumptionsPass::processAssumption(), llvm::RecursivelyDeleteTriviallyDeadInstructions(), llvm::SelectionDAG::RemoveDeadNodes(), llvm::LazyCallGraph::RefSCC::removeInternalRefEdge(), rewriteNonInstructionUses(), llvm::InlinerPass::run(), llvm::LoopVectorizePass::runImpl(), llvm::SUnit::setDepthDirty(), llvm::SUnit::setHeightDirty(), llvm::simplifyLoop(), SimplifyLoopInst(), llvm::LazyCallGraph::RefSCC::switchInternalEdgeToCall(), llvm::LazyCallGraph::RefSCC::switchInternalEdgeToRef(), llvm::JumpThreadingPass::ThreadEdge(), llvm::UnrollLoop(), updateLiveness(), verifyCTRBranch(), and llvm::LazyCallGraph::visitReferences().

template<typename T>
void llvm::SmallVectorImpl< T >::reserve ( size_type  N)
inline

Definition at line 377 of file SmallVector.h.

Referenced by llvm::DwarfCompileUnit::attachRangesOrLowHighPC(), combineX86ShufflesRecursively(), llvm::EHStreamer::computeActionsTable(), llvm::computeDeadSymbols(), llvm::ConstantFoldGetElementPtr(), llvm::ConstantFoldInsertElementInstruction(), llvm::TypedInit::convertInitializerBitRange(), llvm::ListInit::convertInitializerTo(), llvm::TypedInit::convertInitListSlice(), llvm::ListInit::convertInitListSlice(), llvm::ConnectedVNInfoEqClasses::Distribute(), llvm::EHStreamer::emitExceptionTable(), emitIntrinsicWithChainAndGlue(), emitIntrinsicWithGlue(), EvaluateOperation(), ExpandBVWithShuffles(), extractVector(), llvm::FindInsertedValue(), llvm::MachineInstrExpressionTrait::getHashValue(), llvm::TargetTransformInfoImplCRTPBase< AMDGPUTTIImpl >::getIntrinsicCost(), llvm::SelectionDAG::getMergeValues(), llvm::MDNode::getMostGenericRange(), llvm::ScalarEvolution::getMulExpr(), llvm::yaml::ScalarNode::getValue(), llvm::IntEqClasses::grow(), llvm::ScheduleDAGTopologicalSort::InitDAGTopologicalSorting(), llvm::InlineFunction(), llvm::SmallVectorImpl< std::pair< llvm::RelocationValueRef, llvm::RelocationEntry > >::insert(), insertParsePoints(), insertVector(), makeStatepointExplicit(), OptimizeAwayTrappingUsesOfValue(), llvm::slpvectorizer::BoUpSLP::optimizeGatherSequence(), llvm::CallGraph::print(), relocationViaAlloca(), llvm::IndexedMap< unsigned, llvm::VirtReg2IndexFunctor >::reserve(), llvm::ListInit::resolveReferences(), llvm::DagInit::resolveReferences(), llvm::SlotIndexes::runOnMachineFunction(), SimplifyCall(), simplifyShuffleOperandRecursively(), llvm::upgradeInstructionLoopAttachment(), upgradeLoopArgument(), llvm::InstCombiner::visitLandingPadInst(), llvm::WriteBitcodeToFile(), llvm::WriteIndexToFile(), and llvm::LLVMContextImpl::~LLVMContextImpl().

template<typename T>
void llvm::SmallVectorImpl< T >::resize ( size_type  N)
inline

Definition at line 352 of file SmallVector.h.

Referenced by llvm::Calculate(), llvm::BitTracker::RegisterCell::cat(), llvm::CCState::CCState(), llvm::zlib::compress(), llvm::EHStreamer::computeCallSiteTable(), llvm::ConstantFoldGetElementPtr(), llvm::convertUTF8ToUTF16String(), llvm::object::Decompressor::decompress(), llvm::DependenceInfo::depends(), llvm::ConnectedVNInfoEqClasses::Distribute(), llvm::MCWinCOFFStreamer::EmitCOFFSecRel32(), llvm::MCWinCOFFStreamer::EmitCOFFSectionIndex(), llvm::MCObjectStreamer::EmitDTPRel32Value(), llvm::MCObjectStreamer::EmitDTPRel64Value(), llvm::MCObjectStreamer::EmitGPRel32Value(), llvm::MCObjectStreamer::EmitGPRel64Value(), llvm::MCObjectStreamer::EmitTPRel32Value(), llvm::MCObjectStreamer::EmitTPRel64Value(), llvm::MCObjectStreamer::EmitValueImpl(), llvm::MachineTraceMetrics::Ensemble::Ensemble(), llvm::MDGlobalAttachmentMap::erase(), llvm::extractConstantMask(), llvm::UnwindOpcodeAssembler::Finalize(), llvm::SplitEditor::finish(), llvm::SelectionDAG::FoldConstantArithmetic(), llvm::RegsForValue::getCopyFromRegs(), llvm::pdb::DIARawSymbol::getDataBytes(), llvm::pdb::DIADataStream::getItemAtIndex(), llvm::LLVMContext::getMDKindNames(), llvm::MDNode::getMostGenericRange(), llvm::pdb::DIADataStream::getNext(), getNoopInput(), llvm::LLVMContextImpl::getOperandBundleTags(), llvm::DependenceInfo::getSplitIteration(), getTargetConstantBitsFromNode(), getVPermMask(), llvm::TargetSchedModel::init(), llvm::SchedRemainder::init(), llvm::SchedBoundary::init(), llvm::LiveRange::join(), llvm::BlockFrequencyInfoImplBase::LoopData::LoopData(), llvm::TargetLowering::LowerCallTo(), llvm::Regex::match(), llvm::IntervalMapImpl::Path::moveLeft(), llvm::object::ExportEntry::moveNext(), llvm::Triple::normalize(), llvm::RegisterBankInfo::OperandsMapper::OperandsMapper(), llvm::raw_ostream::operator<<(), llvm::DWARFDebugLoc::parse(), llvm::DWARFDebugLocDWO::parse(), llvm::PrettyStackTraceFormat::PrettyStackTraceFormat(), llvm::JumpThreadingPass::ProcessBranchOnPHI(), PropagateConstantsIntoArguments(), llvm::coverage::RawCoverageMappingReader::read(), llvm::SchedBoundary::reset(), llvm::IndexedMap< unsigned, llvm::VirtReg2IndexFunctor >::resize(), llvm::RegisterClassInfo::runOnMachineFunction(), llvm::MachineTraceMetrics::runOnMachineFunction(), llvm::SelectionDAGISel::SelectCodeCommon(), llvm::StructType::setName(), llvm::codeview::TypeRecordBuilder::truncate(), and llvm::zlib::uncompress().

template<typename T>
void llvm::SmallVectorImpl< T >::resize ( size_type  N,
const T NV 
)
inline

Definition at line 365 of file SmallVector.h.

template<typename T>
void llvm::SmallVectorImpl< T >::set_size ( size_type  N)
inline

Set the array size to N, which the current array must have enough capacity for.

This does not construct or destroy any elements in the vector.

Clients can use this in conjunction with capacity() to write past the end of the buffer when they know that more elements are available, and only update the size later. This avoids the cost of value initializing elements which will only be overwritten.

Definition at line 668 of file SmallVector.h.

Referenced by llvm::sys::path::remove_filename(), and llvm::sys::path::replace_extension().

template<typename T >
void llvm::SmallVectorImpl< T >::swap ( SmallVectorImpl< T > &  RHS)

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