LLVM 22.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< MCDecodedPseudoProbeInlineTree >, llvm::MutableArrayRef< uint8_t >, llvm::MutableArrayRef< uint64_t >, llvm::MutableArrayRef< PBQPNum >, 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. | |
LLVM_DEPRECATED ("Use {} or ArrayRef<T>() instead", "{}") ArrayRef(std | |
Construct an empty ArrayRef from std::nullopt. | |
ArrayRef (const T &OneElt LLVM_LIFETIME_BOUND) | |
Construct an ArrayRef from a single element. | |
constexpr | ArrayRef (const T *data LLVM_LIFETIME_BOUND, size_t length) |
Construct an ArrayRef from a pointer and length. | |
constexpr | ArrayRef (const T *begin LLVM_LIFETIME_BOUND, const T *end) |
Construct an ArrayRef from a range. | |
template<typename C , typename = std::enable_if_t< std::conjunction_v< std::is_convertible< decltype(std::declval<const C &>().data()) *, const T *const *>, std::is_integral<decltype(std::declval<const C &>().size())>> | |
constexpr | ArrayRef (const C &V) |
Construct an ArrayRef from a type that has a data() method that returns a pointer convertible to const T *. | |
template<size_t N> | |
constexpr | ArrayRef (const T(&Arr LLVM_LIFETIME_BOUND)[N]) |
Construct an ArrayRef from a C array. | |
constexpr | ArrayRef (std::initializer_list< T > Vec LLVM_LIFETIME_BOUND) |
Construct an ArrayRef from a std::initializer_list. | |
template<typename U , typename = std::enable_if_t< std::is_convertible_v<U *const *, T *const *>>> | |
ArrayRef (const iterator_range< U * > &Range) | |
Construct an ArrayRef<T> from iterator_range<U*>. | |
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. | |
const T & | consume_front () |
consume_front() - Returns the first element and drops it from ArrayRef. | |
const T & | consume_back () |
consume_back() - Returns the last element and drops it from ArrayRef. | |
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 ArrayRef from a single element.
Definition at line 74 of file ArrayRef.h.
References llvm::Length.
|
inlineconstexpr |
Construct an ArrayRef from a pointer and length.
Definition at line 78 of file ArrayRef.h.
References llvm::Length.
|
inlineconstexpr |
Construct an ArrayRef from a range.
Definition at line 83 of file ArrayRef.h.
References assert(), and llvm::Length.
|
inlineconstexpr |
Construct an ArrayRef from a type that has a data() method that returns a pointer convertible to const T *.
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 115 of file ArrayRef.h.
References llvm::Length, and llvm::size().
|
inline |
Construct an ArrayRef<T> from iterator_range<U*>.
This uses SFINAE to ensure that this is only used for iterator ranges over plain pointer iterators.
Definition at line 128 of file ArrayRef.h.
References llvm::Length, and llvm::size().
|
inline |
back - Get the last element.
Definition at line 156 of file ArrayRef.h.
References assert(), and llvm::Length.
Referenced by llvm::AttributeList::addParamAttribute(), llvm::DIExpression::appendToStack(), llvm::RandomIRBuilder::connectToSink(), llvm::object::ELFFile< ELFT >::dynamicEntries(), isMaskedLoadCompress(), isStridedLoad(), isSwitchDense(), llvm::MCRegAliasIterator::MCRegAliasIterator(), llvm::RandomIRBuilder::newSink(), llvm::recognizeBSwapOrBitReverseIdiom(), llvm::orc::shared::runDeallocActions(), simplifyGEPInst(), and simplifyInstructionWithOperands().
|
inline |
Definition at line 135 of file ArrayRef.h.
Referenced by addMask(), llvm::DebugLocEntry::addValues(), llvm::DIExpression::append(), llvm::DIExpression::appendToStack(), llvm::DIExpressionCursor::assignNewExpr(), buildFixItLine(), calcPredicateUsingInteger(), llvm::Interpreter::callFunction(), canonicalizeDwarfOperations(), llvm::slpvectorizer::BoUpSLP::canVectorizeLoads(), llvm::LiveIntervals::checkRegMaskInterference(), llvm::dwarf_linker::parallel::CompileUnit::cloneDieAttrExpression(), llvm::collectGlobalObjectNameStrings(), combineX86ShufflesRecursively(), llvm::ComputeLinearIndex(), computeMemberData(), llvm::concatenateVectors(), llvm::convertUTF16ToUTF8String(), llvm::convertUTF32ToUTF8String(), CreateGCRelocates(), createMergedFunction(), llvm::DIExpression::elements_begin(), llvm::MCDwarfFrameEmitter::Emit(), llvm::BitstreamWriter::emitBlob(), llvm::FindInsertedValue(), gatherPossiblyVectorizableLoads(), llvm::AttributeList::get(), llvm::gsym::GsymReader::getAddressOffsetIndex(), llvm::DagInit::getArgNo(), llvm::BitcodeModule::getBuffer(), llvm::omp::getCompoundConstruct(), llvm::StructLayout::getElementContainingOffset(), getFauxShuffleMask(), llvm::HexagonRegisterInfo::getHexagonSubRegIndex(), llvm::ARMBaseRegisterInfo::getLargestLegalSuperClass(), llvm::X86RegisterInfo::getLargestLegalSuperClass(), llvm::omp::getLeafOrCompositeConstructs(), getNoopInput(), llvm::getShuffleMaskWithWidestElts(), llvm::ConstantExpr::getWithOperands(), growShuffleMask(), llvm::CallGraphSCC::initialize(), llvm::RegPressureTracker::initLiveThru(), llvm::AppendingBinaryByteStream::insert(), insertCandidatesWithPendingInjections(), llvm::IntrinsicCostAttributes::IntrinsicCostAttributes(), llvm::omp::isCompositeConstruct(), isFixedVectorShuffle(), llvm::LiveRange::isLiveAtIndexes(), isMaskedLoadCompress(), isSubset(), llvm::coverage::CoverageMapping::load(), lookupLLVMIntrinsicByName(), lowerV8I16GeneralSingleInputShuffle(), llvm::makePostTransformationMetadata(), llvm::codeview::CodeViewRecordIO::mapByteVectorTail(), llvm::MCRegAliasIterator::MCRegAliasIterator(), llvm::object::ExportEntry::moveNext(), llvm::object::MachORebaseEntry::moveNext(), llvm::object::MachOBindEntry::moveNext(), llvm::object::ExportEntry::nodeOffset(), optimizeDwarfOperations(), llvm::CallBase::populateBundleOperandInfos(), llvm::detail::BCRecordCoding< BCArray< ElementTy > >::read(), llvm::BinaryStreamReader::readCString(), llvm::BinaryStreamReader::readFixedString(), llvm::MachineFunction::setCallSiteLandingPad(), llvm::MCInst::setOperands(), llvm::X86MachineFunctionInfo::setPreallocatedArgOffsets(), llvm::setProfMetadata(), llvm::MachineFrameInfo::setRestorePoints(), llvm::MachineFrameInfo::setSavePoints(), llvm::gsym::GsymCreator::setUUID(), llvm::MCFragment::setVarContents(), llvm::sandboxir::Scheduler::trySchedule(), llvm::SelectionDAG::UpdateNodeOperands(), shuffles::vdealvdd(), llvm::misexpect::verifyMisExpect(), shuffles::vshuffvdd(), and writeToResolutionFile().
|
inline |
consume_back() - Returns the last element and drops it from ArrayRef.
Definition at line 169 of file ArrayRef.h.
|
inline |
consume_front() - Returns the first element and drops it from ArrayRef.
Definition at line 162 of file ArrayRef.h.
Referenced by allSameType(), computeCommonAlignment(), llvm::constructSeqOffsettoOrigRowMapping(), and llvm::PrintMessage().
|
inline |
Definition at line 176 of file ArrayRef.h.
References A, llvm::Length, and llvm::uninitialized_copy().
|
inline |
Definition at line 144 of file ArrayRef.h.
Referenced by llvm::codeview::DebugChecksumsSubsection::addChecksum(), analyzeHeader(), llvm::objcopy::elf::SectionTableRef::begin(), llvm::orc::SelfExecutorProcessControl::callWrapperAsync(), llvm::dwarf_linker::parallel::DIEAttributeCloner::cloneBlockAttr(), 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(), eat16Bytes(), 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::fullyRecomputeLiveIns(), 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(), 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::HexagonTargetLowering::LowerVECTOR_SHUFFLE(), llvm::codeview::CodeViewRecordIO::mapGuid(), llvm::object::MachOChainedFixupEntry::moveNext(), nextLEB(), llvm::object::MinidumpFile::MemoryInfoIterator::operator*(), CallSiteEntry::operator==(), llvm::object::MachOBindEntry::operator==(), llvm::object::MachORebaseEntry::operator==(), parseImmediate(), llvm::BinaryStreamReader::readArray(), readBinaryIdsInternal(), llvm::jitlink::CompactUnwindTraits< CRTPImpl, PtrSize >::readEncoding(), readInstruction32(), llvm::BinaryStreamReader::readInteger(), llvm::BinaryStreamReader::readObject(), llvm::jitlink::CompactUnwindTraits< CRTPImpl, PtrSize >::readPCRangeSize(), llvm::orc::ExecutionSession::runJITDispatchHandler(), llvm::orc::FDSimpleRemoteEPCTransport::sendMessage(), llvm::stable_hash_combine(), llvm::BinaryByteStream::str(), llvm::codeview::CVRecord< Kind >::str_data(), verifyNoteSection(), 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 206 of file ArrayRef.h.
References assert(), N, and llvm::size().
Referenced by llvm::DIExpression::appendToStack(), llvm::constructSeqOffsettoOrigRowMapping(), EltsFromConsecutiveLoads(), llvm::BasicTTIImplBase< T >::getIntrinsicInstrCost(), llvm::RTLIB::RuntimeLibcallsInfo::getLibcallImpls(), 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 200 of file ArrayRef.h.
References assert(), N, and llvm::size().
Referenced by buildCopyFromRegs(), clusterSortPtrAccesses(), combineShuffleToZeroExtendVectorInReg(), llvm::codeview::CVRecord< Kind >::content(), llvm::codeview::discoverTypeIndices(), llvm::codeview::discoverTypeIndicesInSymbol(), dropInitialDeref(), FindFirstNonCommonLetter(), llvm::codeview::forEachCodeViewRecord(), llvm::CodeViewYAML::detail::UnknownSymbolRecord::fromCodeViewSymbol(), llvm::opt::GenericOptTable::GenericOptTable(), llvm::fuzzerop::gepDescriptor(), llvm::cl::getCompilerBuildConfig(), llvm::omp::getCompoundConstruct(), llvm::object::COFFObjectFile::getDebugPDBInfo(), llvm::object::SFrameParser< E >::getExtraOffsets(), llvm::TrieHashIndexGenerator::getIndex(), llvm::BasicTTIImplBase< T >::getIntrinsicInstrCost(), llvm::codeview::VFTableRecord::getMethodNames(), llvm::DIExpression::getSingleLocationExpressionElements(), llvm::codeview::GloballyHashedType::hashType(), llvm::object::MinidumpFile::Memory64Iterator::inc(), llvm::pdb::UDTLayoutBase::initializeChildren(), llvm::slpvectorizer::BoUpSLP::isTreeNotExtendable(), llvm::orc::lookupSymbolsAsyncHelper(), llvm::coro::normalizeCoroutine(), llvm::object::MinidumpFile::MemoryInfoIterator::operator++(), readMemprof(), resolveTypeIndexReferences(), llvm::coro::AsyncABI::splitCoroutine(), 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 219 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 213 of file ArrayRef.h.
References llvm::find_if_not().
Referenced by llvm::constructSeqOffsettoOrigRowMapping().
|
inline |
empty - Check if the array is empty.
Definition at line 142 of file ArrayRef.h.
References llvm::Length.
Referenced by llvm::orc::IRSymbolMapper::add(), llvm::lto::LTO::add(), addBasicBlockMetadata(), llvm::codeview::DebugChecksumsSubsection::addChecksum(), addMask(), llvm::LazyCallGraph::addSplitRefRecursiveFunctions(), llvm::pdb::DbiModuleDescriptorBuilder::addSymbolsInBulk(), llvm::pdb::TpiStreamBuilder::addTypeRecords(), addVPMetadata(), llvm::annotateValueSite(), llvm::DIExpression::append(), llvm::DIExpression::appendToStack(), llvm::DominatorTreeBase< NodeT, IsPostDom >::applyUpdates(), llvm::CallLowering::ArgInfo::ArgInfo(), llvm::AttributeListImpl::AttributeListImpl(), buildCompressMask(), buildExtractionBlockSet(), buildFixItLine(), llvm::VPlanSlp::buildGraph(), llvm::MachineIRBuilder::buildInstr(), canClobberPhysRegDefs(), canClobberReachingPhysRegUse(), canonicalizeShuffleMaskWithHorizOp(), CC_AArch64_Custom_Block(), CC_ARM_AAPCS_Custom_Aggregate(), CC_X86_64_I128(), llvm::cloneAndAdaptNoAliasScopes(), llvm::MachineInstr::cloneMergedMemRefs(), llvm::collectGlobalObjectNameStrings(), llvm::CombinationGenerator< choice_type, choices_storage_type, variable_smallsize >::CombinationGenerator(), combineOrders(), combineX86ShuffleChain(), combineX86ShufflesRecursively(), llvm::MDNodeOpsKey::compareOps(), computeCalleeSaveRegisterPairs(), computeExcessPressureDelta(), llvm::ConstantFoldExtractValueInstruction(), llvm::ConstantFoldGetElementPtr(), llvm::ConstantFoldInsertValueInstruction(), llvm::constructSeqOffsettoOrigRowMapping(), llvm::convertUTF16ToUTF8String(), llvm::convertUTF32ToUTF8String(), llvm::coverage::BinaryCoverageReader::create(), llvm::IRBuilderBase::CreateAnd(), llvm::IRBuilderBase::CreateIntrinsic(), llvm::IRBuilderBase::CreateLogicalOr(), createMIBNode(), llvm::IRBuilderBase::CreateOr(), llvm::OpenMPIRBuilder::createSingle(), createTaskWithPrivatesTy(), deepWriteArchive(), llvm::FileCheckPatternContext::defineCmdlineVariables(), llvm::doesNotNeedToSchedule(), llvm::coverage::CounterMappingContext::dump(), llvm::object::ELFFile< ELFT >::dynamicEntries(), llvm::CodeViewContext::encodeInlineLineTable(), llvm::object::MachOObjectFile::exports(), llvm::sandboxir::DependencyGraph::extend(), llvm::ThreadSafeTrieRawHashMapBase::find(), FindFirstNonCommonLetter(), llvm::FindInsertedValue(), foldCONCAT_VECTORS(), llvm::codeview::forEachCodeViewRecord(), gatherPossiblyVectorizableLoads(), llvm::ARMAsmBackendDarwin::generateCompactUnwindEncoding(), llvm::RecordRecTy::get(), llvm::InstrProfCorrelator::get(), getBuildDwordsVector(), llvm::omp::getCompoundConstruct(), llvm::orc::JITDylib::getDFSLinkOrder(), llvm::RegAllocBase::getErrorAssignment(), getExpressionFrameOffset(), getFeatures(), llvm::HexagonRegisterInfo::getHexagonSubRegIndex(), getIndexedTypeInternal(), getIntrinsicNameImpl(), llvm::PBQP::Vector::getLength(), getMaxCalleeSavedReg(), llvm::MMRAMetadata::getMD(), llvm::DebugLoc::getMergedLocations(), llvm::DILocation::getMergedLocations(), getOpenFileImpl(), llvm::Intrinsic::getOrInsertDeclaration(), getOrSelfReference(), llvm::SystemZTTIImpl::getScalarizationOverhead(), llvm::X86TTIImpl::getScalarizationOverhead(), llvm::object::MachOObjectFile::getSegmentContents(), llvm::slpvectorizer::BoUpSLP::LookAheadHeuristics::getShallowScore(), llvm::X86TTIImpl::getShuffleCost(), getShufflevectorNumGroups(), llvm::codeview::VFTableShapeRecord::getSlots(), llvm::slpvectorizer::BoUpSLP::getTreeCost(), llvm::Intrinsic::getType(), llvm::DFAPacketizer::getUsedResources(), getUUID(), llvm::CallLowering::handleAssignments(), llvm::SelectionDAGBuilder::handleDebugValue(), llvm::ScheduleDAGMILive::initRegPressure(), llvm::MachineInstr::insert(), llvm::ThreadSafeTrieRawHashMapBase::insert(), llvm::LanaiInstrInfo::insertBranch(), insertLifetimeMarkersSurroundingCall(), llvm::codeview::GlobalTypeTableBuilder::insertRecordAs(), insertUseHolderAfter(), llvm::sandboxir::Interval< T >::Interval(), llvm::slpvectorizer::BoUpSLP::isIdentityOrder(), llvm::GCNTTIImpl::isInlineAsmSourceOfDivergence(), isMaskedLoadCompress(), llvm::ConstantRangeList::isOrderedRanges(), isReverseOrder(), isStridedLoad(), llvm::coverage::LineCoverageStats::LineCoverageStats(), llvm::coverage::CoverageMapping::load(), llvm::LoadAndStorePromoter::LoadAndStorePromoter(), llvm::orc::lookupSymbolsAsyncHelper(), 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::BPFCallLowering::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::PBQP::Vector::minIndex(), llvm::PBQP::Vector::operator+=(), llvm::raw_ostream::operator<<(), llvm::operator<<(), llvm::PBQP::Vector::operator==(), llvm::PBQP::Vector::operator[](), llvm::performOptimizedStructLayout(), postUnswitch(), llvm::DebugCounter::printChunks(), llvm::PrintMessage(), llvm::PrologEpilogSGPRSpillBuilder::PrologEpilogSGPRSpillBuilder(), llvm::promoteCallWithVTableCmp(), llvm::PromoteMemToReg(), llvm::propagateMetadata(), llvm::detail::BCRecordCoding< ElementTy, Fields >::read(), llvm::recognizeBSwapOrBitReverseIdiom(), llvm::LazyCallGraph::removeDeadFunctions(), 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::lto::LTO::run(), llvm::SanitizerBinaryMetadataPass::run(), llvm::orc::shared::runDeallocActions(), llvm::MCJIT::runFunction(), llvm::SLPVectorizerPass::runImpl(), llvm::MachineInstr::setMemRefs(), llvm::SelectionDAG::setNodeMemRefs(), llvm::VFABI::setVectorVariantNames(), llvm::SGPRSpillBuilder::SGPRSpillBuilder(), llvm::SIInstrInfo::shouldClusterMemOps(), llvm::RISCVInstrInfo::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::CodeViewYAML::toCodeViewSubsectionList(), llvm::pdb::typesetItemList(), llvm::MemorySSAUpdater::wireOldPredecessorsToNewImmediatePredecessor(), llvm::MutableBinaryByteStream::writeBytes(), llvm::AppendingBinaryByteStream::writeBytes(), and writeWithCommas().
|
inline |
Definition at line 136 of file ArrayRef.h.
References llvm::Length.
Referenced by addMask(), llvm::DebugLocEntry::addValues(), allSameBlock(), allSameOpcode(), llvm::DIExpression::append(), llvm::DIExpression::appendToStack(), llvm::DIExpressionCursor::assignNewExpr(), llvm::ELFAttrs::attrTypeAsString(), llvm::ELFAttrs::attrTypeFromString(), buildFixItLine(), llvm::Interpreter::callFunction(), llvm::slpvectorizer::BoUpSLP::canVectorizeLoads(), llvm::LiveIntervals::checkRegMaskInterference(), llvm::dwarf_linker::parallel::CompileUnit::cloneDieAttrExpression(), llvm::collectGlobalObjectNameStrings(), combineX86ShufflesRecursively(), CompressEVEXImpl(), llvm::ComputeLinearIndex(), llvm::concatenateVectors(), llvm::convertUTF16ToUTF8String(), llvm::convertUTF32ToUTF8String(), CreateGCRelocates(), createMergedFunction(), llvm::DIExpression::elements_end(), llvm::MCDwarfFrameEmitter::Emit(), llvm::BitstreamWriter::emitBlob(), llvm::FindInsertedValue(), findTargetSubtable(), gatherPossiblyVectorizableLoads(), llvm::gsym::GsymReader::getAddressOffsetIndex(), llvm::DagInit::getArgNo(), llvm::getCapabilitiesEnabledByExtension(), llvm::omp::getCompoundConstruct(), llvm::StructLayout::getElementContainingOffset(), getExpressionFrameOffset(), getFauxShuffleMask(), llvm::getFMA3Group(), getGEPCosts(), llvm::ARMBaseRegisterInfo::getLargestLegalSuperClass(), llvm::X86RegisterInfo::getLargestLegalSuperClass(), llvm::omp::getLeafOrCompositeConstructs(), getLEB128(), llvm::sandboxir::VecUtils::getLowest(), getNewOpcFromTable(), getNoopInput(), getRegLanes(), getSameOpcode(), llvm::getShuffleMaskWithWidestElts(), llvm::getSymbolicOperandAllowedEnvironments(), llvm::getSymbolicOperandCapabilities(), llvm::getSymbolicOperandExtensions(), llvm::getSymbolicOperandMnemonic(), llvm::ConstantExpr::getWithOperands(), growShuffleMask(), llvm::pdb::hashStringV1(), llvm::CallGraphSCC::initialize(), llvm::RegPressureTracker::initLiveThru(), llvm::AppendingBinaryByteStream::insert(), insertCandidatesWithPendingInjections(), llvm::IntrinsicCostAttributes::IntrinsicCostAttributes(), llvm::omp::isCompositeConstruct(), llvm::MCSubtargetInfo::isCPUStringValid(), isFixedVectorShuffle(), llvm::LiveRange::isLiveAtIndexes(), isMaskedLoadCompress(), isSubset(), llvm::RISCVISAInfo::isSupportedExtensionFeature(), llvm::coverage::CoverageMapping::load(), Lookup(), lookupFoldTableImpl(), lookupLLVMIntrinsicByName(), lowerV8I16GeneralSingleInputShuffle(), llvm::makePostTransformationMetadata(), llvm::codeview::CodeViewRecordIO::mapByteVectorTail(), llvm::MCRegAliasIterator::MCRegAliasIterator(), llvm::object::MachORebaseEntry::moveNext(), llvm::object::MachOBindEntry::moveNext(), llvm::CallBase::populateBundleOperandInfos(), llvm::detail::BCRecordCoding< BCArray< ElementTy > >::read(), llvm::MachineFunction::setCallSiteLandingPad(), llvm::MCInst::setOperands(), llvm::X86MachineFunctionInfo::setPreallocatedArgOffsets(), llvm::setProfMetadata(), llvm::MachineFrameInfo::setRestorePoints(), llvm::MachineFrameInfo::setSavePoints(), llvm::gsym::GsymCreator::setUUID(), llvm::DbgValueHistoryMap::trimLocationRanges(), llvm::SelectionDAG::UpdateNodeOperands(), shuffles::vdealvdd(), llvm::misexpect::verifyMisExpect(), shuffles::vshuffvdd(), and writeToResolutionFile().
equals - Check for element-wise equality.
Definition at line 183 of file ArrayRef.h.
References llvm::Length, and RHS.
Referenced by llvm::operator==().
|
inline |
front - Get the first element.
Definition at line 150 of file ArrayRef.h.
References assert().
Referenced by buildCompressMask(), buildCopyToRegs(), llvm::CSEMIRBuilder::buildInstr(), calcPredicateUsingInteger(), calculateShufflevectorMask(), canConvertToFMA(), canSinkInstructions(), llvm::slpvectorizer::BoUpSLP::canVectorizeLoads(), clusterSortPtrAccesses(), llvm::constructSeqOffsettoOrigRowMapping(), convertToGuardPredicates(), DecodeFixedType(), deepWriteArchive(), llvm::CodeViewContext::encodeInlineLineTable(), llvm::InstCombinerImpl::foldAggregateConstructionIntoAggregateReuse(), llvm::slpvectorizer::BoUpSLP::ShuffleCostEstimator::gather(), gatherPossiblyVectorizableLoads(), generateNewInstTree(), llvm::InstrProfCorrelator::get(), llvm::orc::JITDylib::getDFSLinkOrder(), llvm::RegAllocBase::getErrorAssignment(), llvm::sandboxir::VecUtils::getLowest(), llvm::MMRAMetadata::getMD(), llvm::codeview::VFTableRecord::getName(), getShufflevectorNumGroups(), llvm::DFAPacketizer::getUsedResources(), hasSupportedLoopDepth(), isFreeConcat(), isMaskedLoadCompress(), isStridedLoad(), isSwitchDense(), llvm::coverage::LineCoverageStats::LineCoverageStats(), llvm::coverage::CoverageMapping::load(), llvm::orc::lookupSymbolsAsyncHelper(), matchIntrinsicType(), llvm::Intrinsic::matchIntrinsicVarArg(), memOpsHaveSameBasePtr(), mergeCompatibleInvokesImpl(), mergeConsecutivePartStores(), llvm::detail::BCRecordCoding< ElementTy >::read(), llvm::detail::BCRecordCoding< ElementTy, Fields >::read(), llvm::slpvectorizer::BoUpSLP::VLOperands::reorder(), shortBundleName(), llvm::AArch64InstrInfo::shouldClusterMemOps(), llvm::SIInstrInfo::shouldClusterMemOps(), llvm::PPCInstrInfo::shouldClusterMemOps(), llvm::RISCVInstrInfo::shouldClusterMemOps(), and llvm::widenShuffleMaskElts().
|
inline |
Construct an empty ArrayRef from std::nullopt.
Definition at line 70 of file ArrayRef.h.
|
inline |
Definition at line 283 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 252 of file ArrayRef.h.
References assert(), Index, and llvm::Length.
|
inline |
Definition at line 138 of file ArrayRef.h.
Referenced by getNoopInput(), getPropIndex(), llvm::ScheduleDAGMI::initQueues(), and llvm::X86FrameLowering::spillCalleeSavedRegisters().
|
inline |
Definition at line 139 of file ArrayRef.h.
Referenced by getNoopInput(), getPropIndex(), llvm::ScheduleDAGMI::initQueues(), and llvm::X86FrameLowering::spillCalleeSavedRegisters().
|
inline |
size - Get the array size.
Definition at line 147 of file ArrayRef.h.
References llvm::Length.
Referenced by llvm::dwarf_linker::parallel::DIEGenerator::addBlockAttribute(), llvm::codeview::DebugChecksumsSubsection::addChecksum(), llvm::DwarfCompileUnit::addLocationAttribute(), llvm::dwarf_linker::parallel::DIEGenerator::addLocationAttribute(), addMask(), addOperands(), llvm::gsym::GsymReader::addressForIndex(), addSaveRestoreRegs(), llvm::pdb::DbiModuleDescriptorBuilder::addSymbolsInBulk(), llvm::pdb::TpiStreamBuilder::addTypeRecords(), llvm::InstrProfRecord::addValueData(), llvm::DbgVariableRecord::addVariableLocationOps(), llvm::DbgVariableIntrinsic::addVariableLocationOps(), llvm::CCState::AllocateReg(), llvm::CCState::AllocateRegBlock(), allocateSGPR32InputImpl(), allocateVGPR32Input(), llvm::analyzeArguments(), analyzeHeader(), llvm::MCObjectStreamer::appendContents(), llvm::CombinerHelper::applyCombineShuffleVector(), llvm::GenericDomTreeUpdater< DerivedT, DomTreeT, PostDomTreeT >::applyUpdates(), llvm::SimpleBitstreamCursor::AtEndOfStream(), llvm::MachineIRBuilder::buildBuildVectorConstant(), buildClonedLoopBlocks(), buildClonedLoops(), buildCompressMask(), buildCopyFromRegs(), buildCopyToRegs(), buildFatArchList(), llvm::CSEMIRBuilder::buildInstr(), llvm::MachineIRBuilder::buildInstr(), llvm::BuildMI(), llvm::AMDGPULegalizerInfo::buildMultiply(), buildNew(), llvm::codelayout::calcExtTspScore(), calcPredicateUsingBooleans(), calcPredicateUsingInteger(), llvm::calculateRegisterUsageForPlan(), calculateRtStride(), llvm::Interpreter::callFunction(), llvm::orc::SelfExecutorProcessControl::callWrapperAsync(), llvm::SystemZInstrInfo::canInsertSelect(), canonicalHeaderAndLatch(), canonicalizeDwarfOperations(), canonicalizeShuffleMaskWithHorizOp(), llvm::SimpleBitstreamCursor::canSkipToPos(), llvm::sandboxir::LegalityAnalysis::canVectorize(), llvm::slpvectorizer::BoUpSLP::canVectorizeLoads(), CC_AIX(), CC_ARM_AAPCS_Custom_Aggregate(), checkARM64Instructions(), CheckForLiveRegDefMasked(), checkOperandCount(), llvm::cleanUpTempFiles(), llvm::cloneAndAdaptNoAliasScopes(), llvm::dwarf_linker::parallel::DIEAttributeCloner::cloneBlockAttr(), llvm::MachineInstr::cloneMergedMemRefs(), clusterSortPtrAccesses(), llvm::FunctionComparator::cmpOperations(), coerceArguments(), CollectAddOperandsWithScales(), llvm::collectGlobalObjectNameStrings(), combineConcatVectorOps(), combineOrders(), combineShuffleOfSplatVal(), combineShuffleToZeroExtendVectorInReg(), llvm::TargetLowering::DAGCombinerInfo::CombineTo(), combineX86ShuffleChain(), combineX86ShuffleChainWithExtract(), combineX86ShufflesConstants(), combineX86ShufflesRecursively(), CompareSCEVComplexity(), llvm::IRSimilarity::IRSimilarityCandidate::compareStructure(), llvm::compareTypes(), llvm::LoopVectorizationPlanner::computeBestVF(), llvm::codelayout::computeCacheDirectedLayout(), computeCalleeSaveRegisterPairs(), computeExcessPressureDelta(), llvm::codelayout::computeExtTspLayout(), computeIndirectRegIndex(), llvm::SelectionDAG::computeKnownBits(), computeKnownFPClass(), llvm::ComputeMappedEditDistance(), computeMaxPressureDelta(), computeMemberData(), llvm::SelectionDAG::ComputeNumSignBits(), llvm::mca::computeProcResourceMasks(), llvm::concatenateVectors(), llvm::ConstantFoldGetElementPtr(), llvm::ConstraintSystem::ConstraintSystem(), convertToGuardPredicates(), llvm::detail::DoubleAPFloat::convertToInteger(), llvm::detail::IEEEFloat::convertToInteger(), llvm::convertUTF16ToUTF8String(), llvm::convertUTF32ToUTF8String(), llvm::AArch64InstrInfo::copyGPRRegTuple(), llvm::GlobalObject::copyMetadata(), llvm::SIInstrInfo::copyPhysReg(), llvm::AArch64InstrInfo::copyPhysRegTuple(), costShuffleViaSplitting(), costShuffleViaVRegSplitting(), llvm::sandboxir::CallBrInst::create(), llvm::CallBrInst::Create(), llvm::GetElementPtrInst::Create(), llvm::GetElementPtrConstantExpr::Create(), llvm::sandboxir::GetElementPtrInst::create(), llvm::IRBuilderBase::CreateAnd(), createAndCheckVectorTypesForPromotion(), llvm::jitlink::ppc64::createAnonymousPointerJumpStub(), llvm::MDBuilder::createBranchWeights(), CreateGCRelocates(), createIndexMap(), llvm::logicalview::LVBinaryReader::createInstructions(), llvm::IRBuilderBase::CreateLogicalOr(), llvm::IRBuilderBase::CreateNAryOp(), llvm::IRBuilderBase::CreateOr(), llvm::createPHIsForSplitLoopExit(), llvm::OpenMPIRBuilder::createReductions(), llvm::OpenMPIRBuilder::createReductionsGPU(), llvm::createSanitizerCtorAndInitFunctions(), llvm::OpenMPIRBuilder::createScan(), llvm::OpenMPIRBuilder::createSections(), llvm::OpenMPIRBuilder::createSingle(), llvm::MDBuilder::createTBAAStructNode(), llvm::MDBuilder::createTBAATypeNode(), createThunk(), createTuple(), llvm::IRBuilderBase::CreateVectorInterleave(), LiveDebugValues::DbgValue::DbgValue(), DecodeIITType(), llvm::AMDGPUDisassembler::decodeKernelDescriptor(), llvm::AMDGPUDisassembler::decodeKernelDescriptorDirective(), llvm::AMDGPUDisassembler::decodeLiteral64Constant(), 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(), eat16Bytes(), 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(), expandBufferLoadIntrinsic(), expandSGPRCopy(), llvm::SimpleBitstreamCursor::fillCurWord(), llvm::ThreadSafeTrieRawHashMap< T, NumHashBytes >::find(), findBestNonTrivialUnswitchCandidate(), FindFirstNonCommonLetter(), llvm::FindInsertedValue(), findLiveReferences(), llvm::wholeprogramdevirt::findLowestOffset(), FindSequence(), llvm::lto::findThinLTOModule(), llvm::X86_MC::findX86_64PltEntries(), llvm::X86_MC::findX86PltEntries(), fixupOrderingIndices(), llvm::InstCombinerImpl::foldAggregateConstructionIntoAggregateReuse(), FoldBUILD_VECTOR(), foldCONCAT_VECTORS(), llvm::SelectionDAG::FoldConstantArithmetic(), llvm::SelectionDAG::foldConstantFPMath(), foldInlineAsmMemOperand(), llvm::TargetInstrInfo::foldMemoryOperand(), llvm::AArch64InstrInfo::foldMemoryOperandImpl(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), llvm::X86InstrInfo::foldMemoryOperandImpl(), foldSwitchToSelect(), llvm::InstCombinerImpl::foldVectorBinop(), llvm::codeview::forEachCodeViewRecord(), llvm::codeview::detail::GuidAdapter::format(), formSplatFromShuffles(), llvm::CodeViewYAML::fromDebugH(), llvm::fullyRecomputeLiveIns(), llvm::slpvectorizer::BoUpSLP::ShuffleCostEstimator::gather(), gatherPossiblyVectorizableLoads(), GenerateFixedLengthSVETBL(), generateNewInstTree(), llvm::CondOpInit::get(), llvm::DagInit::get(), llvm::AttributeList::get(), llvm::ConstantDataArray::get(), llvm::ConstantDataVector::get(), llvm::Attribute::get(), llvm::InstrProfCorrelator::get(), llvm::gsym::GsymReader::getAddressInfoOffset(), llvm::gsym::GsymReader::getAddrOffsets(), llvm::RecordKeeper::getAllDerivedDefinitions(), getAltInstrMask(), llvm::getBitcodeFileContents(), llvm::BitcodeModule::getBuffer(), getBuildDwordsVector(), llvm::codeview::getBytesAsCharacters(), llvm::irsymtab::Reader::getComdatTable(), llvm::object::ResourceSectionRef::getContents(), llvm::objcopy::elf::SRecord::getCount(), llvm::cas::builtin::BuiltinCAS::getDataSize(), llvm::object::COFFObjectFile::getDebugPDBInfo(), llvm::getDeinterleavedVectorType(), llvm::irsymtab::Reader::getDependentLibraries(), llvm::getDescImpl(), llvm::object::ELFFile< ELFT >::getEntry(), llvm::codeview::VFTableShapeRecord::getEntryCount(), getExpressionFrameOffset(), llvm::MachineFunction::getFilterIDFor(), llvm::CCState::getFirstUnallocated(), getFoldedOpcode(), llvm::ConstantDataArray::getFP(), llvm::ConstantDataVector::getFP(), llvm::SelectionDAG::getGatherVP(), llvm::ConstantExpr::getGetElementPtr(), getHalfShuffleMask(), llvm::sys::detail::getHostCPUNameForARM(), getHostCPUNameForARMFromComponents(), llvm::TrieHashIndexGenerator::getIndex(), llvm::AArch64Disassembler::getInstruction(), llvm::AMDGPUDisassembler::getInstruction(), llvm::BasicTTIImplBase< T >::getInterleavedMemoryOpCost(), llvm::HexagonTTIImpl::getInterleavedMemoryOpCost(), llvm::X86TTIImpl::getInterleavedMemoryOpCost(), llvm::X86TTIImpl::getInterleavedMemoryOpCostAVX512(), llvm::Intrinsic::getIntrinsicInfoTableEntries(), getLEB128(), llvm::PBQP::Vector::getLength(), llvm::BinaryByteStream::getLength(), llvm::SelectionDAG::getMaskedGather(), llvm::SelectionDAG::getMaskedHistogram(), llvm::SelectionDAG::getMaskedScatter(), getMaxCalleeSavedReg(), llvm::MMRAMetadata::getMD(), llvm::DebugLoc::getMergedLocations(), llvm::DILocation::getMergedLocations(), llvm::SelectionDAG::getMergeValues(), llvm::SelectionDAG::getNode(), getNoopInput(), llvm::TrieHashIndexGenerator::getNumBits(), llvm::irsymtab::Reader::getNumModules(), llvm::opt::OptTable::getNumOptions(), getOpenFileImpl(), llvm::AllocationOrder::getOrderLimitEnd(), getOrSelfReference(), llvm::HvxSelector::getPerfectCompletions(), getPropIndex(), llvm::AArch64RegisterInfo::getRegAllocationHints(), llvm::MachineTraceMetrics::Trace::getResourceDepth(), llvm::MachineTraceMetrics::Trace::getResourceLength(), llvm::lto::LTO::getRuntimeLibcallSymbols(), getSameOpcode(), llvm::SystemZTTIImpl::getScalarizationOverhead(), llvm::SelectionDAG::getScatterVP(), llvm::object::WasmObjectFile::getSectionSize(), llvm::getShuffleMaskWithWidestElts(), getShufflevectorNumGroups(), llvm::objcopy::elf::SRecord::getSize(), getStatepointArgs(), getStatepointBundles(), llvm::RegPressureTracker::getUpwardPressureDelta(), getUUID(), llvm::SelectionDAG::getVTList(), llvm::ConstantExpr::getWithOperands(), llvm::CodeViewYAML::GlobalHash::GlobalHash(), growShuffleMask(), handleAllocSite(), llvm::MipsTargetLowering::HandleByVal(), llvm::cas::BuiltinObjectHasher< HasherT >::hashObject(), llvm::pdb::hashStringV2(), hasSupportedLoopDepth(), llvm::mustache::hasTextAhead(), llvm::hasUTF16ByteOrderMark(), hasUTF8ByteOrderMark(), shuffles::hi(), llvm::TrieHashIndexGenerator::hint(), llvm::object::MinidumpFile::Memory64Iterator::inc(), incomingValuesAreCompatible(), llvm::coro::AnyRetconABI::init(), llvm::MachineInstr::insert(), llvm::ThreadSafeTrieRawHashMapBase::insert(), llvm::LanaiInstrInfo::insertBranch(), insertCandidatesWithPendingInjections(), llvm::insertMultibyteShift(), llvm::SystemZInstrInfo::insertSelect(), llvm::CallLowering::insertSRetLoads(), llvm::CallLowering::insertSRetStores(), llvm::X86TTIImpl::instCombineIntrinsic(), interleaveVectors(), llvm::inversePermutation(), llvm::GCNTTIImpl::isAlwaysUniform(), llvm::sampleprof::SampleContext::isBaseContext(), isBigEndian(), llvm::omp::isCompositeConstruct(), isFixedVectorShuffle(), isFreeConcat(), llvm::slpvectorizer::BoUpSLP::isIdentityOrder(), llvm::GCNTTIImpl::isInlineAsmSourceOfDivergence(), llvm::slpvectorizer::BoUpSLP::isLoadCombineCandidate(), isMaskedLoadCompress(), llvm::ConstantRangeList::isOrderedRanges(), isReplicationMaskWithParams(), isReverseOrder(), isShuffleEquivalent(), llvm::SimpleBitstreamCursor::isSizePlausible(), isStrictSubset(), isStridedLoad(), isSubset(), isSwitchDense(), isTargetShuffleEquivalent(), llvm::SelectionDAG::isUndef(), llvm::codeview::CVRecord< Kind >::kind(), layoutCOFF(), 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(), lowerBitreverseShuffle(), 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::AArch64TargetLowering::lowerInterleaveIntrinsicToStore(), llvm::RISCVTargetLowering::lowerInterleaveIntrinsicToStore(), 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::CombinerHelper::matchShuffleUndefRHS(), matchSubIntegerPackFromVector(), memOpsHaveSameBaseOperands(), llvm::object::MinidumpFile::MemoryInfoIterator::MemoryInfoIterator(), mergeCompatibleInvokes(), mergeCompatibleInvokesImpl(), mergeConsecutivePartStores(), mergeVectorRegsToResultRegs(), llvm::object::MachOChainedFixupEntry::moveNext(), multikeySort(), needsConstrainedOpcode(), llvm::TrieHashIndexGenerator::next(), nextByte(), nextLEB(), llvm::object::MinidumpFile::MemoryInfoIterator::operator*(), llvm::PBQP::Vector::operator+=(), llvm::sampleprof::SampleContext::operator<(), CallSiteEntry::operator==(), llvm::ConstantExprKeyType::operator==(), llvm::object::MinidumpFile::MemoryInfoIterator::operator==(), llvm::PBQP::Vector::operator[](), optimizeDwarfOperations(), llvm::slpvectorizer::BoUpSLP::optimizeGatherSequence(), packSegmentMask(), llvm::ELFCompactAttrParser::parse(), llvm::object::DirectX::PSVRuntimeInfo::parse(), parseImmediate(), llvm::ELFCompactAttrParser::parseStringAttribute(), peek(), llvm::AsmLexer::peekTokens(), performBlockTailMerging(), llvm::performOptimizedStructLayout(), populateReductionFunction(), llvm::SystemZInstrInfo::PredicateInstruction(), llvm::prepareTempFiles(), llvm::BitcodeAnalyzer::printStats(), llvm::processShuffleMasks(), llvm::AttributeImpl::Profile(), ProfileCondOpInit(), ProfileRecordRecTy(), llvm::PrologEpilogSGPRSpillBuilder::PrologEpilogSGPRSpillBuilder(), llvm::propagateMetadata(), llvm::coverage::RawCoverageMappingReader::read(), llvm::detail::BCRecordCoding< ElementTy >::read(), readBinaryIdsInternal(), llvm::orc::InProcessMemoryAccess::readBuffersAsync(), llvm::AppendingBinaryByteStream::readBytes(), llvm::BinaryStreamReader::readCString(), llvm::jitlink::CompactUnwindTraits< CRTPImpl, PtrSize >::readEncoding(), llvm::BinaryStreamReader::readFixedString(), readInstruction16(), readInstruction24(), readInstruction32(), readInstruction64(), llvm::BinaryStreamReader::readLongestContiguousChunk(), llvm::BinaryStreamRef::readLongestContiguousChunk(), llvm::jitlink::CompactUnwindTraits< CRTPImpl, PtrSize >::readPCRangeSize(), llvm::orc::InProcessMemoryAccess::readPointersAsync(), llvm::orc::InProcessMemoryAccess::readStringsAsync(), llvm::orc::InProcessMemoryAccess::readUInt16sAsync(), llvm::orc::InProcessMemoryAccess::readUInt32sAsync(), llvm::orc::InProcessMemoryAccess::readUInt64sAsync(), llvm::orc::InProcessMemoryAccess::readUInt8sAsync(), llvm::readWideAPInt(), llvm::SDPatternMatch::ReassociatableOpc_match< PatternTs >::reassociatableMatchHelper(), rebuildLoopAfterUnswitch(), llvm::BuildVectorSDNode::recastRawBits(), llvm::recognizeBSwapOrBitReverseIdiom(), recomputeLiveInValues(), llvm::Attributor::registerFunctionSignatureRewrite(), llvm::jitlink::relaxBlock(), llvm::slpvectorizer::BoUpSLP::reorderBottomToTop(), llvm::slpvectorizer::BoUpSLP::reorderTopToBottom(), replicateMask(), llvm::PPCFrameLowering::restoreCalleeSavedRegisters(), llvm::Interpreter::runFunction(), llvm::MCJIT::runFunction(), llvm::SLPVectorizerPass::runImpl(), llvm::orc::ExecutionSession::runJITDispatchHandler(), llvm::IRTranslator::runOnMachineFunction(), SelectOpcodeFromVT(), llvm::orc::FDSimpleRemoteEPCTransport::sendMessage(), llvm::StableFunctionMapRecord::serialize(), LiveDebugValues::DbgValue::setDbgOpIDs(), llvm::jitlink::Block::setMutableContent(), llvm::SelectionDAG::setNodeMemRefs(), llvm::MCDecodedPseudoProbeInlineTree::setProbes(), setupBranchForGuard(), llvm::MCFragment::setVarContents(), llvm::SGPRSpillBuilder::SGPRSpillBuilder(), llvm::ShapeT::ShapeT(), shortBundleName(), llvm::AArch64InstrInfo::shouldClusterMemOps(), llvm::PPCInstrInfo::shouldClusterMemOps(), simplifyExtractValueInst(), simplifyGEPInst(), llvm::simplifyInstructionWithOperands(), simplifyInstructionWithOperands(), llvm::mca::SourceMgr::size(), llvm::objcopy::dxbc::Part::size(), llvm::objcopy::elf::SectionTableRef::size(), llvm::SimpleBitstreamCursor::SizeInBytes(), llvm::SimpleBitstreamCursor::skipToEnd(), llvm::sortPtrAccesses(), llvm::MSP430FrameLowering::spillCalleeSavedRegisters(), llvm::XtensaFrameLowering::spillCalleeSavedRegisters(), llvm::SIRegisterInfo::spillSGPR(), splitGlobal(), splitMask(), llvm::stable_hash_combine(), stackFrameIncludesInlinedCallStack(), llvm::BinaryByteStream::str(), llvm::codeview::CVRecord< Kind >::str_data(), StrengthenNoWrapFlags(), llvm::ARMBaseInstrInfo::SubsumesPredicate(), llvm::PPCInstrInfo::SubsumesPredicate(), llvm::SuffixTree::SuffixTree(), llvm::orc::SymbolLookupSet::SymbolLookupSet(), llvm::OpenMPIRBuilder::tileLoops(), llvm::objcopy::macho::MachOWriter::totalSize(), llvm::ConstantRangeListAttributeImpl::totalSizeToAlloc(), 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(), llvm::orc::writeMachOStruct(), writeSymbolMap(), writeUniversalArchsToStream(), llvm::object::writeUniversalBinaryToStream(), and writeWithCommas().
|
inline |
slice(n) - Chop off the first N elements of the array.
Definition at line 197 of file ArrayRef.h.
References N.
|
inline |
slice(n, m) - Chop off the first N elements of the array, and keep M elements in the array.
Definition at line 191 of file ArrayRef.h.
References assert(), data, N, and llvm::size().
Referenced by llvm::CCState::AllocateRegBlock(), buildNew(), buildTreeReduction(), llvm::slpvectorizer::BoUpSLP::canVectorizeLoads(), llvm::MachineInstr::cloneMergedMemRefs(), llvm::ConstantFoldExtractValueInstruction(), llvm::ConstantFoldInsertValueInstruction(), llvm::ConstantExprKeyType::create(), DecodeFixedType(), llvm::dlltoolDriverMain(), eat12Bytes(), eat16Bytes(), eatBytes(), llvm::SIFrameLowering::emitEntryFunctionPrologue(), llvm::FindInsertedValue(), llvm::wholeprogramdevirt::findLowestOffset(), llvm::ConstantExpr::getAsInstruction(), llvm::DebugLocStream::getBytes(), llvm::DebugLocStream::getComments(), llvm::DebugLocStream::getEntries(), llvm::MCFragment::getFixups(), getIndexedTypeInternal(), llvm::AMDGPUDisassembler::getInstruction(), llvm::ValueEnumerator::getMDStrings(), llvm::dxil::ValueEnumerator::getMDStrings(), llvm::ValueEnumerator::getNonMDStrings(), llvm::dxil::ValueEnumerator::getNonMDStrings(), llvm::opt::OptTable::Info::getPrefixOffsets(), llvm::object::MinidumpFile::getRawStream(), llvm::slpvectorizer::BoUpSLP::getReorderingData(), getShufflevectorNumGroups(), llvm::VPInterleaveRecipe::getStoredValues(), llvm::jitlink::Symbol::getSymbolContent(), llvm::SelectionDAG::getTokenFactor(), llvm::MCFragment::getVarContents(), llvm::MCFragment::getVarFixups(), llvm::ConstantExpr::getWithOperands(), llvm::pdb::hashStringV2(), llvm::codeview::GloballyHashedType::hashType(), isHorizontalBinOp(), isLexicographicallyPositive(), llvm::libDriverMain(), LowerAVXCONCAT_VECTORS(), lowerBUILD_VECTOR(), 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::slpvectorizer::BoUpSLP::VLOperands::reorder(), 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 231 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 224 of file ArrayRef.h.
References N, and llvm::size().
Referenced by llvm::slpvectorizer::BoUpSLP::ShuffleCostEstimator::adjustExtracts(), buildCopyFromRegs(), llvm::codeview::forEachCodeViewRecord(), llvm::slpvectorizer::BoUpSLP::ShuffleCostEstimator::gather(), llvm::AttributeList::get(), llvm::codeview::GloballyHashedType::hashType(), llvm::object::MinidumpFile::Memory64Iterator::inc(), llvm::sampleprof::SampleContext::isPrefixOf(), shuffles::lo(), optimizeVectorResizeWithIntegerBitCasts(), llvm::BinaryItemStream< T, Traits >::readBytes(), stackFrameIncludesInlinedCallStack(), llvm::pdb::typesetItemList(), llvm::InstCombinerImpl::visitGetElementPtrInst(), and writeWithCommas().
|
inline |
Return the first N elements of this Array that don't satisfy the given predicate.
Definition at line 245 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 239 of file ArrayRef.h.
References llvm::find_if_not().
|
inline |
Definition at line 276 of file ArrayRef.h.
References llvm::Length.
Referenced by combineDIExpressions().