LLVM 20.0.0git
|
#include "llvm/ADT/BitVector.h"
Classes | |
class | reference |
Public Types | |
using | size_type = unsigned |
typedef const_set_bits_iterator_impl< BitVector > | const_set_bits_iterator |
typedef const_set_bits_iterator | set_iterator |
Public Member Functions | |
const_set_bits_iterator | set_bits_begin () const |
const_set_bits_iterator | set_bits_end () const |
iterator_range< const_set_bits_iterator > | set_bits () const |
BitVector ()=default | |
BitVector default ctor - Creates an empty bitvector. | |
BitVector (unsigned s, bool t=false) | |
BitVector ctor - Creates a bitvector of specified number of bits. | |
bool | empty () const |
empty - Tests whether there are no bits in this bitvector. | |
size_type | size () const |
size - Returns the number of bits in this bitvector. | |
size_type | count () const |
count - Returns the number of bits which are set. | |
bool | any () const |
any - Returns true if any bit is set. | |
bool | all () const |
all - Returns true if all bits are set. | |
bool | none () const |
none - Returns true if none of the bits are set. | |
int | find_first_in (unsigned Begin, unsigned End, bool Set=true) const |
find_first_in - Returns the index of the first set / unset bit, depending on Set , in the range [Begin, End). | |
int | find_last_in (unsigned Begin, unsigned End) const |
find_last_in - Returns the index of the last set bit in the range [Begin, End). | |
int | find_first_unset_in (unsigned Begin, unsigned End) const |
find_first_unset_in - Returns the index of the first unset bit in the range [Begin, End). | |
int | find_last_unset_in (unsigned Begin, unsigned End) const |
find_last_unset_in - Returns the index of the last unset bit in the range [Begin, End). | |
int | find_first () const |
find_first - Returns the index of the first set bit, -1 if none of the bits are set. | |
int | find_last () const |
find_last - Returns the index of the last set bit, -1 if none of the bits are set. | |
int | find_next (unsigned Prev) const |
find_next - Returns the index of the next set bit following the "Prev" bit. | |
int | find_prev (unsigned PriorTo) const |
find_prev - Returns the index of the first set bit that precedes the the bit at PriorTo . | |
int | find_first_unset () const |
find_first_unset - Returns the index of the first unset bit, -1 if all of the bits are set. | |
int | find_next_unset (unsigned Prev) const |
find_next_unset - Returns the index of the next unset bit following the "Prev" bit. | |
int | find_last_unset () const |
find_last_unset - Returns the index of the last unset bit, -1 if all of the bits are set. | |
int | find_prev_unset (unsigned PriorTo) |
find_prev_unset - Returns the index of the first unset bit that precedes the bit at PriorTo . | |
void | clear () |
clear - Removes all bits from the bitvector. | |
void | resize (unsigned N, bool t=false) |
resize - Grow or shrink the bitvector. | |
void | reserve (unsigned N) |
BitVector & | set () |
BitVector & | set (unsigned Idx) |
BitVector & | set (unsigned I, unsigned E) |
set - Efficiently set a range of bits in [I, E) | |
BitVector & | reset () |
BitVector & | reset (unsigned Idx) |
BitVector & | reset (unsigned I, unsigned E) |
reset - Efficiently reset a range of bits in [I, E) | |
BitVector & | flip () |
BitVector & | flip (unsigned Idx) |
reference | operator[] (unsigned Idx) |
bool | operator[] (unsigned Idx) const |
bool | back () const |
Return the last element in the vector. | |
bool | test (unsigned Idx) const |
void | push_back (bool Val) |
void | pop_back () |
Pop one bit from the end of the vector. | |
bool | anyCommon (const BitVector &RHS) const |
Test if any common bits are set. | |
bool | operator== (const BitVector &RHS) const |
bool | operator!= (const BitVector &RHS) const |
BitVector & | operator&= (const BitVector &RHS) |
Intersection, union, disjoint union. | |
BitVector & | reset (const BitVector &RHS) |
reset - Reset bits that are set in RHS. Same as *this &= ~RHS. | |
bool | test (const BitVector &RHS) const |
test - Check if (This - RHS) is zero. | |
BitVector & | operator|= (const BitVector &RHS) |
BitVector & | operator^= (const BitVector &RHS) |
BitVector & | operator>>= (unsigned N) |
BitVector & | operator<<= (unsigned N) |
void | swap (BitVector &RHS) |
void | invalid () |
bool | isInvalid () const |
ArrayRef< BitWord > | getData () const |
void | setBitsInMask (const uint32_t *Mask, unsigned MaskWords=~0u) |
setBitsInMask - Add '1' bits from Mask to this vector. | |
void | clearBitsInMask (const uint32_t *Mask, unsigned MaskWords=~0u) |
clearBitsInMask - Clear any bits in this vector that are set in Mask. | |
void | setBitsNotInMask (const uint32_t *Mask, unsigned MaskWords=~0u) |
setBitsNotInMask - Add a bit to this vector for every '0' bit in Mask. | |
void | clearBitsNotInMask (const uint32_t *Mask, unsigned MaskWords=~0u) |
clearBitsNotInMask - Clear a bit in this vector for every '0' bit in Mask. | |
size_type | getMemorySize () const |
Return the size (in bytes) of the bit vector. | |
size_type | getBitCapacity () const |
Static Public Member Functions | |
template<class F , class... ArgTys> | |
static BitVector & | apply (F &&f, BitVector &Out, BitVector const &Arg, ArgTys const &...Args) |
Definition at line 82 of file BitVector.h.
Definition at line 131 of file BitVector.h.
Definition at line 132 of file BitVector.h.
using llvm::BitVector::size_type = unsigned |
Definition at line 96 of file BitVector.h.
|
default |
BitVector default ctor - Creates an empty bitvector.
BitVector ctor - Creates a bitvector of specified number of bits.
All bits are initialized to the specified value.
Definition at line 149 of file BitVector.h.
|
inline |
all - Returns true if all bits are set.
Definition at line 175 of file BitVector.h.
Referenced by llvm::SmallBitVector::all(), isInterestingPHIIncomingValue(), and matchIndexAsShuffle().
|
inline |
any - Returns true if any bit is set.
Definition at line 170 of file BitVector.h.
References llvm::any_of().
Referenced by llvm::SmallBitVector::any(), llvm::AggressiveAntiDepBreaker::BreakAntiDependencies(), llvm::SIFrameLowering::determineCalleeSavesSGPR(), llvm::SIFrameLowering::determinePrologEpilogSGPRSaves(), llvm::PPCRegisterInfo::eliminateFrameIndex(), llvm::AArch64Subtarget::hasCustomCallingConv(), and none().
Test if any common bits are set.
Definition at line 489 of file BitVector.h.
References RHS.
Referenced by llvm::SmallBitVector::anyCommon(), and llvm::rdf::RegisterAggr::hasAliasOf().
|
inlinestatic |
Definition at line 552 of file BitVector.h.
References llvm::all_of(), assert(), E, I, resize(), size(), and llvm::SmallVectorBase< Size_T >::size().
Referenced by llvm::IndexedInstrProfReader::getFunctionBitmap().
|
inline |
Return the last element in the vector.
Definition at line 456 of file BitVector.h.
|
inline |
clear - Removes all bits from the bitvector.
Definition at line 335 of file BitVector.h.
Referenced by llvm::LiveIntervals::checkRegMaskInterference(), llvm::LiveRegMatrix::checkRegMaskInterference(), llvm::FunctionLoweringInfo::clear(), llvm::SplitAnalysis::clear(), llvm::SIMachineFunctionInfo::clearNonWWMRegAllocMask(), llvm::ScheduleDAGMILive::computeDFSResult(), llvm::BuildVectorSDNode::getRepeatedSequence(), llvm::BuildVectorSDNode::getSplatValue(), llvm::SpillPlacement::prepare(), llvm::BuildVectorSDNode::recastRawBits(), llvm::LiveRangeCalc::resetLiveOutMap(), and scavengeStackSlot().
clearBitsInMask - Clear any bits in this vector that are set in Mask.
Don't resize. This computes "*this &= ~Mask".
Definition at line 713 of file BitVector.h.
Referenced by llvm::SmallBitVector::clearBitsInMask(), llvm::SIFrameLowering::determineCalleeSaves(), and llvm::SIFrameLowering::determineCalleeSavesSGPR().
clearBitsNotInMask - Clear a bit in this vector for every '0' bit in Mask.
Don't resize. This computes "*this &= Mask".
Definition at line 725 of file BitVector.h.
Referenced by llvm::LiveIntervals::checkRegMaskInterference(), llvm::SmallBitVector::clearBitsNotInMask(), and llvm::SIFrameLowering::determineCalleeSaves().
|
inline |
count - Returns the number of bits which are set.
Definition at line 162 of file BitVector.h.
References llvm::popcount().
Referenced by llvm::pdb::UDTLayoutBase::addChildToLayout(), llvm::SwitchCG::SwitchLowering::buildBitTests(), llvm::SmallBitVector::count(), llvm::pdb::LayoutItemBase::deepPaddingSize(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::SwitchCG::SwitchLowering::findBitTestClusters(), llvm::BasicTTIImplBase< T >::getInterleavedMemoryOpCost(), llvm::SystemZTTIImpl::getInterleavedMemoryOpCost(), llvm::msf::MSFBuilder::getNumFreeBlocks(), llvm::AArch64Subtarget::getNumXRegisterReserved(), llvm::pdb::ClassLayout::immediatePadding(), isStrictSubset(), lowerBuildVectorAsBroadcast(), llvm::SystemZRegisterInfo::shouldCoalesce(), and llvm::rdf::RegisterAggr::size().
|
inline |
empty - Tests whether there are no bits in this bitvector.
Definition at line 156 of file BitVector.h.
Referenced by assignCalleeSavedSpillSlots(), back(), llvm::LiveRegMatrix::checkRegMaskInterference(), llvm::CodeGenCoverage::emit(), llvm::SmallBitVector::empty(), llvm::SIRegisterInfo::getReservedRegs(), operator<<=(), operator>>=(), pop_back(), and llvm::SIFrameLowering::processFunctionBeforeFrameFinalized().
|
inline |
find_first - Returns the index of the first set bit, -1 if none of the bits are set.
Definition at line 300 of file BitVector.h.
References find_first_in().
Referenced by llvm::HexagonFrameLowering::assignCalleeSavedSpillSlots(), llvm::PPCFrameLowering::assignCalleeSavedSpillSlots(), dump_registers(), llvm::SmallBitVector::find_first(), llvm::Mips16InstrInfo::loadImmediate(), llvm::rdf::RegisterAggr::makeRegRef(), needsStackFrame(), llvm::rdf::RegisterAggr::ref_iterator::ref_iterator(), and scavengeStackSlot().
find_first_in - Returns the index of the first set / unset bit, depending on Set
, in the range [Begin, End).
Returns -1 if all bits in the range are unset / set.
Definition at line 195 of file BitVector.h.
References assert(), llvm::countr_zero(), and End.
Referenced by find_first(), find_first_unset_in(), and find_next().
|
inline |
find_first_unset - Returns the index of the first unset bit, -1 if all of the bits are set.
Definition at line 316 of file BitVector.h.
References find_first_unset_in().
Referenced by llvm::SmallBitVector::find_first_unset().
find_first_unset_in - Returns the index of the first unset bit in the range [Begin, End).
Returns -1 if all bits in the range are set.
Definition at line 261 of file BitVector.h.
References End, and find_first_in().
Referenced by find_first_unset(), find_next_unset(), and removeRedundantDbgLocsUsingBackwardScan().
|
inline |
find_last - Returns the index of the last set bit, -1 if none of the bits are set.
Definition at line 304 of file BitVector.h.
References find_last_in().
Referenced by llvm::SmallBitVector::find_last(), llvm::pdb::UDTLayoutBase::initializeChildren(), and llvm::pdb::LayoutItemBase::tailPadding().
find_last_in - Returns the index of the last set bit in the range [Begin, End).
Returns -1 if all bits in the range are unset.
Definition at line 230 of file BitVector.h.
References assert(), llvm::countl_zero(), and End.
Referenced by find_last(), and find_prev().
|
inline |
find_last_unset - Returns the index of the last unset bit, -1 if all of the bits are set.
Definition at line 326 of file BitVector.h.
References find_last_unset_in().
Referenced by llvm::SmallBitVector::find_last_unset().
find_last_unset_in - Returns the index of the last unset bit in the range [Begin, End).
Returns -1 if all bits in the range are set.
Definition at line 267 of file BitVector.h.
References assert(), llvm::countl_one(), and End.
Referenced by find_last_unset(), and find_prev_unset().
|
inline |
find_next - Returns the index of the next set bit following the "Prev" bit.
Returns -1 if the next set bit is not found.
Definition at line 308 of file BitVector.h.
References find_first_in().
Referenced by llvm::HexagonFrameLowering::assignCalleeSavedSpillSlots(), dump_registers(), llvm::SmallBitVector::find_next(), llvm::rdf::RegisterAggr::makeRegRef(), needsStackFrame(), llvm::rdf::RegisterAggr::ref_iterator::ref_iterator(), and scavengeStackSlot().
|
inline |
find_next_unset - Returns the index of the next unset bit following the "Prev" bit.
Returns -1 if all remaining bits are set.
Definition at line 320 of file BitVector.h.
References find_first_unset_in().
Referenced by llvm::SmallBitVector::find_next_unset().
|
inline |
find_prev - Returns the index of the first set bit that precedes the the bit at PriorTo
.
Returns -1 if all previous bits are unset.
Definition at line 312 of file BitVector.h.
References find_last_in().
Referenced by llvm::SmallBitVector::find_prev().
|
inline |
find_prev_unset - Returns the index of the first unset bit that precedes the bit at PriorTo
.
Returns -1 if all previous bits are set.
Definition at line 330 of file BitVector.h.
References find_last_unset_in().
|
inline |
Definition at line 431 of file BitVector.h.
Referenced by llvm::SmallBitVector::flip(), and llvm::rdf::PhysicalRegisterInfo::PhysicalRegisterInfo().
Definition at line 438 of file BitVector.h.
References Idx.
|
inline |
Definition at line 832 of file BitVector.h.
Referenced by push_back().
|
inline |
Definition at line 691 of file BitVector.h.
Referenced by llvm::SmallBitVector::getData(), and llvm::coverage::MCDCRecord::TestVector::getIndex().
|
inline |
Return the size (in bytes) of the bit vector.
Definition at line 831 of file BitVector.h.
|
inline |
Definition at line 685 of file BitVector.h.
References assert().
|
inline |
Definition at line 689 of file BitVector.h.
|
inline |
none - Returns true if none of the bits are set.
Definition at line 188 of file BitVector.h.
References any().
Referenced by llvm::AggressiveAntiDepBreaker::AggressiveAntiDepBreaker(), llvm::PPCFrameLowering::assignCalleeSavedSpillSlots(), combineGatherScatter(), llvm::PPCRegisterInfo::eliminateFrameIndex(), llvm::LiveRegUnits::empty(), llvm::rdf::RegisterAggr::empty(), llvm::SelectionDAG::getVectorShuffle(), llvm::UnclusteredHighRPStage::initGCNSchedStage(), llvm::PreRARematStage::initGCNSchedStage(), llvm::isConstOrConstSplat(), llvm::isConstOrConstSplatFP(), llvm::SmallBitVector::none(), scavengeStackSlot(), and llvm::PPCFrameLowering::updateCalleeSaves().
Definition at line 506 of file BitVector.h.
References RHS.
Intersection, union, disjoint union.
Definition at line 509 of file BitVector.h.
Definition at line 630 of file BitVector.h.
References assert(), empty(), I, LLVM_UNLIKELY, and N.
Definition at line 499 of file BitVector.h.
Definition at line 581 of file BitVector.h.
References assert(), empty(), I, LLVM_UNLIKELY, and N.
Definition at line 444 of file BitVector.h.
Definition at line 449 of file BitVector.h.
|
inline |
|
inline |
Definition at line 466 of file BitVector.h.
References getBitCapacity(), resize(), and set().
Referenced by llvm::SIMachineFunctionInfo::allocateVGPRSpillToAGPR(), llvm::ScheduleDAGTopologicalSort::GetSubGraph(), and llvm::coverage::MCDCRecord::TestVector::push_back().
|
inline |
Definition at line 348 of file BitVector.h.
References N.
Referenced by llvm::SmallBitVector::reserve().
|
inline |
Definition at line 392 of file BitVector.h.
Referenced by llvm::ScheduleDAGTopologicalSort::AddPred(), llvm::msf::MSFBuilder::addStream(), llvm::PPCFrameLowering::assignCalleeSavedSpillSlots(), llvm::GCNSchedStage::checkScheduling(), llvm::LiveRegUnits::clear(), llvm::rdf::RegisterAggr::clear(), computeFreeStackSlots(), llvm::DeadLaneDetector::computeSubRegisterLaneBitInfo(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::BPFFrameLowering::determineCalleeSaves(), llvm::SIFrameLowering::determineCalleeSaves(), llvm::LanaiFrameLowering::determineCalleeSaves(), llvm::PPCFrameLowering::determineCalleeSaves(), llvm::XCoreFrameLowering::determineCalleeSaves(), llvm::SIFrameLowering::determineCalleeSavesSGPR(), determineFPRegsToClear(), llvm::GCNScheduleDAGMILive::finalizeSchedule(), llvm::SpillPlacement::finish(), llvm::CriticalAntiDepBreaker::FinishBlock(), llvm::TargetRegisterInfo::getAllocatableSet(), llvm::MachineFrameInfo::getPristineRegs(), llvm::ScheduleDAGTopologicalSort::GetSubGraph(), llvm::LiveRegUnits::init(), llvm::ScheduleDAGTopologicalSort::IsReachable(), llvm::Mips16InstrInfo::loadImmediate(), llvm::BuildVectorSDNode::recastRawBits(), llvm::LiveRegUnits::removeReg(), llvm::LiveRegUnits::removeRegsNotPreserved(), llvm::LiveRegUnits::removeUnits(), llvm::SmallBitVector::reset(), scavengeStackSlot(), llvm::SIMachineFunctionInfo::shiftWwmVGPRsToLowestRange(), llvm::CriticalAntiDepBreaker::StartBlock(), llvm::pdb::UDTLayoutBase::UDTLayoutBase(), and llvm::WebAssemblyFunctionInfo::unstackifyVReg().
reset - Reset bits that are set in RHS. Same as *this &= ~RHS.
Definition at line 526 of file BitVector.h.
References RHS.
reset - Efficiently reset a range of bits in [I, E)
Definition at line 403 of file BitVector.h.
References llvm::alignTo(), assert(), E, I, and size().
Definition at line 397 of file BitVector.h.
References Idx.
resize - Grow or shrink the bitvector.
Definition at line 341 of file BitVector.h.
References N.
Referenced by llvm::pdb::UDTLayoutBase::addChildToLayout(), llvm::msf::MSFBuilder::addStream(), llvm::ScheduleDAGTopologicalSort::AddSUnitWithoutPredecessors(), llvm::SIMachineFunctionInfo::allocateVGPRSpillToAGPR(), llvm::AIXCCState::AnalyzeCallOperands(), llvm::AIXCCState::AnalyzeFormalArguments(), apply(), llvm::pdb::BaseClassLayout::BaseClassLayout(), llvm::LiveIntervals::checkRegMaskInterference(), llvm::pdb::ClassLayout::ClassLayout(), llvm::ScheduleDAGMILive::computeDFSResult(), computeFreeStackSlots(), llvm::DeadLaneDetector::DeadLaneDetector(), llvm::HexagonFrameLowering::determineCalleeSaves(), llvm::TargetFrameLowering::determineCalleeSaves(), llvm::GCNScheduleDAGMILive::finalizeSchedule(), llvm::TargetFrameLowering::getCalleeSaves(), llvm::IndexedInstrProfReader::getFunctionBitmap(), llvm::BuildVectorSDNode::getRepeatedSequence(), llvm::BuildVectorSDNode::getSplatValue(), llvm::ScheduleDAGTopologicalSort::GetSubGraph(), llvm::LiveRegUnits::init(), llvm::ScheduleDAGTopologicalSort::InitDAGTopologicalSorting(), llvm::pdb::LayoutItemBase::LayoutItemBase(), llvm::MachineRegisterInfo::MachineRegisterInfo(), operator^=(), operator|=(), llvm::pdb::PDBFile::parseFileHeaders(), pop_back(), llvm::SpillPlacement::prepare(), push_back(), llvm::BuildVectorSDNode::recastRawBits(), llvm::CodeGenCoverage::reset(), llvm::LiveRangeCalc::resetLiveOutMap(), llvm::SmallBitVector::resize(), llvm::msf::MSFBuilder::setBlockMapAddr(), llvm::CodeGenCoverage::setCovered(), llvm::sandboxir::SeedBundle::setUsed(), llvm::SIRegisterInfo::SIRegisterInfo(), llvm::WebAssemblyFunctionInfo::stackifyVReg(), and llvm::pdb::UDTLayoutBase::UDTLayoutBase().
|
inline |
Definition at line 351 of file BitVector.h.
Referenced by llvm::AArch64Subtarget::AArch64Subtarget(), llvm::LiveRegUnits::addReg(), llvm::LiveRegUnits::addRegMasked(), llvm::LiveRegUnits::addRegsInMask(), addRegUnits(), llvm::omp::OMPContext::addTrait(), llvm::omp::VariantMatchInfo::addTrait(), llvm::SIMachineFunctionInfo::allocateVGPRSpillToAGPR(), applyBitsNotInRegMaskToRegUnitsMask(), assignCalleeSavedSpillSlots(), llvm::PPCFrameLowering::assignCalleeSavedSpillSlots(), llvm::pdb::BaseClassLayout::BaseClassLayout(), llvm::SwitchCG::SwitchLowering::buildBitTests(), llvm::TargetRegisterInfo::checkAllSuperRegsMarked(), checkNumAlignedDPRCS2Regs(), llvm::pdb::ClassLayout::ClassLayout(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::ARCFrameLowering::determineCalleeSaves(), llvm::ARMFrameLowering::determineCalleeSaves(), llvm::CSKYFrameLowering::determineCalleeSaves(), llvm::HexagonFrameLowering::determineCalleeSaves(), llvm::LoongArchFrameLowering::determineCalleeSaves(), llvm::Mips16FrameLowering::determineCalleeSaves(), llvm::RISCVFrameLowering::determineCalleeSaves(), llvm::SystemZELFFrameLowering::determineCalleeSaves(), llvm::SystemZXPLINKFrameLowering::determineCalleeSaves(), llvm::XtensaFrameLowering::determineCalleeSaves(), llvm::TargetFrameLowering::determineCalleeSaves(), llvm::AVRFrameLowering::determineCalleeSaves(), llvm::M68kFrameLowering::determineCalleeSaves(), llvm::PPCFrameLowering::determineCalleeSaves(), llvm::X86FrameLowering::determineCalleeSaves(), llvm::SIFrameLowering::determineCalleeSavesSGPR(), llvm::GCNScheduleDAGMILive::finalizeSchedule(), llvm::SwitchCG::SwitchLowering::findBitTestClusters(), llvm::TargetFrameLowering::getCalleeSaves(), llvm::ARMFrameLowering::getCalleeSaves(), llvm::BuildVectorSDNode::getConstantRawBits(), getInputSegmentList(), llvm::BasicTTIImplBase< T >::getInterleavedMemoryOpCost(), llvm::SystemZTTIImpl::getInterleavedMemoryOpCost(), llvm::IndexedMemProfReader::getMemProfCallerCalleePairs(), llvm::MachineFrameInfo::getPristineRegs(), llvm::ScheduleDAGTopologicalSort::GetSubGraph(), llvm::rdf::RegisterAggr::insert(), isInterestingPHIIncomingValue(), llvm::LiveRangeCalc::isJointlyDominated(), llvm::dwarf_linker::classic::DWARFLinker::link(), matchIndexAsShuffle(), llvm::omp::OMPContext::OMPContext(), llvm::memprof::CallerCalleePairExtractor::operator()(), llvm::BranchFolder::OptimizeFunction(), llvm::optimizeGlobalCtorsList(), llvm::rdf::PhysicalRegisterInfo::PhysicalRegisterInfo(), llvm::SIFrameLowering::processFunctionBeforeFrameFinalized(), processPSInputArgs(), push_back(), llvm::BuildVectorSDNode::recastRawBits(), removeRedundantDbgLocsUsingBackwardScan(), llvm::SmallBitVector::reserve(), llvm::PPCFrameLowering::restoreCalleeSavedRegisters(), llvm::ScheduleDAGMILive::schedule(), llvm::SmallBitVector::set(), setAliasRegs(), llvm::LiveRangeCalc::setLiveOutValue(), llvm::sandboxir::SeedBundle::setUsed(), llvm::SystemZRegisterInfo::shouldCoalesce(), llvm::SIRegisterInfo::SIRegisterInfo(), llvm::PPCFrameLowering::spillCalleeSavedRegisters(), llvm::WebAssemblyFunctionInfo::stackifyVReg(), and llvm::PPCFrameLowering::updateCalleeSaves().
set - Efficiently set a range of bits in [I, E)
Definition at line 364 of file BitVector.h.
References llvm::alignTo(), assert(), E, I, and size().
Definition at line 357 of file BitVector.h.
|
inline |
Definition at line 140 of file BitVector.h.
References llvm::make_range(), set_bits_begin(), and set_bits_end().
Referenced by llvm::AggressiveAntiDepBreaker::AggressiveAntiDepBreaker(), llvm::PPCFrameLowering::assignCalleeSavedSpillSlots(), llvm::Thumb1InstrInfo::copyPhysReg(), llvm::CodeGenCoverage::covered(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::CSKYFrameLowering::determineCalleeSaves(), llvm::CodeGenCoverage::emit(), llvm::TargetLoweringBase::findRepresentativeClass(), findTemporariesForLR(), llvm::SpillPlacement::finish(), getInputSegmentList(), llvm::IndexedMemProfReader::getMemProfCallerCalleePairs(), getVariantMatchScore(), isStrictSubset(), isVariantApplicableInContextHelper(), llvm::omp::OMPContext::OMPContext(), llvm::SIFrameLowering::processFunctionBeforeFrameFinalized(), and llvm::SpillPlacement::scanActiveBundles().
|
inline |
Definition at line 134 of file BitVector.h.
Referenced by set_bits(), and llvm::rdf::RegisterAggr::unit_begin().
|
inline |
Definition at line 137 of file BitVector.h.
Referenced by set_bits(), and llvm::rdf::RegisterAggr::unit_end().
setBitsInMask - Add '1' bits from Mask to this vector.
Don't resize. This computes "*this |= Mask".
Definition at line 707 of file BitVector.h.
Referenced by llvm::SIMachineFunctionInfo::allocateVGPRSpillToAGPR(), llvm::TargetLoweringBase::findRepresentativeClass(), and llvm::SmallBitVector::setBitsInMask().
setBitsNotInMask - Add a bit to this vector for every '0' bit in Mask.
Don't resize. This computes "*this |= ~Mask".
Definition at line 719 of file BitVector.h.
Referenced by llvm::SmallBitVector::setBitsNotInMask().
|
inline |
size - Returns the number of bits in this bitvector.
Definition at line 159 of file BitVector.h.
Referenced by llvm::pdb::UDTLayoutBase::addChildToLayout(), llvm::msf::MSFBuilder::addStream(), apply(), assignCalleeSavedSpillSlots(), llvm::PPCFrameLowering::assignCalleeSavedSpillSlots(), back(), llvm::pdb::LayoutItemBase::deepPaddingSize(), llvm::MachineRegisterInfo::freezeReservedRegs(), llvm::msf::MSFBuilder::generateLayout(), llvm::msf::MSFBuilder::getTotalBlockCount(), llvm::CodeGenCoverage::isCovered(), llvm::sandboxir::SeedBundle::isUsed(), llvm::WebAssemblyFunctionInfo::isVRegStackified(), operator==(), operator^=(), operator|=(), llvm::BranchFolder::OptimizeFunction(), pop_back(), llvm::coverage::MCDCRecord::TestVector::push_back(), llvm::BuildVectorSDNode::recastRawBits(), reset(), scavengeStackSlot(), set(), llvm::msf::MSFBuilder::setBlockMapAddr(), llvm::CodeGenCoverage::setCovered(), llvm::sandboxir::SeedBundle::setUsed(), llvm::SmallBitVector::size(), llvm::WebAssemblyFunctionInfo::stackifyVReg(), llvm::pdb::LayoutItemBase::tailPadding(), and llvm::WebAssemblyFunctionInfo::unstackifyVReg().
|
inline |
Definition at line 680 of file BitVector.h.
References RHS, and std::swap().
test - Check if (This - RHS) is zero.
This is the same as reset(RHS) and any().
Definition at line 536 of file BitVector.h.
References RHS.
Definition at line 461 of file BitVector.h.
References Idx.
Referenced by addLiveInRegs(), llvm::msf::MSFBuilder::addStream(), assignCalleeSavedSpillSlots(), llvm::LiveRegUnits::available(), llvm::AggressiveAntiDepBreaker::BreakAntiDependencies(), llvm::CriticalAntiDepBreaker::BreakAntiDependencies(), checkNumAlignedDPRCS2Regs(), llvm::LiveRegMatrix::checkRegMaskInterference(), commitFpm(), llvm::Thumb1InstrInfo::copyPhysReg(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::ARMFrameLowering::determineCalleeSaves(), llvm::CSKYFrameLowering::determineCalleeSaves(), llvm::RISCVFrameLowering::determineCalleeSaves(), llvm::SystemZELFFrameLowering::determineCalleeSaves(), llvm::PPCFrameLowering::determineCalleeSaves(), llvm::ARMFrameLowering::emitEpilogue(), findFreePredicateReg(), findTemporariesForLR(), llvm::LoongArchTargetLowering::getRegisterByName(), llvm::RISCVTargetLowering::getRegisterByName(), llvm::SIRegisterInfo::getReservedRegs(), llvm::ScheduleDAGTopologicalSort::GetSubGraph(), llvm::rdf::RegisterAggr::hasAliasOf(), llvm::rdf::RegisterAggr::hasCoverOf(), llvm::ARMBaseRegisterInfo::isAsmClobberable(), llvm::PPCRegisterInfo::isAsmClobberable(), TransferTracker::isCalleeSaved(), LiveDebugValues::InstrRefBasedLDV::isCalleeSavedReg(), llvm::PPCRegisterInfo::isCallerPreservedPhysReg(), llvm::DeadLaneDetector::isDefinedByCopy(), llvm::AIXCCState::isFixed(), llvm::MachineRegisterInfo::isPhysRegModified(), llvm::MachineRegisterInfo::isPhysRegUsed(), llvm::MachineRegisterInfo::isReserved(), isStrictSubset(), llvm::SplitAnalysis::isThroughBlock(), llvm::sandboxir::SeedBundle::isUsed(), isVariantApplicableInContextHelper(), llvm::WebAssemblyFunctionInfo::isVRegStackified(), llvm::rdf::RegisterAggr::makeRegRef(), llvm::memprof::CallerCalleePairExtractor::operator()(), llvm::BranchFolder::OptimizeFunction(), llvm::SIFrameLowering::processFunctionBeforeFrameFinalized(), removeGlobalCtors(), llvm::StackLifetime::run(), scavengeStackSlot(), llvm::ScheduleDAGMILive::schedule(), llvm::sandboxir::SeedBundle::setUsed(), llvm::AggressiveAntiDepBreaker::StartBlock(), llvm::CriticalAntiDepBreaker::StartBlock(), llvm::SmallBitVector::test(), and llvm::PPCFrameLowering::updateCalleeSaves().