LLVM 17.0.0git
|
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory), i.e. More...
#include "llvm/ADT/ArrayRef.h"
Inherited by llvm::MutableArrayRef< uint8_t >, llvm::MutableArrayRef< llvm::coverage::CounterMappingRegion >, llvm::MutableArrayRef< char >, and llvm::MutableArrayRef< T >.
Public Types | |
using | value_type = T |
using | pointer = value_type * |
using | const_pointer = const value_type * |
using | reference = value_type & |
using | const_reference = const value_type & |
using | iterator = const_pointer |
using | const_iterator = const_pointer |
using | reverse_iterator = std::reverse_iterator< iterator > |
using | const_reverse_iterator = std::reverse_iterator< const_iterator > |
using | size_type = size_t |
using | difference_type = ptrdiff_t |
Public Member Functions | |
Constructors | |
ArrayRef ()=default | |
Construct an empty ArrayRef. | |
ArrayRef (std::nullopt_t) | |
Construct an empty ArrayRef from std::nullopt. | |
ArrayRef (const T &OneElt) | |
Construct an ArrayRef from a single element. | |
constexpr | ArrayRef (const T *data, size_t length) |
Construct an ArrayRef from a pointer and length. | |
constexpr | ArrayRef (const T *begin, const T *end) |
Construct an ArrayRef from a range. | |
template<typename U > | |
ArrayRef (const SmallVectorTemplateCommon< T, U > &Vec) | |
Construct an ArrayRef from a SmallVector. | |
template<typename A > | |
ArrayRef (const std::vector< T, A > &Vec) | |
Construct an ArrayRef from a std::vector. | |
template<size_t N> | |
constexpr | ArrayRef (const std::array< T, N > &Arr) |
Construct an ArrayRef from a std::array. | |
template<size_t N> | |
constexpr | ArrayRef (const T(&Arr)[N]) |
Construct an ArrayRef from a C array. | |
constexpr | ArrayRef (const std::initializer_list< T > &Vec) |
Construct an ArrayRef from a std::initializer_list. | |
template<typename U > | |
ArrayRef (const ArrayRef< U * > &A, std::enable_if_t< std::is_convertible< U *const *, T const * >::value > *=nullptr) | |
Construct an ArrayRef<const T*> from ArrayRef<T*>. | |
template<typename U , typename DummyT > | |
ArrayRef (const SmallVectorTemplateCommon< U *, DummyT > &Vec, std::enable_if_t< std::is_convertible< U *const *, T const * >::value > *=nullptr) | |
Construct an ArrayRef<const T*> from a SmallVector<T*>. | |
template<typename U , typename A > | |
ArrayRef (const std::vector< U *, A > &Vec, std::enable_if_t< std::is_convertible< U *const *, T const * >::value > *=nullptr) | |
Construct an ArrayRef<const T*> from std::vector<T*>. | |
Simple Operations | |
iterator | begin () const |
iterator | end () const |
reverse_iterator | rbegin () const |
reverse_iterator | rend () const |
bool | empty () const |
empty - Check if the array is empty. | |
const T * | data () const |
size_t | size () const |
size - Get the array size. | |
const T & | front () const |
front - Get the first element. | |
const T & | back () const |
back - Get the last element. | |
template<typename Allocator > | |
MutableArrayRef< T > | copy (Allocator &A) |
bool | equals (ArrayRef RHS) const |
equals - Check for element-wise equality. | |
ArrayRef< T > | slice (size_t N, size_t M) const |
slice(n, m) - Chop off the first N elements of the array, and keep M elements in the array. | |
ArrayRef< T > | slice (size_t N) const |
slice(n) - Chop off the first N elements of the array. | |
ArrayRef< T > | drop_front (size_t N=1) const |
Drop the first N elements of the array. | |
ArrayRef< T > | drop_back (size_t N=1) const |
Drop the last N elements of the array. | |
template<class PredicateT > | |
ArrayRef< T > | drop_while (PredicateT Pred) const |
Return a copy of *this with the first N elements satisfying the given predicate removed. | |
template<class PredicateT > | |
ArrayRef< T > | drop_until (PredicateT Pred) const |
Return a copy of *this with the first N elements not satisfying the given predicate removed. | |
ArrayRef< T > | take_front (size_t N=1) const |
Return a copy of *this with only the first N elements. | |
ArrayRef< T > | take_back (size_t N=1) const |
Return a copy of *this with only the last N elements. | |
template<class PredicateT > | |
ArrayRef< T > | take_while (PredicateT Pred) const |
Return the first N elements of this Array that satisfy the given predicate. | |
template<class PredicateT > | |
ArrayRef< T > | take_until (PredicateT Pred) const |
Return the first N elements of this Array that don't satisfy the given predicate. | |
Operator Overloads | |
const T & | operator[] (size_t Index) const |
template<typename U > | |
std::enable_if_t< std::is_same< U, T >::value, ArrayRef< T > > & | operator= (U &&Temporary)=delete |
Disallow accidental assignment from a temporary. | |
template<typename U > | |
std::enable_if_t< std::is_same< U, T >::value, ArrayRef< T > > & | operator= (std::initializer_list< U >)=delete |
Disallow accidental assignment from a temporary. | |
Expensive Operations | |
std::vector< T > | vec () const |
Conversion operators | |
operator std::vector< T > () const | |
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory), i.e.
a start pointer and a length. It allows various APIs to take consecutive elements easily and conveniently.
This class does not own the underlying data, it is expected to be used in situations where the data resides in some other buffer, whose lifetime extends past that of the ArrayRef. For this reason, it is not in general safe to store an ArrayRef.
This is intended to be trivially copyable, so it should be passed by value.
Definition at line 41 of file ArrayRef.h.
using llvm::ArrayRef< T >::const_iterator = const_pointer |
Definition at line 49 of file ArrayRef.h.
using llvm::ArrayRef< T >::const_pointer = const value_type * |
Definition at line 45 of file ArrayRef.h.
using llvm::ArrayRef< T >::const_reference = const value_type & |
Definition at line 47 of file ArrayRef.h.
using llvm::ArrayRef< T >::const_reverse_iterator = std::reverse_iterator<const_iterator> |
Definition at line 51 of file ArrayRef.h.
using llvm::ArrayRef< T >::difference_type = ptrdiff_t |
Definition at line 53 of file ArrayRef.h.
using llvm::ArrayRef< T >::iterator = const_pointer |
Definition at line 48 of file ArrayRef.h.
using llvm::ArrayRef< T >::pointer = value_type * |
Definition at line 44 of file ArrayRef.h.
using llvm::ArrayRef< T >::reference = value_type & |
Definition at line 46 of file ArrayRef.h.
using llvm::ArrayRef< T >::reverse_iterator = std::reverse_iterator<iterator> |
Definition at line 50 of file ArrayRef.h.
using llvm::ArrayRef< T >::size_type = size_t |
Definition at line 52 of file ArrayRef.h.
using llvm::ArrayRef< T >::value_type = T |
Definition at line 43 of file ArrayRef.h.
|
default |
Construct an empty ArrayRef.
|
inline |
Construct an empty ArrayRef from std::nullopt.
Definition at line 70 of file ArrayRef.h.
|
inline |
Construct an ArrayRef from a single element.
Definition at line 73 of file ArrayRef.h.
References llvm::Length.
|
inlineconstexpr |
Construct an ArrayRef from a pointer and length.
Definition at line 77 of file ArrayRef.h.
References llvm::Length.
|
inlineconstexpr |
Construct an ArrayRef from a range.
Definition at line 81 of file ArrayRef.h.
References llvm::Length.
|
inline |
Construct an ArrayRef from a SmallVector.
This is templated in order to avoid instantiating SmallVectorTemplateCommon<T> whenever we copy-construct an ArrayRef.
Definition at line 88 of file ArrayRef.h.
References llvm::Length, and llvm::size().
|
inline |
Construct an ArrayRef from a std::vector.
Definition at line 94 of file ArrayRef.h.
References llvm::Length, and llvm::size().
|
inlineconstexpr |
Construct an ArrayRef from a std::array.
Definition at line 99 of file ArrayRef.h.
References llvm::Length.
|
inlineconstexpr |
Construct an ArrayRef from a C array.
Definition at line 104 of file ArrayRef.h.
References llvm::Length.
|
inlineconstexpr |
Construct an ArrayRef from a std::initializer_list.
Definition at line 114 of file ArrayRef.h.
References llvm::Length, and llvm::size().
|
inline |
Construct an ArrayRef<const T*> from ArrayRef<T*>.
This uses SFINAE to ensure that only ArrayRefs of pointers can be converted.
Definition at line 124 of file ArrayRef.h.
References llvm::Length, and llvm::size().
|
inline |
Construct an ArrayRef<const T*> from a SmallVector<T*>.
This is templated in order to avoid instantiating SmallVectorTemplateCommon<T> whenever we copy-construct an ArrayRef.
Definition at line 133 of file ArrayRef.h.
References llvm::Length, and llvm::size().
|
inline |
Construct an ArrayRef<const T*> from std::vector<T*>.
This uses SFINAE to ensure that only vectors of pointers can be converted.
Definition at line 142 of file ArrayRef.h.
References llvm::Length, and llvm::size().
|
inline |
back - Get the last element.
Definition at line 172 of file ArrayRef.h.
References assert(), Data, and llvm::Length.
Referenced by llvm::AttributeList::addParamAttribute(), llvm::DIExpression::appendToStack(), llvm::RandomIRBuilder::connectToSink(), llvm::object::ELFFile< ELFT >::dynamicEntries(), llvm::Record::getDirectSuperClasses(), isSwitchDense(), llvm::RandomIRBuilder::newSink(), llvm::recognizeBSwapOrBitReverseIdiom(), llvm::orc::shared::runDeallocActions(), simplifyGEPInst(), simplifyInstructionWithOperands(), and llvm::slpvectorizer::BoUpSLP::vectorizeTree().
|
inline |
Definition at line 151 of file ArrayRef.h.
References Data.
Referenced by llvm::lto::LTO::add(), llvm::SubtargetFeatures::addFeaturesVector(), addMask(), llvm::DebugLocEntry::addValues(), llvm::DIExpression::append(), llvm::DIExpression::appendOpsToArg(), llvm::DIExpression::appendToStack(), llvm::DominatorTreeBase< NodeT, IsPostDom >::applyUpdates(), llvm::MachineIRBuilder::buildBuildVector(), llvm::MachineIRBuilder::buildBuildVectorTrunc(), llvm::MachineIRBuilder::buildConcatVectors(), buildCopyFromRegs(), buildFixItLine(), llvm::MachineIRBuilder::buildMergeLikeInstr(), llvm::MachineIRBuilder::buildMergeValues(), BuildSubAggregate(), llvm::MachineIRBuilder::buildUnmerge(), llvm::Interpreter::callFunction(), llvm::LiveIntervals::checkRegMaskInterference(), llvm::collectPGOFuncNameStrings(), combineShuffleOfSplatVal(), combineShuffleToZeroExtendVectorInReg(), combineX86ShuffleChainWithExtract(), combineX86ShufflesRecursively(), llvm::ComputeLinearIndex(), llvm::concatenateVectors(), llvm::sys::UnicodeCharSet::contains(), llvm::convertUTF16ToUTF8String(), llvm::convertUTF32ToUTF8String(), CreateGCRelocates(), llvm::VectorBuilder::createVectorInstruction(), llvm::DeleteDeadBlocks(), llvm::discoverAndMapSubloop(), llvm::Instruction::dropUnknownNonDebugMetadata(), llvm::objcopy::wasm::dumpSectionToFile(), llvm::DIExpression::elements_begin(), llvm::MCDwarfFrameEmitter::Emit(), llvm::BitstreamWriter::emitBlob(), llvm::AAMDNodes::extendToTBAA(), llvm::FindInsertedValue(), foldGEPOfGEP(), llvm::CondOpInit::get(), llvm::DagInit::get(), llvm::AttributeList::get(), llvm::RecordRecTy::get(), llvm::gsym::GsymReader::getAddressOffsetIndex(), getAVX512Node(), llvm::BitcodeModule::getBuffer(), llvm::StructLayout::getElementContainingOffset(), getFauxShuffleMask(), llvm::ConstantExprKeyType::getHash(), llvm::SelectionDAG::getNode(), getNoopInput(), llvm::slpvectorizer::BoUpSLP::LookAheadHeuristics::getShallowScore(), llvm::getShuffleMaskWithWidestElts(), llvm::ConstantExpr::getWithOperands(), llvm::hash_value(), llvm::CallGraphSCC::initialize(), llvm::RegPressureTracker::initLiveThru(), llvm::sroa::AllocaSlices::insert(), llvm::AppendingBinaryByteStream::insert(), insertCandidatesWithPendingInjections(), llvm::IntrinsicCostAttributes::IntrinsicCostAttributes(), llvm::LiveRange::isLiveAtIndexes(), isSaveReachableThroughClean(), isSubset(), llvm::libDriverMain(), llvm::coverage::CoverageMapping::load(), llvm::Intrinsic::lookupLLVMIntrinsicByName(), lowerV8I16GeneralSingleInputShuffle(), llvm::HexagonTargetLowering::LowerVECTOR_SHUFFLE(), llvm::makePostTransformationMetadata(), llvm::codeview::CodeViewRecordIO::mapByteVectorTail(), mergeVectorRegsToResultRegs(), llvm::object::ExportEntry::moveNext(), llvm::object::MachORebaseEntry::moveNext(), llvm::object::MachOBindEntry::moveNext(), llvm::object::ExportEntry::nodeOffset(), llvm::opt::OptTable::ParseArgs(), llvm::CallBase::populateBundleOperandInfos(), ProfileCondOpInit(), ProfileDagInit(), llvm::detail::BCRecordCoding< BCArray< ElementTy > >::read(), llvm::BinaryStreamReader::readCString(), llvm::BinaryStreamReader::readFixedString(), removeUnusedBlocksFromParent(), llvm::LiveIntervals::repairIntervalsInRange(), llvm::SDDbgValue::SDDbgValue(), llvm::MachineFunction::setCallSiteLandingPad(), setCoroInfo(), llvm::X86MachineFunctionInfo::setPreallocatedArgOffsets(), llvm::setProfMetadata(), llvm::gsym::GsymCreator::setUUID(), stackFrameIncludesInlinedCallStack(), llvm::SelectionDAG::UpdateNodeOperands(), UpdatePHINodes(), shuffles::vdealvdd(), llvm::misexpect::verifyMisExpect(), shuffles::vshuffvdd(), llvm::MemorySSAUpdater::wireOldPredecessorsToNewImmediatePredecessor(), and writeToResolutionFile().
|
inline |
Definition at line 178 of file ArrayRef.h.
References A, and llvm::Length.
|
inline |
Definition at line 160 of file ArrayRef.h.
References Data.
Referenced by llvm::codeview::DebugChecksumsSubsection::addChecksum(), analyzeHeader(), llvm::objcopy::elf::SectionTableRef::begin(), llvm::orc::SelfExecutorProcessControl::callWrapperAsync(), llvm::ConstantFoldGetElementPtr(), llvm::StackMapParser< Endianness >::constants_end(), llvm::logicalview::LVBinaryReader::createInstructions(), llvm::codeview::discoverTypeIndices(), llvm::codeview::discoverTypeIndicesInSymbol(), llvm::object::doesXCOFFTracebackTableBegin(), dumpLocationExpr(), llvm::object::ELFFile< ELFT >::dynamicEntries(), eat12Bytes(), eatBytes(), llvm::DwarfDebug::emitDebugLocEntry(), llvm::objcopy::elf::SectionTableRef::end(), llvm::SimpleBitstreamCursor::fillCurWord(), llvm::X86_MC::findX86_64PltEntries(), llvm::X86_MC::findX86PltEntries(), llvm::codeview::forEachCodeViewRecord(), llvm::codeview::detail::GuidAdapter::format(), llvm::StackMapParser< Endianness >::functions_end(), llvm::ConstantDataArray::get(), llvm::ConstantDataVector::get(), llvm::gsym::GsymReader::getAddrOffsets(), llvm::codeview::getBytesAsCharacters(), llvm::StackMapParser< Endianness >::getConstant(), llvm::object::ResourceSectionRef::getContents(), llvm::object::COFFObjectFile::getDebugPDBInfo(), llvm::object::Elf_Note_Impl< ELFT >::getDescAsStringRef(), getExpressionFrameOffset(), llvm::ConstantDataArray::getFP(), llvm::ConstantDataVector::getFP(), llvm::StackMapParser< Endianness >::getFunction(), llvm::ConstantExpr::getGetElementPtr(), llvm::DenseMapInfo< ArrayRef< T >, void >::getHashValue(), M68kDisassembler::getInstruction(), getLEB128(), llvm::SimpleBitstreamCursor::getPointerToByte(), llvm::StackMapParser< Endianness >::getRecord(), llvm::object::MachOObjectFile::getSectionFinalSegmentName(), llvm::object::MachOObjectFile::getSectionName(), llvm::object::ResourceSectionRef::getTableEntry(), getUUID(), llvm::MipsTargetLowering::HandleByVal(), llvm::pdb::hashStringV2(), llvm::codeview::CVRecord< Kind >::kind(), llvm::Function::lookupIntrinsicID(), llvm::HexagonTargetLowering::LowerVECTOR_SHUFFLE(), llvm::codeview::CodeViewRecordIO::mapGuid(), llvm::object::MachOChainedFixupEntry::moveNext(), nextLEB(), llvm::object::MinidumpFile::MemoryInfoIterator::operator*(), llvm::object::MachOBindEntry::operator==(), llvm::object::MachORebaseEntry::operator==(), parseImmediate(), llvm::BinaryStreamReader::readArray(), llvm::BinaryStreamReader::readInteger(), llvm::BinaryStreamReader::readObject(), llvm::orc::ExecutionSession::runJITDispatchHandler(), llvm::orc::FDSimpleRemoteEPCTransport::sendMessage(), llvm::BinaryByteStream::str(), llvm::codeview::CVRecord< Kind >::str_data(), llvm::yaml::BinaryRef::writeAsBinary(), llvm::msf::WritableMappedBlockStream::writeBytes(), llvm::MutableBinaryByteStream::writeBytes(), llvm::AppendingBinaryByteStream::writeBytes(), and writeWithCommas().
|
inline |
Drop the last N
elements of the array.
Definition at line 208 of file ArrayRef.h.
References assert(), N, and llvm::size().
Referenced by llvm::DIExpression::appendToStack(), EltsFromConsecutiveLoads(), llvm::Record::getDirectSuperClasses(), llvm::sampleprof::SampleContext::IsPrefixOf(), llvm::recognizeBSwapOrBitReverseIdiom(), llvm::orc::shared::runDeallocActions(), simplifyGEPInst(), and simplifyInstructionWithOperands().
|
inline |
Drop the first N
elements of the array.
Definition at line 202 of file ArrayRef.h.
References assert(), N, and llvm::size().
Referenced by buildCopyFromRegs(), llvm::coro::buildCoroutineFrame(), clusterSortPtrAccesses(), combineShuffleToZeroExtendVectorInReg(), llvm::codeview::CVRecord< Kind >::content(), llvm::codeview::discoverTypeIndices(), llvm::codeview::discoverTypeIndicesInSymbol(), llvm::codeview::forEachCodeViewRecord(), llvm::CodeViewYAML::detail::UnknownSymbolRecord::fromCodeViewSymbol(), llvm::opt::GenericOptTable::GenericOptTable(), llvm::fuzzerop::gepDescriptor(), llvm::object::COFFObjectFile::getDebugPDBInfo(), llvm::codeview::VFTableRecord::getMethodNames(), llvm::codeview::GloballyHashedType::hashType(), llvm::pdb::UDTLayoutBase::initializeChildren(), llvm::object::MinidumpFile::MemoryInfoIterator::operator++(), resolveTypeIndexReferences(), llvm::sortPtrAccesses(), splitAsyncCoroutine(), llvm::pdb::typesetItemList(), and writeWithCommas().
|
inline |
Return a copy of *this with the first N elements not satisfying the given predicate removed.
Definition at line 221 of file ArrayRef.h.
References llvm::find_if().
|
inline |
Return a copy of *this with the first N elements satisfying the given predicate removed.
Definition at line 215 of file ArrayRef.h.
References llvm::find_if_not().
|
inline |
empty - Check if the array is empty.
Definition at line 158 of file ArrayRef.h.
References llvm::Length.
Referenced by llvm::orc::IRSymbolMapper::add(), addBasicBlockMetadata(), llvm::codeview::DebugChecksumsSubsection::addChecksum(), addMask(), llvm::LazyCallGraph::addSplitRefRecursiveFunctions(), llvm::pdb::DbiModuleDescriptorBuilder::addSymbolsInBulk(), llvm::pdb::TpiStreamBuilder::addTypeRecords(), llvm::RegAllocBase::allocatePhysRegs(), llvm::DIExpression::append(), llvm::DIExpression::appendToStack(), llvm::DominatorTreeBase< NodeT, IsPostDom >::applyUpdates(), llvm::AttributeListImpl::AttributeListImpl(), buildExtractionBlockSet(), buildFixItLine(), llvm::VPlanSlp::buildGraph(), llvm::MachineIRBuilder::buildInstr(), buildShuffleEntryMask(), canClobberPhysRegDefs(), canClobberReachingPhysRegUse(), canonicalizeShuffleMaskWithHorizOp(), llvm::cloneAndAdaptNoAliasScopes(), llvm::MachineInstr::cloneMergedMemRefs(), llvm::collectPGOFuncNameStrings(), llvm::CombinationGenerator< choice_type, choices_storage_type, variable_smallsize >::CombinationGenerator(), combineX86ShuffleChain(), combineX86ShufflesRecursively(), llvm::MDNodeOpsKey::compareOps(), computeCalleeSaveRegisterPairs(), computeExcessPressureDelta(), llvm::ConstantFoldExtractValueInstruction(), llvm::ConstantFoldGetElementPtr(), llvm::ConstantFoldInsertValueInstruction(), llvm::convertUTF16ToUTF8String(), llvm::convertUTF32ToUTF8String(), llvm::Instruction::copyMetadata(), llvm::coverage::BinaryCoverageReader::create(), llvm::IRBuilderBase::CreateAnd(), llvm::IRBuilderBase::CreateIntrinsic(), llvm::IRBuilderBase::CreateLogicalOr(), llvm::IRBuilderBase::CreateOr(), llvm::objcopy::deepWriteArchive(), llvm::FileCheckPatternContext::defineCmdlineVariables(), llvm::doesNotNeedToSchedule(), llvm::coverage::CounterMappingContext::dump(), llvm::object::ELFFile< ELFT >::dynamicEntries(), llvm::CodeViewContext::encodeInlineLineTable(), llvm::object::MachOObjectFile::exports(), llvm::FindInsertedValue(), foldCONCAT_VECTORS(), llvm::codeview::forEachCodeViewRecord(), llvm::ARMAsmBackendDarwin::generateCompactUnwindEncoding(), llvm::RecordRecTy::get(), getBuildDwordsVector(), llvm::Intrinsic::getDeclaration(), llvm::orc::JITDylib::getDFSLinkOrder(), llvm::Record::getDirectSuperClasses(), getExpressionFrameOffset(), getFeatures(), getIndexedTypeInternal(), getIntrinsicNameImpl(), getMaxCalleeSavedReg(), llvm::DILocation::getMergedLocations(), getOpenFileImpl(), getOrSelfReference(), llvm::object::MachOObjectFile::getSegmentContents(), llvm::slpvectorizer::BoUpSLP::LookAheadHeuristics::getShallowScore(), llvm::X86TTIImpl::getShuffleCost(), llvm::codeview::VFTableShapeRecord::getSlots(), llvm::Intrinsic::getType(), llvm::DFAPacketizer::getUsedResources(), getUUID(), llvm::CallLowering::handleAssignments(), llvm::SelectionDAGBuilder::handleDebugValue(), llvm::ScheduleDAGMILive::initRegPressure(), llvm::LanaiInstrInfo::insertBranch(), insertLifetimeMarkersSurroundingCall(), llvm::codeview::GlobalTypeTableBuilder::insertRecordAs(), insertUseHolderAfter(), isInBoundsIndices(), llvm::GCNTTIImpl::isInlineAsmSourceOfDivergence(), llvm::coverage::LineCoverageStats::LineCoverageStats(), llvm::coverage::CoverageMapping::load(), llvm::LoadAndStorePromoter::LoadAndStorePromoter(), llvm::lowerGlobalIFuncUsersAsGlobalCtor(), llvm::AArch64TargetLowering::lowerInterleavedLoad(), llvm::ARMTargetLowering::lowerInterleavedLoad(), llvm::X86TargetLowering::lowerInterleavedLoad(), llvm::AMDGPUCallLowering::lowerReturn(), llvm::ARMCallLowering::lowerReturn(), llvm::MipsCallLowering::lowerReturn(), llvm::X86CallLowering::lowerReturn(), llvm::AArch64CallLowering::lowerReturn(), llvm::M68kCallLowering::lowerReturn(), llvm::PPCCallLowering::lowerReturn(), llvm::RISCVCallLowering::lowerReturn(), lowerV8I16GeneralSingleInputShuffle(), llvm::fuzzerop::matchFirstLengthWAnyType(), llvm::fuzzerop::matchFirstType(), matchIntrinsicType(), llvm::Intrinsic::matchIntrinsicVarArg(), llvm::fuzzerop::matchScalarOfFirstType(), llvm::raw_ostream::operator<<(), llvm::operator<<(), llvm::performOptimizedStructLayout(), llvm::PrintMessage(), llvm::PrologEpilogSGPRSpillBuilder::PrologEpilogSGPRSpillBuilder(), llvm::PromoteMemToReg(), llvm::propagateMetadata(), llvm::detail::BCRecordCoding< ElementTy, Fields >::read(), llvm::recognizeBSwapOrBitReverseIdiom(), llvm::slpvectorizer::BoUpSLP::reorderBottomToTop(), llvm::slpvectorizer::BoUpSLP::reorderTopToBottom(), resolveTypeIndexReferences(), llvm::SystemZELFFrameLowering::restoreCalleeSavedRegisters(), llvm::SystemZXPLINKFrameLowering::restoreCalleeSavedRegisters(), llvm::ARMFrameLowering::restoreCalleeSavedRegisters(), llvm::Thumb1FrameLowering::restoreCalleeSavedRegisters(), llvm::AVRFrameLowering::restoreCalleeSavedRegisters(), llvm::CSKYFrameLowering::restoreCalleeSavedRegisters(), llvm::MSP430FrameLowering::restoreCalleeSavedRegisters(), llvm::RISCVFrameLowering::restoreCalleeSavedRegisters(), llvm::X86FrameLowering::restoreCalleeSavedRegisters(), llvm::SIRegisterInfo::restoreSGPR(), llvm::SanitizerBinaryMetadataPass::run(), llvm::orc::shared::runDeallocActions(), llvm::MCJIT::runFunction(), llvm::MachineInstr::setMemRefs(), llvm::SelectionDAG::setNodeMemRefs(), llvm::VFABI::setVectorVariantNames(), llvm::SGPRSpillBuilder::SGPRSpillBuilder(), llvm::SIInstrInfo::shouldClusterMemOps(), simplifyGEPInst(), llvm::SystemZELFFrameLowering::spillCalleeSavedRegisters(), llvm::SystemZXPLINKFrameLowering::spillCalleeSavedRegisters(), llvm::ARMFrameLowering::spillCalleeSavedRegisters(), llvm::Thumb1FrameLowering::spillCalleeSavedRegisters(), llvm::AVRFrameLowering::spillCalleeSavedRegisters(), llvm::CSKYFrameLowering::spillCalleeSavedRegisters(), llvm::LoongArchFrameLowering::spillCalleeSavedRegisters(), llvm::MSP430FrameLowering::spillCalleeSavedRegisters(), llvm::RISCVFrameLowering::spillCalleeSavedRegisters(), llvm::XCoreFrameLowering::spillCalleeSavedRegisters(), llvm::SIRegisterInfo::spillSGPR(), SplitBlockPredecessorsImpl(), llvm::splitCodeGen(), llvm::CodeViewYAML::toCodeViewSubsectionList(), llvm::pdb::typesetItemList(), llvm::MemorySSAUpdater::wireOldPredecessorsToNewImmediatePredecessor(), llvm::MutableBinaryByteStream::writeBytes(), llvm::AppendingBinaryByteStream::writeBytes(), and writeWithCommas().
|
inline |
Definition at line 152 of file ArrayRef.h.
References Data, and llvm::Length.
Referenced by llvm::lto::LTO::add(), llvm::SubtargetFeatures::addFeaturesVector(), addMask(), llvm::DebugLocEntry::addValues(), llvm::DIExpression::append(), llvm::DIExpression::appendOpsToArg(), llvm::DIExpression::appendToStack(), llvm::DominatorTreeBase< NodeT, IsPostDom >::applyUpdates(), llvm::ELFAttrs::attrTypeAsString(), llvm::ELFAttrs::attrTypeFromString(), llvm::MachineIRBuilder::buildBuildVector(), llvm::MachineIRBuilder::buildBuildVectorTrunc(), llvm::MachineIRBuilder::buildConcatVectors(), buildCopyFromRegs(), buildFixItLine(), llvm::MachineIRBuilder::buildMergeLikeInstr(), llvm::MachineIRBuilder::buildMergeValues(), BuildSubAggregate(), llvm::MachineIRBuilder::buildUnmerge(), llvm::Interpreter::callFunction(), llvm::LiveIntervals::checkRegMaskInterference(), llvm::collectPGOFuncNameStrings(), combineShuffleOfSplatVal(), combineShuffleToZeroExtendVectorInReg(), combineX86ShuffleChainWithExtract(), combineX86ShufflesRecursively(), llvm::ComputeLinearIndex(), llvm::concatenateVectors(), llvm::sys::UnicodeCharSet::contains(), llvm::convertUTF16ToUTF8String(), llvm::convertUTF32ToUTF8String(), CreateGCRelocates(), llvm::VectorBuilder::createVectorInstruction(), llvm::DeleteDeadBlocks(), llvm::discoverAndMapSubloop(), llvm::Instruction::dropUnknownNonDebugMetadata(), llvm::objcopy::wasm::dumpSectionToFile(), llvm::DIExpression::elements_end(), llvm::MCDwarfFrameEmitter::Emit(), llvm::BitstreamWriter::emitBlob(), llvm::AAMDNodes::extendToTBAA(), llvm::FindInsertedValue(), foldGEPOfGEP(), llvm::CondOpInit::get(), llvm::DagInit::get(), llvm::RecordRecTy::get(), llvm::gsym::GsymReader::getAddressOffsetIndex(), getAVX512Node(), llvm::StructLayout::getElementContainingOffset(), getExpressionFrameOffset(), getFauxShuffleMask(), llvm::getFMA3Group(), llvm::ConstantExprKeyType::getHash(), getLEB128(), llvm::SelectionDAG::getNode(), getNoopInput(), getRegLanes(), llvm::slpvectorizer::BoUpSLP::LookAheadHeuristics::getShallowScore(), llvm::getShuffleMaskWithWidestElts(), llvm::ConstantExpr::getWithOperands(), llvm::hash_value(), llvm::pdb::hashStringV1(), llvm::CallGraphSCC::initialize(), llvm::RegPressureTracker::initLiveThru(), llvm::sroa::AllocaSlices::insert(), llvm::AppendingBinaryByteStream::insert(), insertCandidatesWithPendingInjections(), llvm::IntrinsicCostAttributes::IntrinsicCostAttributes(), llvm::MCSubtargetInfo::isCPUStringValid(), isFixedVectorShuffle(), llvm::LiveRange::isLiveAtIndexes(), isSaveReachableThroughClean(), isSubset(), llvm::libDriverMain(), llvm::coverage::CoverageMapping::load(), Lookup(), lookupFoldTableImpl(), llvm::Intrinsic::lookupLLVMIntrinsicByName(), lowerV8I16GeneralSingleInputShuffle(), llvm::HexagonTargetLowering::LowerVECTOR_SHUFFLE(), llvm::makePostTransformationMetadata(), llvm::codeview::CodeViewRecordIO::mapByteVectorTail(), mergeVectorRegsToResultRegs(), llvm::object::MachORebaseEntry::moveNext(), llvm::object::MachOBindEntry::moveNext(), llvm::coverage::FunctionRecordIterator::operator++(), llvm::opt::OptTable::ParseArgs(), llvm::CallBase::populateBundleOperandInfos(), ProfileCondOpInit(), ProfileDagInit(), llvm::detail::BCRecordCoding< BCArray< ElementTy > >::read(), removeUnusedBlocksFromParent(), llvm::LiveIntervals::repairIntervalsInRange(), llvm::SDDbgValue::SDDbgValue(), llvm::MachineFunction::setCallSiteLandingPad(), setCoroInfo(), llvm::X86MachineFunctionInfo::setPreallocatedArgOffsets(), llvm::setProfMetadata(), llvm::gsym::GsymCreator::setUUID(), stackFrameIncludesInlinedCallStack(), llvm::DbgValueHistoryMap::trimLocationRanges(), llvm::SelectionDAG::UpdateNodeOperands(), UpdatePHINodes(), shuffles::vdealvdd(), llvm::misexpect::verifyMisExpect(), shuffles::vshuffvdd(), llvm::MemorySSAUpdater::wireOldPredecessorsToNewImmediatePredecessor(), and writeToResolutionFile().
equals - Check for element-wise equality.
Definition at line 185 of file ArrayRef.h.
References llvm::Length, and RHS.
Referenced by llvm::operator==().
|
inline |
front - Get the first element.
Definition at line 166 of file ArrayRef.h.
References assert(), and Data.
Referenced by llvm::slpvectorizer::BoUpSLP::ShuffleCostEstimator::adjustExtracts(), llvm::RegAllocBase::allocatePhysRegs(), buildCopyToRegs(), canSinkInstructions(), DecodeFixedType(), llvm::objcopy::deepWriteArchive(), llvm::CodeViewContext::encodeInlineLineTable(), llvm::InstCombinerImpl::foldAggregateConstructionIntoAggregateReuse(), llvm::slpvectorizer::BoUpSLP::ShuffleCostEstimator::gather(), llvm::orc::JITDylib::getDFSLinkOrder(), llvm::codeview::VFTableRecord::getName(), llvm::DFAPacketizer::getUsedResources(), isSwitchDense(), llvm::coverage::LineCoverageStats::LineCoverageStats(), llvm::coverage::CoverageMapping::load(), matchIntrinsicType(), llvm::Intrinsic::matchIntrinsicVarArg(), memOpsHaveSameBasePtr(), MergeCompatibleInvokesImpl(), llvm::PrintMessage(), llvm::detail::BCRecordCoding< ElementTy >::read(), llvm::detail::BCRecordCoding< ElementTy, Fields >::read(), llvm::slpvectorizer::BoUpSLP::reorderBottomToTop(), llvm::slpvectorizer::BoUpSLP::reorderTopToBottom(), llvm::AArch64InstrInfo::shouldClusterMemOps(), llvm::SIInstrInfo::shouldClusterMemOps(), llvm::PPCInstrInfo::shouldClusterMemOps(), llvm::slpvectorizer::BoUpSLP::vectorizeTree(), and llvm::widenShuffleMaskElts().
|
inline |
Definition at line 285 of file ArrayRef.h.
|
delete |
Disallow accidental assignment from a temporary.
The declaration here is extra complicated so that "arrayRef = {}" continues to select the move assignment operator.
|
delete |
Disallow accidental assignment from a temporary.
The declaration here is extra complicated so that "arrayRef = {}" continues to select the move assignment operator.
Referenced by llvm::OwningArrayRef< T >::operator=().
|
inline |
Definition at line 254 of file ArrayRef.h.
References assert(), Data, Index, and llvm::Length.
|
inline |
Definition at line 154 of file ArrayRef.h.
Referenced by getNoopInput(), llvm::ScheduleDAGMI::initQueues(), and rematerializeChain().
|
inline |
Definition at line 155 of file ArrayRef.h.
Referenced by getNoopInput(), llvm::ScheduleDAGMI::initQueues(), and rematerializeChain().
|
inline |
size - Get the array size.
Definition at line 163 of file ArrayRef.h.
References llvm::Length.
Referenced by llvm::codeview::DebugChecksumsSubsection::addChecksum(), llvm::DwarfCompileUnit::addLocationAttribute(), addMask(), addOperands(), llvm::gsym::GsymReader::addressForIndex(), addSaveRestoreRegs(), llvm::pdb::DbiModuleDescriptorBuilder::addSymbolsInBulk(), llvm::pdb::TpiStreamBuilder::addTypeRecords(), llvm::DbgVariableIntrinsic::addVariableLocationOps(), llvm::slpvectorizer::BoUpSLP::ShuffleCostEstimator::adjustExtracts(), llvm::CCState::AllocateReg(), llvm::CCState::AllocateRegBlock(), allocateSGPR32InputImpl(), allocateVGPR32Input(), allSameBlock(), allSameType(), llvm::analyzeArguments(), analyzeHeader(), llvm::CombinerHelper::applyCombineShuffleVector(), llvm::DomTreeUpdater::applyUpdates(), llvm::SimpleBitstreamCursor::AtEndOfStream(), llvm::MachineIRBuilder::buildBuildVectorConstant(), buildClonedLoopBlocks(), buildClonedLoops(), buildCopyFromRegs(), buildCopyToRegs(), buildFatArchList(), llvm::coro::Shape::buildFrom(), llvm::CSEMIRBuilder::buildInstr(), llvm::MachineIRBuilder::buildInstr(), llvm::BuildMI(), llvm::AMDGPULegalizerInfo::buildMultiply(), buildNew(), buildOrChain(), buildShuffleEntryMask(), llvm::LoopVectorizationCostModel::calculateRegisterUsage(), llvm::Interpreter::callFunction(), llvm::orc::SelfExecutorProcessControl::callWrapperAsync(), llvm::SystemZInstrInfo::canInsertSelect(), canonicalizeShuffleMaskWithHorizOp(), llvm::SimpleBitstreamCursor::canSkipToPos(), canVectorizeLoads(), CC_AIX(), CC_ARM_AAPCS_Custom_Aggregate(), checkARM64Instructions(), CheckForLiveRegDefMasked(), checkOperandCount(), llvm::cleanUpTempFiles(), llvm::cloneAndAdaptNoAliasScopes(), llvm::MachineInstr::cloneMergedMemRefs(), clusterSortPtrAccesses(), llvm::FunctionComparator::cmpOperations(), coerceArguments(), CollectAddOperandsWithScales(), llvm::collectPGOFuncNameStrings(), combineConcatVectorOfShuffleAndItsOperands(), combineConcatVectorOps(), combineShuffleOfSplatVal(), combineShuffleToZeroExtendVectorInReg(), llvm::TargetLowering::DAGCombinerInfo::CombineTo(), combineX86ShuffleChain(), combineX86ShuffleChainWithExtract(), combineX86ShufflesConstants(), combineX86ShufflesRecursively(), CompareSCEVComplexity(), llvm::IRSimilarity::IRSimilarityCandidate::compareStructure(), computeCalleeSaveRegisterPairs(), computeExcessPressureDelta(), computeIndirectRegIndex(), llvm::SelectionDAG::computeKnownBits(), llvm::ComputeMappedEditDistance(), computeMaxPressureDelta(), llvm::SelectionDAG::ComputeNumSignBits(), llvm::mca::computeProcResourceMasks(), llvm::concatenateVectors(), llvm::ConstantFoldGetElementPtr(), llvm::ConstraintSystem::ConstraintSystem(), llvm::detail::IEEEFloat::convertToInteger(), llvm::convertUTF16ToUTF8String(), llvm::convertUTF32ToUTF8String(), llvm::AArch64InstrInfo::copyGPRRegTuple(), llvm::GlobalObject::copyMetadata(), llvm::SIInstrInfo::copyPhysReg(), llvm::AArch64InstrInfo::copyPhysRegTuple(), llvm::CallInst::Create(), llvm::CallBrInst::Create(), llvm::InvokeInst::Create(), llvm::GetElementPtrInst::Create(), llvm::GetElementPtrConstantExpr::Create(), llvm::IRBuilderBase::CreateAnd(), llvm::MDBuilder::createBranchWeights(), CreateGCRelocates(), createIndexMap(), llvm::IRBuilderBase::CreateLogicalOr(), llvm::IRBuilderBase::CreateNAryOp(), llvm::IRBuilderBase::CreateOr(), llvm::createPHIsForSplitLoopExit(), llvm::OpenMPIRBuilder::createReductions(), llvm::createSanitizerCtorAndInitFunctions(), llvm::OpenMPIRBuilder::createSections(), llvm::MDBuilder::createTBAAStructNode(), llvm::MDBuilder::createTBAATypeNode(), createTuple(), llvm::VectorBuilder::createVectorInstruction(), LiveDebugValues::DbgValue::DbgValue(), DecodeIITType(), llvm::AMDGPUDisassembler::decodeKernelDescriptor(), llvm::AMDGPUDisassembler::decodeKernelDescriptorDirective(), llvm::AMDGPUDisassembler::decodeLiteralConstant(), llvm::DecodePSHUFBMask(), DecodeRegisterClass(), llvm::DecodeVPERMIL2PMask(), llvm::DecodeVPERMILPMask(), llvm::DecodeVPERMV3Mask(), llvm::DecodeVPERMVMask(), llvm::DecodeVPPERMMask(), llvm::object::Decompressor::decompress(), llvm::DeleteDeadBlocks(), llvm::GCNIterativeScheduler::detachSchedule(), llvm::object::doesXCOFFTracebackTableBegin(), dumpLocationExpr(), llvm::dumpRegSetPressure(), llvm::objcopy::coff::dumpSection(), llvm::objcopy::wasm::dumpSectionToFile(), eat12Bytes(), eatBytes(), EltsFromConsecutiveLoads(), llvm::MCDwarfLineTableHeader::Emit(), llvm::BitstreamWriter::emitBlob(), llvm::DwarfDebug::emitDebugLocEntry(), llvm::DwarfDebug::emitDebugLocEntryLocation(), llvm::SIFrameLowering::emitEntryFunctionPrologue(), llvm::OpenMPIRBuilder::emitTargetKernel(), llvm::objcopy::elf::SectionTableRef::end(), llvm::coverage::CounterMappingContext::evaluate(), expandSGPRCopy(), llvm::SimpleBitstreamCursor::fillCurWord(), llvm::pdb::GSIHashStreamBuilder::finalizeBuckets(), findBestNonTrivialUnswitchCandidate(), llvm::FindInsertedValue(), findLiveReferences(), llvm::wholeprogramdevirt::findLowestOffset(), llvm::lto::findThinLTOModule(), llvm::X86_MC::findX86_64PltEntries(), llvm::X86_MC::findX86PltEntries(), llvm::InstCombinerImpl::foldAggregateConstructionIntoAggregateReuse(), FoldBUILD_VECTOR(), foldCONCAT_VECTORS(), llvm::SelectionDAG::FoldConstantArithmetic(), foldGEPOfGEP(), llvm::TargetInstrInfo::foldMemoryOperand(), llvm::AArch64InstrInfo::foldMemoryOperandImpl(), llvm::RISCVInstrInfo::foldMemoryOperandImpl(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), llvm::X86InstrInfo::foldMemoryOperandImpl(), foldSwitchToSelect(), llvm::InstCombinerImpl::foldVectorBinop(), llvm::codeview::forEachCodeViewRecord(), llvm::codeview::detail::GuidAdapter::format(), formSplatFromShuffles(), llvm::CodeViewYAML::fromDebugH(), llvm::slpvectorizer::BoUpSLP::ShuffleCostEstimator::gather(), llvm::CondOpInit::get(), llvm::DagInit::get(), llvm::AttributeList::get(), llvm::ConstantDataArray::get(), llvm::ConstantDataVector::get(), llvm::TargetExtType::get(), llvm::gsym::GsymReader::getAddressInfoOffset(), llvm::gsym::GsymReader::getAddrOffsets(), llvm::RecordKeeper::getAllDerivedDefinitions(), llvm::getBitcodeFileContents(), llvm::BitcodeModule::getBuffer(), getBuildDwordsVector(), llvm::codeview::getBytesAsCharacters(), llvm::irsymtab::Reader::getComdatTable(), llvm::object::ResourceSectionRef::getContents(), llvm::object::COFFObjectFile::getDebugPDBInfo(), llvm::irsymtab::Reader::getDependentLibraries(), llvm::object::Elf_Note_Impl< ELFT >::getDescAsStringRef(), llvm::object::ELFFile< ELFT >::getEntry(), llvm::codeview::VFTableShapeRecord::getEntryCount(), getExpressionFrameOffset(), llvm::MachineFunction::getFilterIDFor(), llvm::CCState::getFirstUnallocated(), llvm::ConstantDataArray::getFP(), llvm::ConstantDataVector::getFP(), llvm::gsym::GsymReader::getFunctionInfo(), llvm::SelectionDAG::getGatherVP(), llvm::ConstantExpr::getGetElementPtr(), getHalfShuffleMask(), llvm::AArch64Disassembler::getInstruction(), llvm::AMDGPUDisassembler::getInstruction(), llvm::BasicTTIImplBase< T >::getInterleavedMemoryOpCost(), llvm::HexagonTTIImpl::getInterleavedMemoryOpCost(), llvm::X86TTIImpl::getInterleavedMemoryOpCost(), llvm::X86TTIImpl::getInterleavedMemoryOpCostAVX512(), llvm::Intrinsic::getIntrinsicInfoTableEntries(), getLEB128(), llvm::BinaryByteStream::getLength(), llvm::SelectionDAG::getMaskedGather(), llvm::SelectionDAG::getMaskedScatter(), getMaxCalleeSavedReg(), llvm::DILocation::getMergedLocations(), llvm::SelectionDAG::getMergeValues(), llvm::SelectionDAG::getNode(), getNoopInput(), llvm::irsymtab::Reader::getNumModules(), llvm::opt::OptTable::getNumOptions(), getOpenFileImpl(), llvm::BasicTTIImplBase< T >::getOperandsScalarizationOverhead(), llvm::AllocationOrder::getOrderLimitEnd(), getOrSelfReference(), llvm::HvxSelector::getPerfectCompletions(), llvm::MachineTraceMetrics::Trace::getResourceDepth(), llvm::MachineTraceMetrics::Trace::getResourceLength(), getSameOpcode(), llvm::SelectionDAG::getScatterVP(), llvm::object::WasmObjectFile::getSectionSize(), llvm::getShuffleMaskWithWidestElts(), getStatepointArgs(), getStatepointBundles(), llvm::RegPressureTracker::getUpwardPressureDelta(), getUUID(), llvm::SelectionDAG::getVTList(), llvm::ConstantExpr::getWithOperands(), llvm::CodeViewYAML::GlobalHash::GlobalHash(), llvm::MipsTargetLowering::HandleByVal(), llvm::Record::hasDirectSuperClass(), llvm::pdb::hashStringV2(), llvm::hasUTF16ByteOrderMark(), hasUTF8ByteOrderMark(), shuffles::hi(), IncomingValuesAreCompatible(), llvm::LanaiInstrInfo::insertBranch(), insertCandidatesWithPendingInjections(), llvm::insertMultibyteShift(), llvm::SystemZInstrInfo::insertSelect(), llvm::CallLowering::insertSRetLoads(), llvm::CallLowering::insertSRetStores(), llvm::inversePermutation(), llvm::GCNTTIImpl::isAlwaysUniform(), llvm::sampleprof::SampleContext::isBaseContext(), isBigEndian(), isFixedVectorShuffle(), isInBoundsIndices(), llvm::GCNTTIImpl::isInlineAsmSourceOfDivergence(), isReplicationMaskWithParams(), isShuffleEquivalent(), llvm::SimpleBitstreamCursor::isSizePlausible(), isStrictSubset(), isSubset(), isSwitchDense(), isTargetShuffleEquivalent(), llvm::SelectionDAG::isUndef(), llvm::codeview::CVRecord< Kind >::kind(), llvm::codeview::CVRecord< Kind >::length(), llvm::BinaryItemTraits< codeview::CVSymbol >::length(), llvm::codeview::limitSymbolArrayToScope(), llvm::coverage::LineCoverageStats::LineCoverageStats(), shuffles::lo(), llvm::coverage::CoverageMapping::load(), llvm::object::ResourceSectionRef::load(), llvm::gsym::GsymReader::lookup(), llvm::MipsCallLowering::lowerFormalArguments(), llvm::LoongArchTargetLowering::LowerFormalArguments(), llvm::RISCVTargetLowering::LowerFormalArguments(), llvm::lowerGlobalIFuncUsersAsGlobalCtor(), llvm::InlineAsmLowering::lowerInlineAsm(), llvm::AArch64TargetLowering::lowerInterleavedLoad(), llvm::ARMTargetLowering::lowerInterleavedLoad(), llvm::RISCVTargetLowering::lowerInterleavedLoad(), llvm::X86TargetLowering::lowerInterleavedLoad(), llvm::AArch64CallLowering::lowerReturn(), llvm::SPIRVCallLowering::lowerReturn(), lowerV16I8Shuffle(), lowerV8I16GeneralSingleInputShuffle(), lowerVECTOR_SHUFFLE(), llvm::HexagonTargetLowering::LowerVECTOR_SHUFFLE(), LowerVECTOR_SHUFFLE(), llvm::SystemZTargetLowering::makeExternalCall(), llvm::orc::makeJITDylibSearchOrder(), llvm::TargetLowering::makeLibCall(), llvm::codeview::CodeViewRecordIO::mapByteVectorTail(), llvm::Intrinsic::matchIntrinsicVarArg(), llvm::fuzzerop::matchSecondType(), llvm::SIInstrInfo::materializeImmediate(), memOpsHaveSameBaseOperands(), llvm::object::MinidumpFile::MemoryInfoIterator::MemoryInfoIterator(), MergeCompatibleInvokes(), MergeCompatibleInvokesImpl(), mergeVectorRegsToResultRegs(), llvm::object::MachOChainedFixupEntry::moveNext(), multikeySort(), nextByte(), nextLEB(), llvm::object::MinidumpFile::MemoryInfoIterator::operator*(), llvm::sampleprof::SampleContext::operator<(), llvm::ConstantExprKeyType::operator==(), llvm::object::MinidumpFile::MemoryInfoIterator::operator==(), llvm::slpvectorizer::BoUpSLP::optimizeGatherSequence(), packSegmentMask(), llvm::ELFAttributeParser::parse(), llvm::opt::OptTable::ParseArgs(), parseImmediate(), llvm::ELFAttributeParser::parseStringAttribute(), peek(), llvm::AsmLexer::peekTokens(), performBlockTailMerging(), llvm::performOptimizedStructLayout(), llvm::SystemZInstrInfo::PredicateInstruction(), llvm::prepareTempFiles(), llvm::PrintMessage(), llvm::BitcodeAnalyzer::printStats(), llvm::processShuffleMasks(), ProfileCondOpInit(), ProfileRecordRecTy(), llvm::PrologEpilogSGPRSpillBuilder::PrologEpilogSGPRSpillBuilder(), llvm::propagateMetadata(), llvm::coverage::RawCoverageMappingReader::read(), llvm::detail::BCRecordCoding< ElementTy >::read(), llvm::AppendingBinaryByteStream::readBytes(), llvm::BinaryStreamReader::readCString(), llvm::BinaryStreamReader::readFixedString(), readInstruction16(), readInstruction24(), readInstruction32(), readInstruction64(), llvm::BinaryStreamReader::readLongestContiguousChunk(), llvm::BinaryStreamRef::readLongestContiguousChunk(), llvm::readWideAPInt(), rebuildLoopAfterUnswitch(), llvm::BuildVectorSDNode::recastRawBits(), llvm::recognizeBSwapOrBitReverseIdiom(), recomputeLiveInValues(), llvm::Attributor::registerFunctionSignatureRewrite(), llvm::jitlink::relaxBlock(), rematerializeLiveValuesAtUses(), llvm::slpvectorizer::BoUpSLP::reorderBottomToTop(), llvm::slpvectorizer::BoUpSLP::reorderTopToBottom(), llvm::PPCFrameLowering::restoreCalleeSavedRegisters(), llvm::Interpreter::runFunction(), llvm::MCJIT::runFunction(), llvm::orc::ExecutionSession::runJITDispatchHandler(), llvm::IRTranslator::runOnMachineFunction(), SelectOpcodeFromVT(), llvm::orc::FDSimpleRemoteEPCTransport::sendMessage(), LiveDebugValues::DbgValue::setDbgOpIDs(), llvm::jitlink::Block::setMutableContent(), llvm::SelectionDAG::setNodeMemRefs(), llvm::SGPRSpillBuilder::SGPRSpillBuilder(), llvm::AArch64InstrInfo::shouldClusterMemOps(), llvm::PPCInstrInfo::shouldClusterMemOps(), simplifyExtractValueInst(), simplifyGEPInst(), llvm::simplifyInstructionWithOperands(), simplifyInstructionWithOperands(), llvm::mca::SourceMgr::size(), llvm::objcopy::elf::SectionTableRef::size(), llvm::SimpleBitstreamCursor::SizeInBytes(), llvm::SimpleBitstreamCursor::skipToEnd(), llvm::sortPtrAccesses(), llvm::MSP430FrameLowering::spillCalleeSavedRegisters(), llvm::SIRegisterInfo::spillSGPR(), llvm::splitCodeGen(), splitMask(), llvm::BinaryByteStream::str(), llvm::codeview::CVRecord< Kind >::str_data(), StrengthenNoWrapFlags(), llvm::ARMBaseInstrInfo::SubsumesPredicate(), llvm::PPCInstrInfo::SubsumesPredicate(), llvm::SuffixTree::SuffixTree(), llvm::OpenMPIRBuilder::tileLoops(), llvm::objcopy::macho::MachOWriter::totalSize(), llvm::mca::RegisterFile::tryEliminateMoveOrSwap(), llvm::pdb::typesetItemList(), unswitchNontrivialInvariants(), UpdateAnalysisInformation(), llvm::SelectionDAG::UpdateNodeOperands(), UpdatePHINodes(), llvm::StackMapParser< Endianness >::validateHeader(), shuffles::vdeal(), shuffles::vdealb4w(), shuffles::vdealvdd(), llvm::misexpect::verifyMisExpect(), llvm::logicalview::LVLogicalVisitor::visitKnownRecord(), shuffles::vpack(), shuffles::vshuff(), shuffles::vshuffvdd(), llvm::WebAssembly::wasmSymbolSetType(), llvm::widenShuffleMaskElts(), llvm::MemorySSAUpdater::wireOldPredecessorsToNewImmediatePredecessor(), llvm::write(), llvm::coverage::CoverageMappingWriter::write(), llvm::coverage::CoverageFilenamesSectionWriter::write(), llvm::writeArchiveToStream(), llvm::yaml::BinaryRef::writeAsBinary(), llvm::BinaryStreamWriter::writeBytes(), llvm::msf::WritableMappedBlockStream::writeBytes(), llvm::MutableBinaryByteStream::writeBytes(), llvm::AppendingBinaryByteStream::writeBytes(), writeDIE(), llvm::writeIndex(), writeSymbolMap(), llvm::object::writeUniversalBinaryToStream(), and writeWithCommas().
|
inline |
slice(n) - Chop off the first N elements of the array.
Definition at line 199 of file ArrayRef.h.
References N, llvm::size(), and llvm::ArrayRef< T >::slice().
Referenced by llvm::ArrayRef< T >::slice().
|
inline |
slice(n, m) - Chop off the first N elements of the array, and keep M elements in the array.
Definition at line 193 of file ArrayRef.h.
References assert(), N, and llvm::size().
Referenced by buildNew(), llvm::MachineInstr::cloneMergedMemRefs(), llvm::ConstantFoldExtractValueInstruction(), llvm::ConstantFoldInsertValueInstruction(), llvm::ConstantExprKeyType::create(), DecodeFixedType(), llvm::dlltoolDriverMain(), eat12Bytes(), eatBytes(), llvm::SIFrameLowering::emitEntryFunctionPrologue(), llvm::FindInsertedValue(), llvm::wholeprogramdevirt::findLowestOffset(), llvm::ConstantExpr::getAsInstruction(), llvm::DebugLocStream::getBytes(), llvm::DebugLocStream::getComments(), llvm::DebugLocStream::getEntries(), getIndexedTypeInternal(), llvm::AMDGPUDisassembler::getInstruction(), llvm::ValueEnumerator::getMDStrings(), llvm::dxil::ValueEnumerator::getMDStrings(), llvm::ValueEnumerator::getNonMDStrings(), llvm::dxil::ValueEnumerator::getNonMDStrings(), llvm::object::MinidumpFile::getRawStream(), llvm::slpvectorizer::BoUpSLP::getReorderingData(), llvm::VPInterleaveRecipe::getStoredValues(), llvm::jitlink::Symbol::getSymbolContent(), llvm::SelectionDAG::getTokenFactor(), llvm::ConstantExpr::getWithOperands(), llvm::pdb::hashStringV2(), llvm::codeview::GloballyHashedType::hashType(), isHorizontalBinOp(), llvm::libDriverMain(), LowerAVXCONCAT_VECTORS(), LowerCONCAT_VECTORSvXi1(), matchIntrinsicType(), llvm::Intrinsic::matchIntrinsicVarArg(), llvm::InjectorIRStrategy::mutate(), llvm::InsertFunctionStrategy::mutate(), llvm::InsertCFGStrategy::mutate(), llvm::SinkInstructionStrategy::mutate(), llvm::detail::BCRecordCoding< ElementTy, Fields >::read(), llvm::msf::MappedBlockStream::readBytes(), llvm::BinaryByteStream::readBytes(), llvm::AppendingBinaryByteStream::readBytes(), llvm::BinaryStreamRef::readLongestContiguousChunk(), llvm::BinaryByteStream::readLongestContiguousChunk(), llvm::AppendingBinaryByteStream::readLongestContiguousChunk(), llvm::coverage::BinaryCoverageReader::readNextRecord(), llvm::LiveRangeEdit::regs(), llvm::jitlink::relaxBlock(), llvm::Interpreter::runFunction(), simplifyExtractValueInst(), and llvm::objcopy::elf::ELFSectionWriter< ELFT >::visit().
|
inline |
Return a copy of *this with only the last N
elements.
Definition at line 233 of file ArrayRef.h.
References N, and llvm::size().
Referenced by shuffles::hi(), and optimizeVectorResizeWithIntegerBitCasts().
|
inline |
Return a copy of *this with only the first N
elements.
Definition at line 226 of file ArrayRef.h.
References N, and llvm::size().
Referenced by buildCopyFromRegs(), llvm::codeview::forEachCodeViewRecord(), llvm::AttributeList::get(), llvm::codeview::GloballyHashedType::hashType(), llvm::sampleprof::SampleContext::IsPrefixOf(), shuffles::lo(), optimizeVectorResizeWithIntegerBitCasts(), llvm::BinaryItemStream< T, Traits >::readBytes(), llvm::pdb::typesetItemList(), and writeWithCommas().
|
inline |
Return the first N elements of this Array that don't satisfy the given predicate.
Definition at line 247 of file ArrayRef.h.
References llvm::find_if().
|
inline |
Return the first N elements of this Array that satisfy the given predicate.
Definition at line 241 of file ArrayRef.h.
References llvm::find_if_not().
|
inline |
Definition at line 278 of file ArrayRef.h.
References Data, and llvm::Length.
Referenced by combineDIExpressions().