LLVM
13.0.0git
|
#include "llvm/Support/LowLevelTypeImpl.h"
Public Member Functions | |
LLT (bool isPointer, bool isVector, uint16_t NumElements, unsigned SizeInBits, unsigned AddressSpace) | |
LLT () | |
LLT (MVT VT) | |
bool | isValid () const |
bool | isScalar () const |
bool | isPointer () const |
bool | isVector () const |
uint16_t | getNumElements () const |
Returns the number of elements in a vector LLT. More... | |
unsigned | getSizeInBits () const |
Returns the total size of the type. Must only be called on sized types. More... | |
unsigned | getSizeInBytes () const |
Returns the total size of the type in bytes, i.e. More... | |
LLT | getScalarType () const |
LLT | changeElementType (LLT NewEltTy) const |
If this type is a vector, return a vector with the same number of elements but the new element type. More... | |
LLT | changeElementSize (unsigned NewEltSize) const |
If this type is a vector, return a vector with the same number of elements but the new element size. More... | |
LLT | changeNumElements (unsigned NewNumElts) const |
Return a vector or scalar with the same element type and the new number of elements. More... | |
LLT | divide (int Factor) const |
Return a type that is Factor times smaller. More... | |
bool | isByteSized () const |
unsigned | getScalarSizeInBits () const |
unsigned | getAddressSpace () const |
LLT | getElementType () const |
Returns the vector's element type. Only valid for vector types. More... | |
void | print (raw_ostream &OS) const |
LLVM_DUMP_METHOD void | dump () const |
bool | operator== (const LLT &RHS) const |
bool | operator!= (const LLT &RHS) const |
Static Public Member Functions | |
static LLT | scalar (unsigned SizeInBits) |
Get a low-level scalar or aggregate "bag of bits". More... | |
static LLT | pointer (unsigned AddressSpace, unsigned SizeInBits) |
Get a low-level pointer in the given address space. More... | |
static LLT | vector (uint16_t NumElements, unsigned ScalarSizeInBits) |
Get a low-level vector of some number of elements and element width. More... | |
static LLT | vector (uint16_t NumElements, LLT ScalarTy) |
Get a low-level vector of some number of elements and element type. More... | |
static LLT | scalarOrVector (uint16_t NumElements, LLT ScalarTy) |
static LLT | scalarOrVector (uint16_t NumElements, unsigned ScalarSize) |
Friends | |
struct | DenseMapInfo< LLT > |
class | GISelInstProfileBuilder |
Definition at line 40 of file LowLevelTypeImpl.h.
|
inlineexplicit |
Definition at line 82 of file LowLevelTypeImpl.h.
References isPointer(), and isVector().
|
inlineexplicit |
Definition at line 86 of file LowLevelTypeImpl.h.
|
explicit |
Definition at line 18 of file LowLevelType.cpp.
References assert(), llvm::MVT::getSizeInBits(), llvm::MVT::getVectorElementType(), llvm::MVT::getVectorNumElements(), llvm::UnivariateLinearPolyBase< LeafTy >::isNonZero(), llvm::MVT::isValid(), and llvm::MVT::isVector().
|
inline |
If this type is a vector, return a vector with the same number of elements but the new element size.
Otherwise, return the new element type. Invalid for pointer types. For pointer types, use changeElementType.
Definition at line 134 of file LowLevelTypeImpl.h.
References assert(), getNumElements(), getScalarType(), isPointer(), isVector(), scalar(), and vector().
Referenced by llvm::SITargetLowering::getPreferredShiftAmountTy(), llvm::AMDGPULegalizerInfo::legalizeBufferLoad(), llvm::LegalizerHelper::lowerAddSubSatToAddoSubo(), llvm::LegalizerHelper::lowerBitCount(), llvm::LegalizerHelper::lowerFFloor(), llvm::LegalizerHelper::lowerIntrinsicRound(), llvm::LegalizerHelper::lowerMinMax(), llvm::LegalizerHelper::lowerShlSat(), llvm::LegalizerHelper::lowerSMULH_UMULH(), and llvm::LegalizeMutations::widenScalarOrEltToNextPow2().
If this type is a vector, return a vector with the same number of elements but the new element type.
Otherwise, return the new element type.
Definition at line 127 of file LowLevelTypeImpl.h.
References getNumElements(), isVector(), and vector().
Referenced by llvm::LegalizeMutations::changeElementSizeTo(), and llvm::LegalizeMutations::changeElementTo().
|
inline |
Return a vector or scalar with the same element type and the new number of elements.
Definition at line 143 of file LowLevelTypeImpl.h.
References getScalarType(), and scalarOrVector().
Referenced by applyDupLane(), getPow2VectorType(), llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(), llvm::LegalizationArtifactCombiner::tryFoldUnmergeCast(), and widenToNextPowerOf2().
Return a type that is Factor
times smaller.
Reduces the number of elements if this is a vector, or the bitwidth for scalar/pointers. Does not attempt to handle cases that aren't evenly divisible.
Definition at line 150 of file LowLevelTypeImpl.h.
References assert(), getElementType(), getNumElements(), getSizeInBits(), isVector(), scalar(), and scalarOrVector().
Referenced by llvm::AMDGPURegisterBankInfo::applyMappingLoad(), llvm::AMDGPURegisterBankInfo::applyMappingSBufferLoad(), and llvm::LegalizationArtifactCombiner::tryCombineUnmergeValues().
|
inline |
Definition at line 199 of file LowLevelTypeImpl.h.
References llvm::dbgs(), and print().
|
inline |
Definition at line 178 of file LowLevelTypeImpl.h.
References assert().
Referenced by llvm::AArch64LegalizerInfo::AArch64LegalizerInfo(), llvm::LegalizerHelper::coerceToScalar(), llvm::GISelKnownBits::computeKnownBitsImpl(), llvm::createMemLibcall(), llvm::InstructionSelector::executeMatchTable(), getElementType(), llvm::AMDGPURegisterBankInfo::getInstrAlternativeMappings(), llvm::AMDGPURegisterBankInfo::getInstrMappingForLoad(), llvm::AMDGPURegisterBankInfo::getValueMappingForPtr(), llvm::CallLowering::handleAssignments(), llvm::LegalityPredicates::isPointer(), llvm::AMDGPULegalizerInfo::legalizeAddrSpaceCast(), llvm::AMDGPULegalizerInfo::legalizeAtomicCmpXChg(), llvm::AMDGPULegalizerInfo::legalizeGlobalValue(), llvm::AMDGPULegalizerInfo::legalizeLoad(), llvm::LegalizerHelper::lowerExtractInsertVectorElt(), llvm::LegalizerHelper::lowerInsert(), llvm::LegalizerHelper::lowerMergeValues(), llvm::CombinerHelper::matchPtrAddZero(), print(), and vector().
|
inline |
Returns the vector's element type. Only valid for vector types.
Definition at line 188 of file LowLevelTypeImpl.h.
References assert(), getAddressSpace(), getScalarSizeInBits(), isVector(), pointer(), and scalar().
Referenced by llvm::AArch64LegalizerInfo::AArch64LegalizerInfo(), applyINS(), llvm::LegalizerHelper::bitcastExtractVectorElt(), llvm::LegalizerHelper::bitcastInsertVectorElt(), llvm::CSEMIRBuilder::buildConstant(), buildCopyFromRegs(), buildCopyToRegs(), llvm::CSEMIRBuilder::buildFConstant(), llvm::MachineIRBuilder::buildShuffleSplat(), llvm::MachineIRBuilder::buildShuffleVector(), llvm::LegalizationArtifactCombiner::canFoldMergeOpcode(), llvm::LegalizeRuleSet::clampMaxNumElements(), llvm::LegalizeRuleSet::clampMinNumElements(), llvm::LegalizeRuleSet::clampNumElements(), llvm::LegalizerHelper::coerceToScalar(), divide(), llvm::LegalityPredicates::elementTypeIs(), elementTypeIsLegal(), llvm::LegalizerHelper::fewerElementsVectorCasts(), llvm::LegalizerHelper::fewerElementsVectorCmp(), llvm::LegalizerHelper::fewerElementsVectorMulo(), llvm::LegalizerHelper::fewerElementsVectorSelect(), fewerEltsToSize64Vector(), llvm::AMDGPULegalizerInfo::fixStoreSourceType(), llvm::getGCDType(), getHalfSizedType(), llvm::getLCMType(), llvm::getMVTForLLT(), getScalarType(), llvm::LegalizerHelper::getVectorElementPointer(), getVectorSHLImm(), llvm::AMDGPURegisterBankInfo::handleD16VData(), llvm::AMDGPULegalizerInfo::handleD16VData(), isRegisterVectorType(), isSmallOddVector(), llvm::AMDGPULegalizerInfo::legalizeBVHIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeExtractVectorElt(), llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeInsertVectorElt(), loadStoreBitcastWorkaround(), llvm::LegalizerHelper::lowerBitcast(), llvm::LegalizerHelper::lowerExtract(), llvm::LegalizerHelper::lowerExtractInsertVectorElt(), llvm::LegalizerHelper::lowerInsert(), llvm::LegalizerHelper::lowerSelect(), llvm::LegalizerHelper::lowerShuffleVector(), matchDupLane(), llvm::CombinerHelper::matchExtractVecEltBuildVec(), llvm::LegalizeMutations::moreElementsToNextPow2(), moreEltsToNext32Bit(), oneMoreElement(), print(), shouldBitcastLoadStoreType(), splitUnequalType(), widen96To128(), and llvm::LegalizerHelper::widenScalar().
|
inline |
Returns the number of elements in a vector LLT.
Must only be called on vector types.
Definition at line 100 of file LowLevelTypeImpl.h.
References assert().
Referenced by applyDupLane(), llvm::AMDGPURegisterBankInfo::applyMappingImpl(), llvm::LegalizerHelper::bitcastExtractVectorElt(), llvm::LegalizerHelper::bitcastInsertVectorElt(), buildCopyFromRegs(), llvm::MachineIRBuilder::buildInstr(), llvm::MachineIRBuilder::buildShuffleSplat(), llvm::MachineIRBuilder::buildShuffleVector(), changeElementSize(), changeElementType(), clampDynamicVectorIndex(), llvm::LegalizeRuleSet::clampMaxNumElements(), llvm::LegalizeRuleSet::clampMinNumElements(), llvm::LegalizeRuleSet::clampNumElements(), llvm::GISelKnownBits::computeNumSignBits(), divide(), llvm::LegalizerHelper::fewerElementsVectorCasts(), llvm::LegalizerHelper::fewerElementsVectorCmp(), llvm::LegalizerHelper::fewerElementsVectorExtractInsertVectorElt(), llvm::LegalizerHelper::fewerElementsVectorMulo(), llvm::LegalizerHelper::fewerElementsVectorMultiEltType(), llvm::LegalizerHelper::fewerElementsVectorReductions(), llvm::LegalizerHelper::fewerElementsVectorSelect(), fewerEltsToSize64Vector(), llvm::AMDGPULegalizerInfo::fixStoreSourceType(), llvm::getGCDType(), getHalfSizedType(), llvm::GISelKnownBits::getKnownBits(), llvm::getLCMType(), llvm::getLLTForType(), llvm::getMVTForLLT(), getPow2VectorType(), getSizeInBits(), getTypeForLLT(), llvm::AMDGPURegisterBankInfo::handleD16VData(), llvm::AMDGPULegalizerInfo::handleD16VData(), isRegisterVectorType(), isSmallOddVector(), isWideVec16(), llvm::AMDGPULegalizerInfo::legalizeExtractVectorElt(), llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeInsertVectorElt(), llvm::LegalizerHelper::lowerBitcast(), llvm::AArch64CallLowering::lowerReturn(), llvm::LegalizerHelper::lowerShuffleVector(), llvm::CombinerHelper::matchCombineConcatVectors(), llvm::CombinerHelper::matchCombineInsertVecElts(), llvm::CombinerHelper::matchCombineShuffleVector(), matchDupLane(), matchEXT(), llvm::CombinerHelper::matchExtractAllEltsFromBuildVector(), llvm::CombinerHelper::matchExtractVecEltBuildVec(), matchINS(), matchREV(), matchTRN(), matchUZP(), matchZip(), llvm::LegalizeMutations::moreElementsToNextPow2(), llvm::LegalizerHelper::moreElementsVectorSrc(), mutationIsSane(), llvm::LegalizerHelper::narrowScalar(), numElementsNotEven(), llvm::LegalityPredicates::numElementsNotPow2(), oneMoreElement(), print(), llvm::LegalizerHelper::reduceOperationWidth(), llvm::LegalizationArtifactCombiner::tryFoldUnmergeCast(), llvm::MachineIRBuilder::validateSelectOp(), llvm::MachineIRBuilder::validateTruncExt(), llvm::LegalizerHelper::widenScalar(), and widenToNextPowerOf2().
|
inline |
Definition at line 163 of file LowLevelTypeImpl.h.
References assert().
Referenced by llvm::CombinerHelper::applyAshShlToSextInreg(), llvm::CombinerHelper::applyShiftImmedChain(), llvm::MachineIRBuilder::buildConstant(), buildCopyFromRegs(), buildCopyToRegs(), llvm::CallLowering::IncomingValueHandler::buildExtensionHint(), llvm::MachineIRBuilder::buildFConstant(), llvm::MachineIRBuilder::buildZExtInReg(), llvm::LegalizeMutations::changeElementSizeTo(), llvm::GISelKnownBits::computeKnownBitsImpl(), llvm::GISelKnownBits::computeNumSignBits(), llvm::ConstantFoldExtOp(), llvm::AMDGPURegisterBankInfo::executeInWaterfallLoop(), llvm::LegalizerHelper::fewerElementsVectorCmp(), llvm::LegalizerHelper::fewerElementsVectorSelect(), getElementType(), getMemsetValue(), getNarrowTypeBreakDown(), llvm::SITargetLowering::getPreferredShiftAmountTy(), getSizeInBits(), getTypeForLLT(), llvm::isKnownToBeAPowerOfTwo(), isVShiftRImm(), llvm::LegalizerHelper::lower(), llvm::LegalizerHelper::lowerAddSubSatToAddoSubo(), llvm::LegalizerHelper::lowerAddSubSatToMinMax(), llvm::LegalizerHelper::lowerBswap(), llvm::LegalizerHelper::lowerFCopySign(), llvm::LegalizerHelper::lowerFPTOSI(), llvm::LegalizerHelper::lowerFunnelShiftAsShifts(), llvm::LegalizerHelper::lowerFunnelShiftWithInverse(), llvm::LegalizerHelper::lowerRotate(), llvm::LegalizerHelper::lowerSelect(), llvm::LegalizerHelper::lowerShlSat(), llvm::LegalizerHelper::lowerSMULH_UMULH(), llvm::CombinerHelper::matchCombineAddP2IToPtrAdd(), llvm::CombinerHelper::matchCombineZextTrunc(), matchEXT(), llvm::CombinerHelper::matchNotCmp(), llvm::CombinerHelper::matchRedundantSExtInReg(), matchREV(), llvm::CombinerHelper::matchShiftImmedChain(), llvm::CombinerHelper::matchShiftOfShiftedLogic(), llvm::LegalizeRuleSet::maxScalarOrElt(), llvm::LegalizeRuleSet::minScalarOrElt(), llvm::LegalizeRuleSet::minScalarOrEltIf(), mutationIsSane(), llvm::LegalizerHelper::narrowScalar(), llvm::LegalizerHelper::narrowScalarShift(), print(), llvm::LegalityPredicates::scalarOrEltNarrowerThan(), llvm::LegalityPredicates::scalarOrEltSizeNotPow2(), llvm::LegalityPredicates::scalarOrEltWiderThan(), llvm::AMDGPURegisterBankInfo::selectStoreIntrinsic(), llvm::GISelKnownBits::signBitIsZero(), llvm::LegalizationArtifactCombiner::tryCombineZExt(), llvm::LegalizerHelper::widenScalar(), and llvm::LegalizeMutations::widenScalarOrEltToNextPow2().
|
inline |
Definition at line 121 of file LowLevelTypeImpl.h.
References getElementType(), and isVector().
Referenced by llvm::CombinerHelper::applyCombineInsertVecElts(), llvm::MachineIRBuilder::buildConstant(), buildCopyFromRegs(), llvm::MachineIRBuilder::buildFConstant(), changeElementSize(), changeNumElements(), llvm::LegalizerHelper::fewerElementsVectorMultiEltType(), getMemsetValue(), isWideVec16(), llvm::AMDGPULegalizerInfo::legalizeBufferLoad(), llvm::AMDGPULegalizerInfo::legalizeBufferStore(), llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(), llvm::LegalizerHelper::lowerFPTOSI(), llvm::LegalizerHelper::lowerFPTRUNC(), llvm::CombinerHelper::matchCombineConcatVectors(), llvm::CombinerHelper::matchPtrAddZero(), mutationIsSane(), llvm::LegalizerHelper::reduceOperationWidth(), and llvm::LegalizationArtifactCombiner::tryFoldUnmergeCast().
|
inline |
Returns the total size of the type. Must only be called on sized types.
Definition at line 109 of file LowLevelTypeImpl.h.
References getNumElements(), getScalarSizeInBits(), isPointer(), and isScalar().
Referenced by llvm::AArch64LegalizerInfo::AArch64LegalizerInfo(), llvm::SITargetLowering::allowsMisalignedMemoryAccesses(), llvm::CombinerHelper::applyCombineExtendingLoads(), llvm::CombinerHelper::applyCombineShiftToUnmerge(), llvm::CombinerHelper::applyCombineTruncOfExt(), llvm::CombinerHelper::applyCombineUnmergeWithDeadLanesToTrunc(), llvm::CombinerHelper::applyCombineUnmergeZExtToZExt(), AMDGPUPostLegalizerCombinerHelper::applyCvtF32UByteN(), llvm::RegisterBankInfo::applyDefaultMapping(), llvm::CombinerHelper::applyExtractVecEltBuildVec(), llvm::AMDGPURegisterBankInfo::applyMappingDynStackAlloc(), llvm::AMDGPURegisterBankInfo::applyMappingImpl(), llvm::AMDGPURegisterBankInfo::applyMappingLoad(), llvm::AMDGPURegisterBankInfo::applyMappingSBufferLoad(), llvm::CallLowering::IncomingValueHandler::assignValueToReg(), llvm::LegalizerHelper::bitcastExtractVectorElt(), llvm::LegalizerHelper::bitcastInsertVectorElt(), bitcastToVectorElement32(), buildBitFieldInsert(), buildCopyFromRegs(), buildCopyToRegs(), llvm::MachineIRBuilder::buildExtract(), llvm::MachineIRBuilder::buildFConstant(), llvm::MachineIRBuilder::buildLoadFromOffset(), llvm::MachineIRBuilder::buildMaskLowPtrBits(), llvm::AMDGPULegalizerInfo::buildPCRelGlobalAddress(), llvm::MachineIRBuilder::buildSequence(), llvm::MachineIRBuilder::buildUnmerge(), llvm::AMDGPURegisterBankInfo::buildVCopy(), llvm::LegalizationArtifactCombiner::canFoldMergeOpcode(), clampDynamicVectorIndex(), llvm::LegalizerHelper::coerceToScalar(), llvm::SITargetLowering::computeKnownBitsForTargetInstr(), llvm::GISelKnownBits::computeKnownBitsImpl(), llvm::CallLowering::ValueHandler::copyArgumentMemory(), llvm::createMemLibcall(), divide(), elementTypeIsLegal(), llvm::AMDGPURegisterBankInfo::executeInWaterfallLoop(), llvm::InstructionSelector::executeMatchTable(), llvm::CallLowering::ValueHandler::extendRegister(), llvm::LegalizerHelper::fewerElementsVectorImplicitDef(), llvm::LegalizerHelper::fewerElementsVectorSelect(), fewerEltsToSize64Vector(), findGISelOptimalMemOpLowering(), getBitcastRegisterType(), getBitcastWiderVectorElementOffset(), getCmpOperandFoldingProfit(), llvm::getConstantVRegValWithLookThrough(), getFloatTypeForLLT(), llvm::getFltSemanticForLLT(), llvm::getGCDType(), getHalfSizedType(), llvm::AMDGPULegalizerInfo::getImplicitArgPtr(), llvm::AMDGPURegisterBankInfo::getInstrAlternativeMappings(), llvm::ARMRegisterBankInfo::getInstrMapping(), llvm::MipsRegisterBankInfo::getInstrMapping(), llvm::X86RegisterBankInfo::getInstrMapping(), llvm::AArch64RegisterBankInfo::getInstrMapping(), llvm::AMDGPURegisterBankInfo::getInstrMapping(), llvm::AMDGPURegisterBankInfo::getInstrMappingForLoad(), llvm::getLCMType(), llvm::getMVTForLLT(), getNarrowTypeBreakDown(), llvm::X86GenRegisterBankInfo::getPartialMappingIdx(), getPow2ScalarType(), llvm::SIRegisterInfo::getRegClassForTypeOnBank(), llvm::SITargetLowering::getRegisterByName(), llvm::TargetRegisterInfo::getRegSizeInBits(), getSizeInBytes(), getTestBitReg(), getTypeForLLT(), llvm::AMDGPURegisterBankInfo::getValueMappingForPtr(), llvm::LegalizerHelper::getVectorElementPointer(), getVectorSHLImm(), isByteSized(), isLoadStoreSizeLegal(), isRegisterType(), isRegisterVectorElementType(), isRegisterVectorType(), isSmallOddVector(), isWideScalarTruncStore(), isWideVec16(), llvm::AMDGPULegalizerInfo::legalizeBufferLoad(), llvm::AMDGPULegalizerInfo::legalizeBufferStore(), llvm::AMDGPULegalizerInfo::legalizeBVHIntrinsic(), llvm::MipsLegalizerInfo::legalizeCustom(), llvm::ARMLegalizerInfo::legalizeCustom(), llvm::AMDGPULegalizerInfo::legalizeExtractVectorElt(), llvm::AMDGPULegalizerInfo::legalizeFrint(), llvm::AMDGPULegalizerInfo::legalizeGlobalValue(), llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeInsertVectorElt(), llvm::AMDGPULegalizerInfo::legalizeLoad(), llvm::AMDGPULegalizerInfo::legalizeSBufferLoad(), llvm::AMDGPULegalizerInfo::legalizeSDIV_SREM(), llvm::LegalizerHelper::libcall(), loadStoreBitcastWorkaround(), llvm::LegalizerHelper::lower(), llvm::LegalizerHelper::lowerBitCount(), llvm::LegalizerHelper::lowerBitreverse(), llvm::LegalizerHelper::lowerDynStackAlloc(), llvm::LegalizerHelper::lowerExtract(), llvm::LegalizerHelper::lowerFPTOUI(), llvm::InlineAsmLowering::lowerInlineAsm(), llvm::LegalizerHelper::lowerInsert(), llvm::LegalizerHelper::lowerLoad(), llvm::LegalizerHelper::lowerMergeValues(), llvm::AArch64CallLowering::lowerReturn(), llvm::LegalizerHelper::lowerSelect(), llvm::LegalizerHelper::lowerStore(), llvm::LegalizerHelper::lowerUnmergeValues(), matchAArch64MulConstCombine(), matchBitfieldExtractFromSExtInReg(), llvm::CombinerHelper::matchCombineExtendingLoads(), llvm::CombinerHelper::matchCombineShiftToUnmerge(), llvm::CombinerHelper::matchCombineTruncOfShl(), llvm::CombinerHelper::matchCombineUnmergeConstant(), llvm::CombinerHelper::matchCombineUnmergeMergeToPlainValues(), llvm::CombinerHelper::matchCombineUnmergeZExtToZExt(), matchDupLane(), matchExtractVecEltPairwiseAdd(), matchFConstantToConstant(), matchICmpRedundantTrunc(), llvm::CombinerHelper::matchLoadOrCombine(), llvm::CombinerHelper::matchNotCmp(), llvm::CombinerHelper::matchSextTruncSextLoad(), AMDGPUPostLegalizerCombinerHelper::matchUCharToFloat(), llvm::LegalizeRuleSet::maxScalar(), llvm::LegalizeRuleSet::maxScalarIf(), mergeVectorRegsToResultRegs(), llvm::LegalizeRuleSet::minScalar(), llvm::LegalizerHelper::moreElementsVector(), moreEltsToNext32Bit(), mutationIsSane(), llvm::LegalizerHelper::narrowScalar(), llvm::LegalizerHelper::narrowScalarAddSub(), llvm::LegalizerHelper::narrowScalarCTLZ(), llvm::LegalizerHelper::narrowScalarCTPOP(), llvm::LegalizerHelper::narrowScalarCTTZ(), llvm::LegalizerHelper::narrowScalarExtract(), llvm::LegalizerHelper::narrowScalarInsert(), llvm::LegalizerHelper::narrowScalarMul(), llvm::LegalizerHelper::narrowScalarShiftByConstant(), llvm::LegalizerHelper::reduceLoadStoreWidth(), llvm::LegalizerHelper::reduceOperationWidth(), llvm::InstructionSelect::runOnMachineFunction(), llvm::LegalityPredicates::scalarNarrowerThan(), llvm::LegalityPredicates::scalarWiderThan(), selectFPConvOpc(), selectMergeValues(), llvm::AMDGPURegisterBankInfo::selectStoreIntrinsic(), selectUnmergeValues(), setRegsToType(), shouldBitcastLoadStoreType(), sizeIsMultipleOf32(), llvm::LegalityPredicates::sizeNotPow2(), llvm::AMDGPURegisterBankInfo::split64BitValueForMapping(), splitUnequalType(), llvm::LegalizationArtifactCombiner::tryCombineAnyExt(), llvm::LegalizationArtifactCombiner::tryCombineExtract(), llvm::LegalizationArtifactCombiner::tryCombineSExt(), llvm::LegalizationArtifactCombiner::tryCombineTrunc(), llvm::LegalizationArtifactCombiner::tryCombineZExt(), llvm::LegalizationArtifactCombiner::tryFoldUnmergeCast(), llvm::MachineIRBuilder::validateTruncExt(), vector(), vectorSmallerThan(), vectorWiderThan(), widen96To128(), llvm::LegalizerHelper::widenScalar(), widenToNextPowerOf2(), and llvm::LegalizerHelper::widenWithUnmerge().
|
inline |
Returns the total size of the type in bytes, i.e.
number of whole bytes needed to represent the size in bits. Must only be called on sized types.
Definition at line 117 of file LowLevelTypeImpl.h.
References getSizeInBits().
Referenced by llvm::AArch64TargetLowering::allowsMisalignedMemoryAccesses(), llvm::MachineIRBuilder::buildLoadFromOffset(), findGISelOptimalMemOpLowering(), llvm::LegalizerHelper::getStackTemporaryAlignment(), llvm::CallLowering::insertSRetLoads(), llvm::CallLowering::insertSRetStores(), and llvm::LegalizerHelper::lowerExtractInsertVectorElt().
|
inline |
Definition at line 161 of file LowLevelTypeImpl.h.
References getSizeInBits().
Referenced by llvm::LegalizerInfo::getExtOpcodeForWideningConstant(), and llvm::LegalizerHelper::lowerExtractInsertVectorElt().
|
inline |
Definition at line 94 of file LowLevelTypeImpl.h.
References isValid().
Referenced by llvm::AArch64LegalizerInfo::AArch64LegalizerInfo(), llvm::MachineIRBuilder::buildAtomicCmpXchg(), llvm::MachineIRBuilder::buildAtomicCmpXchgWithSuccess(), llvm::MachineIRBuilder::buildAtomicRMW(), llvm::MachineIRBuilder::buildCast(), buildCopyFromRegs(), llvm::MachineIRBuilder::buildFConstant(), llvm::MachineIRBuilder::buildInstr(), changeElementSize(), llvm::LegalizerHelper::coerceToScalar(), llvm::GISelKnownBits::computeKnownBitsImpl(), llvm::createMemLibcall(), llvm::InstructionSelector::executeMatchTable(), llvm::MipsRegisterBankInfo::getInstrMapping(), llvm::X86GenRegisterBankInfo::getPartialMappingIdx(), getSizeInBits(), llvm::LegalityPredicates::isPointer(), LLT(), loadStoreBitcastWorkaround(), llvm::LegalizerHelper::lowerInsert(), llvm::LegalizerHelper::lowerMergeValues(), llvm::LegalizerHelper::lowerUnmergeValues(), llvm::CombinerHelper::matchPtrAddZero(), print(), llvm::MipsRegisterBankInfo::setRegBank(), llvm::AMDGPULegalizerInfo::splitBufferOffsets(), llvm::MachineIRBuilder::validateSelectOp(), vector(), and X86SelectAddress().
|
inline |
Definition at line 92 of file LowLevelTypeImpl.h.
References isValid().
Referenced by AMDGPUPostLegalizerCombinerHelper::applyCvtF32UByteN(), llvm::AMDGPURegisterBankInfo::applyMappingImpl(), llvm::MachineIRBuilder::buildAtomicCmpXchg(), llvm::MachineIRBuilder::buildAtomicCmpXchgWithSuccess(), llvm::MachineIRBuilder::buildAtomicRMW(), llvm::MachineIRBuilder::buildCast(), llvm::MachineIRBuilder::buildInstr(), llvm::LegalizeRuleSet::clampScalar(), llvm::LegalizerHelper::coerceToScalar(), getFloatTypeForLLT(), llvm::getFltSemanticForLLT(), llvm::MipsRegisterBankInfo::getInstrMapping(), llvm::X86GenRegisterBankInfo::getPartialMappingIdx(), getSizeInBits(), llvm::AMDGPULegalizerInfo::legalizeFMad(), llvm::AMDGPULegalizerInfo::legalizeFrint(), llvm::LegalizerHelper::lowerExtract(), llvm::LegalizerHelper::lowerInsert(), llvm::LegalizerHelper::lowerLoad(), llvm::LegalizerHelper::lowerSelect(), llvm::LegalizerHelper::lowerShuffleVector(), llvm::CombinerHelper::matchCombineExtendingLoads(), matchICmpRedundantTrunc(), llvm::MachineIRBuilder::materializePtrAdd(), llvm::LegalizeRuleSet::maxScalarIf(), llvm::LegalizerHelper::narrowScalarCTLZ(), llvm::LegalizerHelper::narrowScalarCTPOP(), llvm::LegalizerHelper::narrowScalarCTTZ(), print(), llvm::LegalityPredicates::scalarNarrowerThan(), llvm::LegalityPredicates::scalarWiderThan(), selectFPConvOpc(), llvm::LegalityPredicates::sizeNotPow2(), llvm::LegalizationArtifactCombiner::tryCombineTrunc(), llvm::LegalizationArtifactCombiner::tryFoldUnmergeCast(), llvm::MachineIRBuilder::validateBinaryOp(), llvm::MachineIRBuilder::validateSelectOp(), llvm::MachineIRBuilder::validateShiftOp(), llvm::MachineIRBuilder::validateTruncExt(), llvm::MachineIRBuilder::validateUnaryOp(), and llvm::LegalizerHelper::widenScalar().
|
inline |
Definition at line 90 of file LowLevelTypeImpl.h.
Referenced by llvm::GISelInstProfileBuilder::addNodeIDReg(), llvm::MIPatternMatch::bind_helper< LLT >::bind(), llvm::MachineIRBuilder::buildAtomicCmpXchg(), llvm::MachineIRBuilder::buildAtomicCmpXchgWithSuccess(), llvm::MachineIRBuilder::buildAtomicRMW(), llvm::MachineIRBuilder::buildExtract(), llvm::GISelKnownBits::computeKnownBitsImpl(), llvm::GISelKnownBits::computeNumSignBits(), llvm::MachineRegisterInfo::constrainRegAttrs(), llvm::getFunctionLiveInPhysReg(), llvm::AArch64RegisterBankInfo::getInstrMapping(), getNarrowTypeBreakDown(), llvm::AMDGPURegisterBankInfo::getRegBankFromRegClass(), llvm::TargetRegisterInfo::getRegSizeInBits(), llvm::MachineInstr::getTypeToPrint(), isPointer(), isScalar(), isVector(), print(), llvm::MachineOperand::print(), llvm::LegalizerHelper::reduceLoadStoreWidth(), llvm::InstructionSelect::runOnMachineFunction(), and unsupportedBinOp().
|
inline |
Definition at line 96 of file LowLevelTypeImpl.h.
References isValid().
Referenced by llvm::AArch64LegalizerInfo::AArch64LegalizerInfo(), llvm::CombinerHelper::applyCombineUnmergeWithDeadLanesToTrunc(), llvm::AMDGPURegisterBankInfo::applyMappingImpl(), llvm::AMDGPURegisterBankInfo::applyMappingLoad(), llvm::AMDGPURegisterBankInfo::applyMappingSBufferLoad(), llvm::LegalizerHelper::bitcast(), llvm::LegalizerHelper::bitcastExtractVectorElt(), llvm::LegalizerHelper::bitcastInsertVectorElt(), llvm::CSEMIRBuilder::buildConstant(), llvm::MachineIRBuilder::buildConstant(), buildCopyFromRegs(), buildCopyToRegs(), llvm::CSEMIRBuilder::buildFConstant(), llvm::MachineIRBuilder::buildFConstant(), llvm::MachineIRBuilder::buildInstr(), llvm::LegalizationArtifactCombiner::canFoldMergeOpcode(), changeElementSize(), changeElementType(), llvm::LegalizeRuleSet::clampMaxNumElements(), llvm::LegalizeRuleSet::clampMinNumElements(), llvm::LegalizerHelper::coerceToScalar(), llvm::GISelKnownBits::computeKnownBitsImpl(), llvm::GISelKnownBits::computeNumSignBits(), divide(), llvm::LegalityPredicates::elementTypeIs(), elementTypeIsLegal(), llvm::AMDGPURegisterBankInfo::executeInWaterfallLoop(), llvm::LegalizerHelper::fewerElementsVectorCasts(), llvm::LegalizerHelper::fewerElementsVectorCmp(), llvm::LegalizerHelper::fewerElementsVectorExtractInsertVectorElt(), llvm::LegalizerHelper::fewerElementsVectorMulo(), llvm::LegalizerHelper::fewerElementsVectorMultiEltType(), llvm::LegalizerHelper::fewerElementsVectorSelect(), findGISelOptimalMemOpLowering(), llvm::AMDGPULegalizerInfo::fixStoreSourceType(), getCmpOperandFoldingProfit(), getElementType(), llvm::getGCDType(), getHalfSizedType(), llvm::MipsRegisterBankInfo::getInstrMapping(), llvm::AArch64RegisterBankInfo::getInstrMapping(), llvm::GISelKnownBits::getKnownBits(), llvm::getLCMType(), getMemsetValue(), llvm::getMVTForLLT(), getNarrowTypeBreakDown(), getScalarType(), getTypeForLLT(), getVectorShiftImm(), llvm::AMDGPURegisterBankInfo::handleD16VData(), llvm::AMDGPULegalizerInfo::handleD16VData(), isRegisterType(), isSmallOddVector(), isVShiftRImm(), isWideScalarTruncStore(), llvm::AMDGPULegalizerInfo::legalizeAddrSpaceCast(), llvm::AMDGPULegalizerInfo::legalizeBufferLoad(), llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeLoad(), llvm::AMDGPULegalizerInfo::legalizeSBufferLoad(), LLT(), loadStoreBitcastWorkaround(), llvm::LegalizerHelper::lower(), llvm::LegalizerHelper::lowerBitcast(), llvm::LegalizerHelper::lowerExtract(), llvm::LegalizerHelper::lowerFPTRUNC_F64_TO_F16(), llvm::LegalizerHelper::lowerInsert(), llvm::LegalizerHelper::lowerLoad(), llvm::AArch64CallLowering::lowerReturn(), llvm::LegalizerHelper::lowerSelect(), llvm::LegalizerHelper::lowerShuffleVector(), llvm::LegalizerHelper::lowerStore(), llvm::CombinerHelper::matchCombineInsertVecElts(), llvm::CombinerHelper::matchCombineShiftToUnmerge(), llvm::CombinerHelper::matchCombineShuffleVector(), llvm::CombinerHelper::matchCombineUnmergeZExtToZExt(), llvm::CombinerHelper::matchExtendThroughPhis(), llvm::CombinerHelper::matchLoadOrCombine(), llvm::CombinerHelper::matchNotCmp(), llvm::CombinerHelper::matchPtrAddZero(), llvm::CombinerHelper::matchRedundantAnd(), llvm::CombinerHelper::matchRedundantOr(), llvm::CombinerHelper::matchSextInRegOfLoad(), llvm::CombinerHelper::matchSextTruncSextLoad(), matchVAshrLshrImm(), llvm::LegalizerHelper::moreElementsVector(), mutationIsSane(), llvm::LegalizerHelper::narrowScalar(), llvm::LegalizerHelper::narrowScalarAddSub(), llvm::LegalizerHelper::narrowScalarExt(), llvm::LegalizerHelper::narrowScalarExtract(), llvm::LegalizerHelper::narrowScalarInsert(), llvm::LegalizerHelper::narrowScalarMul(), llvm::LegalizerHelper::narrowScalarSelect(), llvm::LegalizerHelper::narrowScalarShift(), numElementsNotEven(), llvm::LegalityPredicates::numElementsNotPow2(), print(), llvm::LegalizerHelper::reduceOperationWidth(), shouldBitcastLoadStoreType(), splitUnequalType(), llvm::LegalizationArtifactCombiner::tryFoldUnmergeCast(), llvm::MachineIRBuilder::validateBinaryOp(), llvm::MachineIRBuilder::validateSelectOp(), llvm::MachineIRBuilder::validateShiftOp(), llvm::MachineIRBuilder::validateTruncExt(), llvm::MachineIRBuilder::validateUnaryOp(), vector(), vectorSmallerThan(), vectorWiderThan(), widen96To128(), llvm::LegalizerHelper::widenScalar(), and widenToNextPowerOf2().
Definition at line 210 of file LowLevelTypeImpl.h.
Definition at line 205 of file LowLevelTypeImpl.h.
|
inlinestatic |
Get a low-level pointer in the given address space.
Definition at line 50 of file LowLevelTypeImpl.h.
References assert().
Referenced by llvm::AArch64LegalizerInfo::AArch64LegalizerInfo(), addCallTargetOperands(), allocateHSAUserSGPRs(), llvm::SITargetLowering::allocateHSAUserSGPRs(), llvm::AMDGPULegalizerInfo::AMDGPULegalizerInfo(), llvm::ARMLegalizerInfo::ARMLegalizerInfo(), llvm::AMDGPULegalizerInfo::buildPCRelGlobalAddress(), llvm::LegalizerHelper::createStackTemporary(), getElementType(), llvm::getLLTForType(), llvm::AMDGPUFunctionArgInfo::getPreloadedValue(), llvm::AMDGPULegalizerInfo::getSegmentAperture(), llvm::CallLowering::insertSRetIncomingArgument(), llvm::CallLowering::insertSRetOutgoingArgument(), llvm::AMDGPULegalizerInfo::legalizeAddrSpaceCast(), llvm::AMDGPULegalizerInfo::legalizeGlobalValue(), llvm::MipsLegalizerInfo::legalizeIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeLoad(), llvm::AMDGPULegalizerInfo::legalizeTrapHsaQueuePtr(), llvm::MipsCallLowering::lowerCall(), llvm::MipsCallLowering::lowerFormalArguments(), llvm::AMDGPUCallLowering::lowerFormalArgumentsKernel(), and llvm::MipsLegalizerInfo::MipsLegalizerInfo().
void LLT::print | ( | raw_ostream & | OS | ) | const |
Definition at line 36 of file LowLevelType.cpp.
References assert(), getAddressSpace(), getElementType(), getNumElements(), getScalarSizeInBits(), isPointer(), isScalar(), isValid(), and isVector().
Referenced by dump(), and llvm::operator<<().
|
inlinestatic |
Get a low-level scalar or aggregate "bag of bits".
Definition at line 43 of file LowLevelTypeImpl.h.
References assert().
Referenced by llvm::AArch64LegalizerInfo::AArch64LegalizerInfo(), llvm::SITargetLowering::allocateSpecialEntryInputVGPRs(), allocateVGPR32Input(), llvm::AMDGPULegalizerInfo::AMDGPULegalizerInfo(), AMDGPUPreLegalizerCombinerHelper::applyClampI64ToI16(), llvm::CombinerHelper::applyCombineShiftToUnmerge(), llvm::CombinerHelper::applyCombineUnmergeWithDeadLanesToTrunc(), AMDGPUPostLegalizerCombinerHelper::applyCvtF32UByteN(), applyDupLane(), applyEXT(), applyExtractVecEltPairwiseAdd(), applyFoldGlobalOffset(), applyINS(), llvm::AMDGPURegisterBankInfo::applyMappingBFEIntrinsic(), llvm::AMDGPURegisterBankInfo::applyMappingDynStackAlloc(), llvm::MipsRegisterBankInfo::applyMappingImpl(), llvm::AMDGPURegisterBankInfo::applyMappingImpl(), llvm::AMDGPURegisterBankInfo::applyMappingSBufferLoad(), AMDGPUPostLegalizerCombinerHelper::applyUCharToFloat(), applyVAshrLshrImm(), llvm::ARMLegalizerInfo::ARMLegalizerInfo(), buildAnyextOrCopy(), buildCopyFromRegs(), llvm::MachineIRBuilder::buildLoadFromOffset(), llvm::MachineIRBuilder::buildMaskLowPtrBits(), llvm::MachineIRBuilder::buildShuffleSplat(), changeElementSize(), llvm::LegalizeMutations::changeElementSizeTo(), llvm::LegalizerHelper::coerceToScalar(), convertImageAddrToPacked(), llvm::CallLowering::ValueHandler::copyArgumentMemory(), llvm::RegisterBankInfo::OperandsMapper::createVRegs(), divide(), elementTypeIsLegal(), emitReciprocalU64(), llvm::AMDGPURegisterBankInfo::executeInWaterfallLoop(), extendLow32IntoHigh32(), llvm::CallLowering::ValueHandler::extendRegister(), extractF64Exponent(), findGISelOptimalMemOpLowering(), llvm::AMDGPULegalizerInfo::fixStoreSourceType(), getBitcastRegisterType(), getElementType(), llvm::getGCDType(), getHalfSizedType(), llvm::AMDGPULegalizerInfo::getImplicitArgPtr(), llvm::AArch64RegisterBankInfo::getInstrMapping(), llvm::getLCMType(), llvm::getLLTForMVT(), llvm::getLLTForType(), getNarrowTypeBreakDown(), llvm::AArch64TargetLowering::getOptimalMemOpLLT(), getPow2ScalarType(), llvm::AMDGPUFunctionArgInfo::getPreloadedValue(), llvm::AMDGPURegisterBankInfo::getRegBankFromRegClass(), llvm::AVRTargetLowering::getRegisterByName(), llvm::PPCTargetLowering::getRegisterByName(), llvm::AMDGPULegalizerInfo::getSegmentAperture(), llvm::AMDGPURegisterBankInfo::handleD16VData(), llvm::AMDGPULegalizerInfo::handleD16VData(), llvm::AMDGPULegalizerInfo::legalizeAddrSpaceCast(), llvm::AMDGPULegalizerInfo::legalizeBufferAtomic(), llvm::AMDGPULegalizerInfo::legalizeBufferLoad(), llvm::AMDGPULegalizerInfo::legalizeBufferStore(), llvm::AMDGPULegalizerInfo::legalizeBuildVector(), llvm::AMDGPULegalizerInfo::legalizeBVHIntrinsic(), llvm::MipsLegalizerInfo::legalizeCustom(), llvm::ARMLegalizerInfo::legalizeCustom(), llvm::AMDGPULegalizerInfo::legalizeFceil(), llvm::AMDGPULegalizerInfo::legalizeFDIV(), llvm::AMDGPULegalizerInfo::legalizeFDIV16(), llvm::AMDGPULegalizerInfo::legalizeFDIV32(), llvm::AMDGPULegalizerInfo::legalizeFDIV64(), llvm::AMDGPULegalizerInfo::legalizeFDIVFastIntrin(), llvm::AMDGPULegalizerInfo::legalizeFFloor(), llvm::AMDGPULegalizerInfo::legalizeFMad(), llvm::AMDGPULegalizerInfo::legalizeFPow(), llvm::AMDGPULegalizerInfo::legalizeFPTOI(), llvm::AMDGPULegalizerInfo::legalizeFrint(), llvm::AMDGPULegalizerInfo::legalizeGlobalValue(), llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeIntrinsicTrunc(), llvm::AMDGPULegalizerInfo::legalizeIsAddrSpace(), llvm::AMDGPULegalizerInfo::legalizeITOFP(), llvm::AMDGPULegalizerInfo::legalizeRsqClampIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeSDIV_SREM(), llvm::AMDGPULegalizerInfo::legalizeUDIV_UREM(), llvm::AMDGPULegalizerInfo::legalizeUDIV_UREM32Impl(), llvm::AMDGPULegalizerInfo::legalizeUDIV_UREM64Impl(), llvm::AMDGPULegalizerInfo::loadInputValue(), llvm::LegalizerHelper::lowerDynStackAlloc(), llvm::LegalizerHelper::lowerExtract(), llvm::MipsCallLowering::lowerFormalArguments(), llvm::LegalizerHelper::lowerFPTOSI(), llvm::LegalizerHelper::lowerFPTOUI(), llvm::LegalizerHelper::lowerFPTRUNC(), llvm::LegalizerHelper::lowerFPTRUNC_F64_TO_F16(), llvm::InlineAsmLowering::lowerInlineAsm(), llvm::LegalizerHelper::lowerInsert(), llvm::LegalizerHelper::lowerLoad(), llvm::LegalizerHelper::lowerMergeValues(), llvm::AArch64CallLowering::lowerReturn(), llvm::LegalizerHelper::lowerShuffleVector(), llvm::LegalizerHelper::lowerSITOFP(), llvm::LegalizerHelper::lowerStore(), llvm::LegalizerHelper::lowerU64ToF32BitOps(), llvm::LegalizerHelper::lowerUITOFP(), matchAArch64MulConstCombine(), matchBitfieldExtractFromSExtInReg(), AMDGPUPreLegalizerCombinerHelper::matchClampI64ToI16(), AMDGPUPostLegalizerCombinerHelper::matchFMinFMaxLegacy(), AMDGPUPostLegalizerCombinerHelper::matchUCharToFloat(), matchZeroExtendFromS32(), llvm::MipsLegalizerInfo::MipsLegalizerInfo(), llvm::LegalizerHelper::narrowScalar(), llvm::LegalizerHelper::narrowScalarAddSub(), llvm::LegalizerHelper::narrowScalarCTLZ(), llvm::LegalizerHelper::narrowScalarCTTZ(), llvm::LegalizerHelper::narrowScalarExtract(), llvm::LegalizerHelper::narrowScalarInsert(), llvm::LegalizerHelper::narrowScalarShift(), packImageA16AddressToDwords(), llvm::AMDGPUCallLowering::passSpecialInputs(), llvm::LegalizerHelper::reduceLoadStoreWidth(), llvm::LegalizerHelper::reduceOperationWidth(), reinsertVectorIndexAdd(), scalarOrVector(), setBufferOffsets(), llvm::MipsRegisterBankInfo::setRegBank(), llvm::AMDGPURegisterBankInfo::splitBufferOffsets(), llvm::AMDGPULegalizerInfo::splitBufferOffsets(), splitUnequalType(), unpackV2S16ToS32(), widen96To128(), widenToNextPowerOf2(), and llvm::X86LegalizerInfo::X86LegalizerInfo().
Definition at line 74 of file LowLevelTypeImpl.h.
References vector().
Referenced by llvm::LegalizerHelper::bitcastExtractVectorElt(), bitcastToVectorElement32(), changeNumElements(), llvm::LegalizeRuleSet::clampMaxNumElements(), divide(), llvm::LegalizerHelper::fewerElementsVectorMulo(), llvm::LegalizerHelper::fewerElementsVectorMultiEltType(), fewerEltsToSize64Vector(), getBitcastRegisterType(), llvm::getGCDType(), getHalfSizedType(), getNarrowTypeBreakDown(), llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(), llvm::LegalizerHelper::reduceOperationWidth(), scalarOrVector(), and splitUnequalType().
Definition at line 78 of file LowLevelTypeImpl.h.
References scalar(), and scalarOrVector().
Get a low-level vector of some number of elements and element type.
Definition at line 66 of file LowLevelTypeImpl.h.
References assert(), getAddressSpace(), getSizeInBits(), isPointer(), and isVector().
Get a low-level vector of some number of elements and element width.
NumElements
must be at least 2.
Definition at line 58 of file LowLevelTypeImpl.h.
References assert().
Referenced by llvm::AArch64LegalizerInfo::AArch64LegalizerInfo(), llvm::AArch64TargetLowering::allowsMisalignedMemoryAccesses(), llvm::AMDGPULegalizerInfo::AMDGPULegalizerInfo(), AMDGPUPreLegalizerCombinerHelper::applyClampI64ToI16(), applyDupLane(), llvm::AMDGPURegisterBankInfo::applyMappingImpl(), buildCopyFromRegs(), changeElementSize(), changeElementType(), llvm::LegalizeRuleSet::clampMinNumElements(), convertImageAddrToPacked(), llvm::LegalizerHelper::fewerElementsVectorCasts(), llvm::LegalizerHelper::fewerElementsVectorCmp(), llvm::LegalizerHelper::fewerElementsVectorSelect(), llvm::getGCDType(), llvm::AMDGPURegisterBankInfo::getInstrMapping(), llvm::getLCMType(), llvm::getLLTForMVT(), llvm::getLLTForType(), llvm::AArch64TargetLowering::getOptimalMemOpLLT(), llvm::AMDGPUFunctionArgInfo::getPreloadedValue(), llvm::AMDGPURegisterBankInfo::handleD16VData(), llvm::AMDGPULegalizerInfo::handleD16VData(), llvm::AMDGPULegalizerInfo::legalizeAtomicCmpXChg(), llvm::AMDGPULegalizerInfo::legalizeBuildVector(), llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeShuffleVector(), llvm::LegalizerHelper::lowerBitcast(), llvm::AMDGPUCallLowering::lowerCall(), llvm::MipsLegalizerInfo::MipsLegalizerInfo(), llvm::LegalizeMutations::moreElementsToNextPow2(), moreEltsToNext32Bit(), llvm::LegalizerHelper::narrowScalar(), oneMoreElement(), packImageA16AddressToDwords(), scalarOrVector(), widen96To128(), and llvm::LegalizerHelper::widenScalar().
|
friend |
Definition at line 212 of file LowLevelTypeImpl.h.
|
friend |
Definition at line 213 of file LowLevelTypeImpl.h.