|
LLVM 23.0.0git
|
Namespaces | |
| namespace | Barrier |
| namespace | CPol |
| namespace | DepCtr |
| namespace | DPP |
| namespace | DWARFAS |
| namespace | ElfNote |
| namespace | EncValues |
| namespace | Exp |
| namespace | GenericVersion |
| Generic target versions emitted by this version of LLVM. | |
| namespace | HSAMD |
| namespace | HWEncoding |
| namespace | Hwreg |
| namespace | impl |
| namespace | ImplicitArg |
| namespace | IsaInfo |
| namespace | MFMAScaleFormats |
| namespace | MTBUFFormat |
| namespace | PALMD |
| namespace | SDWA |
| namespace | SendMsg |
| namespace | Swizzle |
| namespace | UCVersion |
| namespace | UfmtGFX10 |
| namespace | UfmtGFX11 |
| namespace | VGPRIndexMode |
| namespace | VirtRegFlag |
| namespace | VOP3PEncoding |
| namespace | VOPD |
| namespace | WaitEvent |
| namespace | WMMA |
| namespace | WMMAMods |
Typedefs | |
| using | FunctionVariableMap = DenseMap<Function *, DenseSet<GlobalVariable *>> |
| using | VariableFunctionMap = DenseMap<GlobalVariable *, DenseSet<Function *>> |
| template<unsigned Bit, unsigned D = 0> | |
| using | EncodingBit = EncodingField<Bit, Bit, D> |
Variables | |
| static constexpr LaneMaskConstants | LaneMaskConstants32 |
| static constexpr LaneMaskConstants | LaneMaskConstants64 |
| const uint64_t | RSRC_DATA_FORMAT = 0xf00000000000LL |
| const uint64_t | RSRC_ELEMENT_SIZE_SHIFT = (32 + 19) |
| const uint64_t | RSRC_INDEX_STRIDE_SHIFT = (32 + 21) |
| const uint64_t | RSRC_TID_ENABLE = UINT64_C(1) << (32 + 23) |
| static constexpr uint32_t | ExtendedFltRoundOffset = 4 |
| Offset of nonstandard values for llvm.get.rounding results from the largest supported mode. | |
| static constexpr uint32_t | F32FltRoundOffset = 0 |
| Offset in mode register of f32 rounding mode. | |
| static constexpr uint32_t | F64FltRoundOffset = 2 |
| Offset in mode register of f64/f16 rounding mode. | |
| const uint64_t | FltRoundConversionTable |
| const uint64_t | FltRoundToHWConversionTable |
| const int | OPR_ID_UNKNOWN = -1 |
| const int | OPR_ID_UNSUPPORTED = -2 |
| const int | OPR_ID_DUPLICATE = -3 |
| const int | OPR_VAL_INVALID = -4 |
| using llvm::AMDGPU::EncodingBit = EncodingField<Bit, Bit, D> |
Definition at line 400 of file AMDGPUBaseInfo.h.
| using llvm::AMDGPU::FunctionVariableMap = DenseMap<Function *, DenseSet<GlobalVariable *>> |
Definition at line 33 of file AMDGPUMemoryUtils.h.
| using llvm::AMDGPU::VariableFunctionMap = DenseMap<GlobalVariable *, DenseSet<Function *>> |
Definition at line 34 of file AMDGPUMemoryUtils.h.
| anonymous enum |
| Enumerator | |
|---|---|
| AMDHSA_COV4 | |
| AMDHSA_COV5 | |
| AMDHSA_COV6 | |
Definition at line 62 of file AMDGPUBaseInfo.h.
| enum llvm::AMDGPU::AMDGPUFltRounds : int8_t |
Return values used for llvm.get.rounding.
When both the F32 and F64/F16 modes are the same, returns the standard values. If they differ, returns an extended mode starting at 8.
Definition at line 96 of file SIModeRegisterDefaults.h.
| Enumerator | |
|---|---|
| FEATURE_NONE | |
| FEATURE_FMA | |
| FEATURE_LDEXP | |
| FEATURE_FP64 | |
| FEATURE_FAST_FMA_F32 | |
| FEATURE_FAST_DENORMAL_F32 | |
| FEATURE_WAVE32 | |
| FEATURE_XNACK | |
| FEATURE_SRAMECC | |
| FEATURE_WGP | |
| FEATURE_XNACK_ALWAYS | |
Definition at line 146 of file TargetParser.h.
| Enumerator | |
|---|---|
| SGPR_SPILL | |
Definition at line 1830 of file SIInstrInfo.h.
| Enumerator | |
|---|---|
| NoFastRules | |
| Standard | |
| StandardB | |
| Vector | |
Definition at line 273 of file AMDGPURegBankLegalizeRules.h.
| Enumerator | |
|---|---|
| NO_ERROR | |
| INVALID_FEATURE_COMBINATION | |
| UNSUPPORTED_TARGET_FEATURE | |
Definition at line 174 of file TargetParser.h.
| enum llvm::AMDGPU::Fixups |
| Enumerator | |
|---|---|
| fixup_si_sopp_br | 16-bit PC relative fixup for SOPP branch instructions. |
| LastTargetFixupKind | |
| NumTargetFixupKinds | |
Definition at line 16 of file AMDGPUFixupKinds.h.
|
strong |
| Enumerator | |
|---|---|
| None | |
| FP4 | |
| FP8 | |
Definition at line 64 of file AMDGPUBaseInfo.h.
| enum llvm::AMDGPU::GPUKind : uint32_t |
GPU kinds supported by the AMDGPU target.
Definition at line 38 of file TargetParser.h.
| Enumerator | |
|---|---|
| LOAD_CNT | |
| DS_CNT | |
| EXP_CNT | |
| STORE_CNT | |
| NUM_NORMAL_INST_CNTS | |
| SAMPLE_CNT | |
| BVH_CNT | |
| KM_CNT | |
| X_CNT | |
| NUM_EXTENDED_INST_CNTS | |
| VA_VDST | |
| VM_VSRC | |
| NUM_EXPERT_INST_CNTS | |
| NUM_INST_CNTS | |
Definition at line 1080 of file AMDGPUBaseInfo.h.
Definition at line 244 of file AMDGPURegBankLegalizeRules.h.
Definition at line 200 of file SIDefines.h.
Definition at line 141 of file AMDGPURegBankLegalizeRules.h.
|
strong |
| Enumerator | |
|---|---|
| Initial | |
| PreRAReentry | |
| PostRA | |
Definition at line 19 of file AMDGPUIGroupLP.h.
Definition at line 39 of file AMDGPURegBankLegalizeRules.h.
Definition at line 590 of file AMDGPU.h.
References llvm::AMDGPUAS::MAX_AMDGPU_ADDRESS.
Referenced by llvm::GCNTTIImpl::addrspacesMayAlias(), llvm::AMDGPUAAResult::alias(), and llvm::GCNTTIImpl::isValidAddrSpaceCast().
| void llvm::AMDGPU::buildReadAnyLane | ( | MachineIRBuilder & | B, |
| Register | SgprDst, | ||
| Register | VgprSrc, | ||
| const RegisterBankInfo & | RBI ) |
Definition at line 171 of file AMDGPUGlobalISelUtils.cpp.
References B(), and buildReadLane().
| void llvm::AMDGPU::buildReadFirstLane | ( | MachineIRBuilder & | B, |
| Register | SgprDst, | ||
| Register | VgprSrc, | ||
| const RegisterBankInfo & | RBI ) |
Definition at line 180 of file AMDGPUGlobalISelUtils.cpp.
References B(), and buildReadLane().
|
constexpr |
Definition at line 1667 of file AMDGPUBaseInfo.h.
References llvm::CallingConv::Fast.
Referenced by llvm::AMDGPUCallLowering::isEligibleForTailCallOptimization(), llvm::SITargetLowering::isEligibleForTailCallOptimization(), and mayTailCallThisCC().
| uint64_t llvm::AMDGPU::convertSMRDOffsetUnits | ( | const MCSubtargetInfo & | ST, |
| uint64_t | ByteOffset ) |
Convert ByteOffset to dwords if the subtarget uses dword SMRD immediate offsets.
Definition at line 3419 of file AMDGPUBaseInfo.cpp.
References assert(), hasSMEMByteOffset(), and isDwordAligned().
Referenced by getSMRDEncodedLiteralOffset32(), and getSMRDEncodedOffset().
|
static |
Definition at line 79 of file AMDGPUAsanInstrumentation.cpp.
References llvm::IRBuilderBase::CreateAdd(), llvm::IRBuilderBase::CreateAnd(), llvm::IRBuilderBase::CreateICmpSGE(), llvm::IRBuilderBase::CreateIntCast(), and llvm::Value::getType().
Referenced by instrumentAddressImpl().
|
static |
Definition at line 2026 of file AMDGPUBaseInfo.cpp.
References Size.
Referenced by llvm::AMDGPU::DepCtr::decodeDepCtr().
| unsigned llvm::AMDGPU::decodeExpcnt | ( | const IsaVersion & | Version, |
| unsigned | Waitcnt ) |
Waitcnt for given isa Version. Definition at line 1852 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by decodeWaitcnt(), and decodeWaitcnt().
Read the hardware rounding mode equivalent of a AMDGPUFltRounds value.
Definition at line 237 of file SIModeRegisterDefaults.cpp.
References FltRoundToHWConversionTable.
Referenced by llvm::SITargetLowering::lowerSET_ROUNDING().
| unsigned llvm::AMDGPU::decodeLgkmcnt | ( | const IsaVersion & | Version, |
| unsigned | Waitcnt ) |
Waitcnt for given isa Version. Definition at line 1857 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by decodeWaitcnt(), and decodeWaitcnt().
| Waitcnt llvm::AMDGPU::decodeLoadcntDscnt | ( | const IsaVersion & | Version, |
| unsigned | LoadcntDscnt ) |
LoadcntDscnt for given isa Version. Definition at line 1926 of file AMDGPUBaseInfo.cpp.
References DS_CNT, LOAD_CNT, llvm::AMDGPU::Waitcnt::set(), and llvm::Version.
| Waitcnt llvm::AMDGPU::decodeStorecntDscnt | ( | const IsaVersion & | Version, |
| unsigned | StorecntDscnt ) |
StorecntDscnt for given isa Version. Definition at line 1936 of file AMDGPUBaseInfo.cpp.
References DS_CNT, llvm::AMDGPU::Waitcnt::set(), STORE_CNT, and llvm::Version.
| unsigned llvm::AMDGPU::decodeVmcnt | ( | const IsaVersion & | Version, |
| unsigned | Waitcnt ) |
Waitcnt for given isa Version. Definition at line 1844 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by decodeWaitcnt(), and decodeWaitcnt().
| Waitcnt llvm::AMDGPU::decodeWaitcnt | ( | const IsaVersion & | Version, |
| unsigned | Encoded ) |
Definition at line 1869 of file AMDGPUBaseInfo.cpp.
References decodeExpcnt(), decodeLgkmcnt(), decodeVmcnt(), DS_CNT, EXP_CNT, LOAD_CNT, llvm::AMDGPU::Waitcnt::set(), and llvm::Version.
| void llvm::AMDGPU::decodeWaitcnt | ( | const IsaVersion & | Version, |
| unsigned | Waitcnt, | ||
| unsigned & | Vmcnt, | ||
| unsigned & | Expcnt, | ||
| unsigned & | Lgkmcnt ) |
Decodes Vmcnt, Expcnt and Lgkmcnt from given Waitcnt for given isa Version, and writes decoded values into Vmcnt, Expcnt and Lgkmcnt respectively.
Should not be used on gfx12+, the instruction which needs it is deprecated
Vmcnt, Expcnt and Lgkmcnt are decoded as follows: Vmcnt = Waitcnt[3:0] (pre-gfx9) Vmcnt = Waitcnt[15:14,3:0] (gfx9,10) Vmcnt = Waitcnt[15:10] (gfx11) Expcnt = Waitcnt[6:4] (pre-gfx11) Expcnt = Waitcnt[2:0] (gfx11) Lgkmcnt = Waitcnt[11:8] (pre-gfx10) Lgkmcnt = Waitcnt[13:8] (gfx10) Lgkmcnt = Waitcnt[9:4] (gfx11)
Definition at line 1862 of file AMDGPUBaseInfo.cpp.
References decodeExpcnt(), decodeLgkmcnt(), decodeVmcnt(), and llvm::Version.
Referenced by llvm::AMDGPUInstPrinter::printSWaitCnt().
Definition at line 97 of file AMDGPUMemoryUtils.cpp.
References llvm::convertUsersOfConstantsToInstructions(), isLDSVariableToLower(), and llvm::SmallVectorTemplateBase< T, bool >::push_back().
| LLVM_READNONE int64_t llvm::AMDGPU::encode32BitLiteral | ( | int64_t | Imm, |
| OperandType | Type, | ||
| bool | IsLit ) |
Definition at line 3307 of file AMDGPUBaseInfo.cpp.
References llvm::Hi_32(), Imm, llvm::Lo_32(), OPERAND_INLINE_SPLIT_BARRIER_INT32, OPERAND_REG_IMM_BF16, OPERAND_REG_IMM_FP16, OPERAND_REG_IMM_FP32, OPERAND_REG_IMM_FP64, OPERAND_REG_IMM_INT32, OPERAND_REG_IMM_V2BF16, OPERAND_REG_IMM_V2FP16, OPERAND_REG_IMM_V2FP16_SPLAT, OPERAND_REG_IMM_V2FP32, OPERAND_REG_IMM_V2INT16, OPERAND_REG_IMM_V2INT32, OPERAND_REG_INLINE_AC_FP32, OPERAND_REG_INLINE_AC_INT32, OPERAND_REG_INLINE_C_BF16, OPERAND_REG_INLINE_C_FP16, OPERAND_REG_INLINE_C_FP32, and OPERAND_REG_INLINE_C_INT32.
|
static |
Definition at line 2050 of file AMDGPUBaseInfo.cpp.
References encodeCustomOperandVal(), OPR_ID_DUPLICATE, OPR_ID_UNKNOWN, OPR_ID_UNSUPPORTED, and Size.
Referenced by llvm::AMDGPU::DepCtr::encodeDepCtr().
|
static |
Definition at line 2043 of file AMDGPUBaseInfo.cpp.
References OPR_VAL_INVALID.
Referenced by encodeCustomOperand().
|
static |
Definition at line 1958 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by encodeLoadcntDscnt(), and encodeStorecntDscnt().
| unsigned llvm::AMDGPU::encodeExpcnt | ( | const IsaVersion & | Version, |
| unsigned | Waitcnt, | ||
| unsigned | Expcnt ) |
Waitcnt with encoded Expcnt for given isa Version. Definition at line 1886 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by encodeWaitcnt().
| unsigned llvm::AMDGPU::encodeLgkmcnt | ( | const IsaVersion & | Version, |
| unsigned | Waitcnt, | ||
| unsigned | Lgkmcnt ) |
Waitcnt with encoded Lgkmcnt for given isa Version. Definition at line 1892 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by encodeWaitcnt().
|
static |
Definition at line 1946 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by encodeLoadcntDscnt().
| unsigned llvm::AMDGPU::encodeLoadcntDscnt | ( | const IsaVersion & | Version, |
| const Waitcnt & | Decoded ) |
Loadcnt and Dscnt components of Decoded encoded as an immediate that can be used with S_WAIT_LOADCNT_DSCNT for given isa Version. Definition at line 1972 of file AMDGPUBaseInfo.cpp.
References DS_CNT, encodeLoadcntDscnt(), llvm::AMDGPU::Waitcnt::get(), LOAD_CNT, and llvm::Version.
|
static |
Definition at line 1964 of file AMDGPUBaseInfo.cpp.
References encodeDscnt(), encodeLoadcnt(), getCombinedCountBitMask(), and llvm::Version.
Referenced by encodeLoadcntDscnt().
|
static |
Definition at line 1952 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by encodeStorecntDscnt().
| unsigned llvm::AMDGPU::encodeStorecntDscnt | ( | const IsaVersion & | Version, |
| const Waitcnt & | Decoded ) |
Storecnt and Dscnt components of Decoded encoded as an immediate that can be used with S_WAIT_STORECNT_DSCNT for given isa Version. Definition at line 1985 of file AMDGPUBaseInfo.cpp.
References DS_CNT, encodeStorecntDscnt(), llvm::AMDGPU::Waitcnt::get(), STORE_CNT, and llvm::Version.
|
static |
Definition at line 1977 of file AMDGPUBaseInfo.cpp.
References encodeDscnt(), encodeStorecnt(), getCombinedCountBitMask(), and llvm::Version.
Referenced by encodeStorecntDscnt().
| unsigned llvm::AMDGPU::encodeVmcnt | ( | const IsaVersion & | Version, |
| unsigned | Waitcnt, | ||
| unsigned | Vmcnt ) |
Waitcnt with encoded Vmcnt for given isa Version. Definition at line 1877 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by encodeWaitcnt().
| unsigned llvm::AMDGPU::encodeWaitcnt | ( | const IsaVersion & | Version, |
| const Waitcnt & | Decoded ) |
Definition at line 1907 of file AMDGPUBaseInfo.cpp.
References DS_CNT, encodeWaitcnt(), EXP_CNT, llvm::AMDGPU::Waitcnt::get(), LOAD_CNT, and llvm::Version.
| unsigned llvm::AMDGPU::encodeWaitcnt | ( | const IsaVersion & | Version, |
| unsigned | Vmcnt, | ||
| unsigned | Expcnt, | ||
| unsigned | Lgkmcnt ) |
Encodes Vmcnt, Expcnt and Lgkmcnt into Waitcnt for given isa Version.
Should not be used on gfx12+, the instruction which needs it is deprecated
Vmcnt, Expcnt and Lgkmcnt are encoded as follows: Waitcnt[2:0] = Expcnt (gfx11+) Waitcnt[3:0] = Vmcnt (pre-gfx9) Waitcnt[3:0] = Vmcnt[3:0] (gfx9,10) Waitcnt[6:4] = Expcnt (pre-gfx11) Waitcnt[9:4] = Lgkmcnt (gfx11) Waitcnt[11:8] = Lgkmcnt (pre-gfx10) Waitcnt[13:8] = Lgkmcnt (gfx10) Waitcnt[15:10] = Vmcnt (gfx11) Waitcnt[15:14] = Vmcnt[5:4] (gfx9,10)
Vmcnt, Expcnt and Lgkmcnt for given isa Version. Definition at line 1898 of file AMDGPUBaseInfo.cpp.
References encodeExpcnt(), encodeLgkmcnt(), encodeVmcnt(), getWaitcntBitMask(), and llvm::Version.
Referenced by encodeWaitcnt().
| std::pair< FeatureError, StringRef > llvm::AMDGPU::fillAMDGPUFeatureMap | ( | StringRef | GPU, |
| const Triple & | T, | ||
| StringMap< bool > & | Features ) |
Fills Features map with default values for given target GPU.
Features contains overriding target features and this function returns default target features with entries overridden by Features.
Definition at line 806 of file TargetParser.cpp.
References llvm::Triple::AMDHSA, llvm::StringRef::empty(), fillAMDGCNFeatureMap(), GK_BARTS, GK_CAICOS, GK_CAYMAN, GK_CEDAR, GK_CYPRESS, GK_JUNIPER, GK_R600, GK_R630, GK_REDWOOD, GK_RS880, GK_RV670, GK_RV710, GK_RV730, GK_RV770, GK_SUMO, GK_TURKS, insertWaveSizeFeature(), llvm_unreachable, NO_ERROR, parseArchR600(), and T.
| void llvm::AMDGPU::fillValidArchListAMDGCN | ( | SmallVectorImpl< StringRef > & | Values | ) |
Definition at line 269 of file TargetParser.cpp.
References llvm::CallingConv::C, and llvm::SmallVectorTemplateBase< T, bool >::push_back().
| void llvm::AMDGPU::fillValidArchListR600 | ( | SmallVectorImpl< StringRef > & | Values | ) |
Definition at line 275 of file TargetParser.cpp.
References llvm::CallingConv::C, and llvm::SmallVectorTemplateBase< T, bool >::push_back().
Definition at line 686 of file AMDGPUMCExpr.cpp.
References knownBitsMapHelper(), and tryFoldHelper().
Referenced by llvm::AMDGPUTargetAsmStreamer::EmitAmdhsaKernelDescriptor(), and llvm::AMDGPUTargetAsmStreamer::EmitAMDKernelCodeT().
|
static |
Definition at line 57 of file AMDGPUAsanInstrumentation.cpp.
References Cond, llvm::IRBuilderBase::CreateIntrinsic(), llvm::IRBuilderBase::CreateIsNotNull(), llvm::MDBuilder::createUnlikelyBranchWeights(), llvm::IRBuilderBase::GetInsertPoint(), llvm::IRBuilderBase::getInt64Ty(), llvm::IRBuilderBase::SetInsertPoint(), and llvm::SplitBlockAndInsertIfThen().
Referenced by instrumentAddressImpl().
|
static |
Definition at line 97 of file AMDGPUAsanInstrumentation.cpp.
References Call, llvm::IRBuilderBase::CreateCall(), llvm::FunctionType::get(), llvm::IRBuilderBase::getVoidTy(), kAsanReportErrorTemplate, llvm::IRBuilderBase::SetInsertPoint(), and llvm::raw_svector_ostream::str().
Referenced by instrumentAddressImpl().
| LLVM_READONLY int32_t llvm::AMDGPU::getAddr64Inst | ( | uint32_t | Opcode | ) |
References LLVM_READONLY.
Referenced by llvm::SIInstrInfo::legalizeOperands().
| LLVM_READONLY unsigned llvm::AMDGPU::getAddrSizeMIMGOp | ( | const MIMGBaseOpcodeInfo * | BaseOpcode, |
| const MIMGDimInfo * | Dim, | ||
| bool | IsA16, | ||
| bool | IsG16Supported ) |
Definition at line 333 of file AMDGPUBaseInfo.cpp.
References llvm::alignTo(), llvm::AMDGPU::MIMGBaseOpcodeInfo::Coordinates, llvm::divideCeil(), llvm::AMDGPU::MIMGBaseOpcodeInfo::G16, llvm::AMDGPU::MIMGBaseOpcodeInfo::Gradients, llvm::AMDGPU::MIMGBaseOpcodeInfo::LodOrClampOrMip, llvm::AMDGPU::MIMGDimInfo::NumCoords, llvm::AMDGPU::MIMGBaseOpcodeInfo::NumExtraArgs, and llvm::AMDGPU::MIMGDimInfo::NumGradients.
Referenced by llvm::AMDGPUDisassembler::convertMIMGInst(), and llvm::SIInstrInfo::verifyInstruction().
| Align llvm::AMDGPU::getAlign | ( | const DataLayout & | DL, |
| const GlobalVariable * | GV ) |
Definition at line 28 of file AMDGPUMemoryUtils.cpp.
References DL, llvm::Value::getPointerAlignment(), and llvm::GlobalValue::getValueType().
Definition at line 212 of file AMDGPUBaseInfo.cpp.
References llvm::mdconst::extract_or_null(), and getDefaultAMDHSACodeObjectVersion().
Referenced by llvm::AMDGPUAsmPrinter::doInitialization(), llvm::AMDGPU::HSAMD::MetadataStreamerMsgPackV4::emitKernel(), llvm::AMDGPUSubtarget::getImplicitArgNumBytes(), llvm::AMDGPULegalizerInfo::getSegmentAperture(), llvm::AMDGPULegalizerInfo::legalizeTrapHsaQueuePtr(), llvm::AMDGPULowerKernelAttributesPass::run(), llvm::AMDGPUResourceUsageAnalysis::run(), llvm::AMDGPUResourceUsageAnalysisWrapperPass::runOnMachineFunction(), and llvm::AMDGPUDisassembler::setABIVersion().
Definition at line 225 of file AMDGPUBaseInfo.cpp.
References llvm::ELF::ELFABIVERSION_AMDGPU_HSA_V4, llvm::ELF::ELFABIVERSION_AMDGPU_HSA_V5, llvm::ELF::ELFABIVERSION_AMDGPU_HSA_V6, and getDefaultAMDHSACodeObjectVersion().
Definition at line 257 of file TargetParser.cpp.
References FEATURE_NONE.
Definition at line 263 of file TargetParser.cpp.
References FEATURE_NONE.
Definition at line 207 of file TargetParser.cpp.
References llvm::StringRef::drop_back(), llvm::StringRef::empty(), getArchNameAMDGCN(), GK_GFX10_1_GENERIC, GK_GFX10_3_GENERIC, GK_GFX11_GENERIC, GK_GFX12_5_GENERIC, GK_GFX12_GENERIC, GK_GFX9_4_GENERIC, and GK_GFX9_GENERIC.
Definition at line 227 of file TargetParser.cpp.
Referenced by getArchFamilyNameAMDGCN(), llvm::AMDGPUTargetStreamer::getArchNameFromElfMach(), and getCanonicalArchName().
Definition at line 233 of file TargetParser.cpp.
Referenced by llvm::AMDGPUTargetStreamer::getArchNameFromElfMach(), and getCanonicalArchName().
| std::pair< Register, unsigned > llvm::AMDGPU::getBaseWithConstantOffset | ( | MachineRegisterInfo & | MRI, |
| Register | Reg, | ||
| GISelValueTracking * | ValueTracking = nullptr, | ||
| bool | CheckNUW = false ) |
Returns base register and constant offset.
Definition at line 26 of file AMDGPUGlobalISelUtils.cpp.
References assert(), llvm::sampleprof::Base, llvm::getDefIgnoringCopies(), llvm::MIPatternMatch::m_Copy(), llvm::MIPatternMatch::m_GOr(), llvm::MIPatternMatch::m_GPtrAdd(), llvm::MIPatternMatch::m_ICst(), llvm::MIPatternMatch::m_MInstr(), llvm::MIPatternMatch::m_Reg(), llvm::GISelValueTracking::maskedValueIsZero(), llvm::MIPatternMatch::mi_match(), MRI, llvm::MachineInstr::NoUWrap, llvm::Offset, and Register.
Referenced by llvm::AMDGPURegisterBankInfo::applyMappingImpl(), computeIndirectRegIndex(), llvm::AMDGPURegisterBankInfo::setBufferOffsets(), and llvm::AMDGPULegalizerInfo::splitBufferOffsets().
| LLVM_READONLY int32_t llvm::AMDGPU::getBasicFromSDWAOp | ( | uint32_t | Opcode | ) |
References LLVM_READONLY.
Referenced by llvm::SIInstrInfo::verifyInstruction().
Definition at line 834 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by getCanBeVOPD(), getVOPDFull(), and getVOPDOpcode().
| unsigned llvm::AMDGPU::getBvhcntBitMask | ( | const IsaVersion & | Version | ) |
Version. Returns 0 for versions that do not support BVHcnt Definition at line 1785 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by llvm::AMDGPU::HardwareLimits::HardwareLimits().
| LLVM_READONLY CanBeVOPD llvm::AMDGPU::getCanBeVOPD | ( | unsigned | Opc, |
| unsigned | EncodingFamily, | ||
| bool | VOPD3 ) |
Definition at line 649 of file AMDGPUBaseInfo.cpp.
References getBitOp2(), getVOPDFull(), getVOPDOpcode(), and Opc.
Referenced by shouldScheduleVOPDAdjacent().
Definition at line 367 of file TargetParser.cpp.
References assert(), getArchNameAMDGCN(), getArchNameR600(), GK_NONE, parseArchAMDGCN(), parseArchR600(), and T.
|
static |
Definition at line 1912 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by encodeLoadcntDscnt(), and encodeStorecntDscnt().
| LLVM_READONLY int32_t llvm::AMDGPU::getCommuteOrig | ( | uint32_t | Opcode | ) |
References LLVM_READONLY.
Referenced by llvm::SIInstrInfo::commuteOpcode().
| LLVM_READONLY int32_t llvm::AMDGPU::getCommuteRev | ( | uint32_t | Opcode | ) |
References LLVM_READONLY.
Referenced by llvm::SIInstrInfo::commuteOpcode().
Definition at line 290 of file AMDGPUBaseInfo.cpp.
References AMDHSA_COV4, AMDHSA_COV5, AMDHSA_COV6, and llvm::AMDGPU::ImplicitArg::COMPLETION_ACTION_OFFSET.
| unsigned llvm::AMDGPU::getDefaultAMDHSACodeObjectVersion | ( | ) |
Definition at line 221 of file AMDGPUBaseInfo.cpp.
References DefaultAMDHSACodeObjectVersion.
Referenced by getAMDHSACodeObjectVersion(), and getAMDHSACodeObjectVersion().
|
static |
Definition at line 1995 of file AMDGPUBaseInfo.cpp.
References Size.
Referenced by llvm::AMDGPU::DepCtr::getDefaultDepCtrEncoding().
Definition at line 279 of file AMDGPUBaseInfo.cpp.
References AMDHSA_COV4, AMDHSA_COV5, AMDHSA_COV6, and llvm::AMDGPU::ImplicitArg::DEFAULT_QUEUE_OFFSET.
| LLVM_READONLY int32_t llvm::AMDGPU::getDPPOp32 | ( | uint32_t | Opcode | ) |
References LLVM_READONLY.
| LLVM_READONLY int32_t llvm::AMDGPU::getDPPOp64 | ( | uint32_t | Opcode | ) |
References LLVM_READONLY.
| unsigned llvm::AMDGPU::getDscntBitMask | ( | const IsaVersion & | Version | ) |
Version. Returns 0 for versions that do not support DScnt Definition at line 1797 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by llvm::AMDGPU::HardwareLimits::HardwareLimits().
Definition at line 2508 of file AMDGPUBaseInfo.cpp.
Referenced by llvm::GCNSubtarget::computeOccupancy(), llvm::GCNSubtarget::getMaxNumVGPRs(), and llvm::SIMachineFunctionInfo::SIMachineFunctionInfo().
| CodeObjectVersion | is a value returned by getAMDHSACodeObjectVersion(). |
Definition at line 238 of file AMDGPUBaseInfo.cpp.
References llvm::Triple::AMDHSA, llvm::ELF::ELFABIVERSION_AMDGPU_HSA_V4, llvm::ELF::ELFABIVERSION_AMDGPU_HSA_V5, llvm::ELF::ELFABIVERSION_AMDGPU_HSA_V6, llvm::report_fatal_error(), and T.
Referenced by llvm::AMDGPUTargetELFStreamer::finish().
|
static |
Map from a symbolic name for a sendmsg/hwreg asm operand to it's encoding.
Definition at line 46 of file AMDGPUAsmUtils.cpp.
References N, OPR_ID_UNKNOWN, and OPR_ID_UNSUPPORTED.
Referenced by llvm::AMDGPU::Hwreg::getHwregId(), llvm::AMDGPU::SendMsg::getMsgId(), llvm::AMDGPU::SendMsg::getMsgOpId(), and llvm::AMDGPU::WaitEvent::getWaitEventMask().
| unsigned llvm::AMDGPU::getExpcntBitMask | ( | const IsaVersion & | Version | ) |
Version. Definition at line 1789 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by llvm::AMDGPU::HardwareLimits::HardwareLimits(), and llvm::AMDGPUInstPrinter::printSWaitCnt().
| LLVM_READONLY int32_t llvm::AMDGPU::getFlatScratchInstSSfromSV | ( | uint32_t | Opcode | ) |
Opcode of an SV (VADDR) form. References LLVM_READONLY.
| LLVM_READONLY int32_t llvm::AMDGPU::getFlatScratchInstSTfromSS | ( | uint32_t | Opcode | ) |
Opcode of an SS (SADDR) form. References LLVM_READONLY.
Referenced by llvm::SIRegisterInfo::buildSpillLoadStore(), llvm::SIRegisterInfo::eliminateFrameIndex(), and getFlatScratchSpillOpcode().
| LLVM_READONLY int32_t llvm::AMDGPU::getFlatScratchInstSVfromSS | ( | uint32_t | Opcode | ) |
Opcode of an SS (SADDR) form. References LLVM_READONLY.
Referenced by llvm::SIRegisterInfo::buildSpillLoadStore(), llvm::SIRegisterInfo::eliminateFrameIndex(), getFlatScratchSpillOpcode(), and llvm::SIInstrInfo::moveFlatAddrToVGPR().
| LLVM_READONLY int32_t llvm::AMDGPU::getFlatScratchInstSVfromSVS | ( | uint32_t | Opcode | ) |
Opcode of an SVS (SADDR + VADDR) form. References LLVM_READONLY.
Referenced by llvm::SIRegisterInfo::eliminateFrameIndex().
| LLVM_READONLY FPType llvm::AMDGPU::getFPDstSelType | ( | unsigned | Opc | ) |
Definition at line 800 of file AMDGPUBaseInfo.cpp.
References FP4, FP8, None, and Opc.
Referenced by getDstSelForwardingOperand().
| LLVM_READONLY const GcnBufferFormatInfo * llvm::AMDGPU::getGcnBufferFormatInfo | ( | uint8_t | BitsPerComp, |
| uint8_t | NumComponents, | ||
| uint8_t | NumFormat, | ||
| const MCSubtargetInfo & | STI ) |
Definition at line 3506 of file AMDGPUBaseInfo.cpp.
References isGFX10(), and isGFX11Plus().
Referenced by getBufferFormatWithCompCount().
| LLVM_READONLY const GcnBufferFormatInfo * llvm::AMDGPU::getGcnBufferFormatInfo | ( | uint8_t | Format, |
| const MCSubtargetInfo & | STI ) |
Definition at line 3517 of file AMDGPUBaseInfo.cpp.
References llvm::Format, isGFX10(), and isGFX11Plus().
| LLVM_READONLY int32_t llvm::AMDGPU::getGlobalSaddrOp | ( | uint32_t | Opcode | ) |
Opcode of a VADDR form. References LLVM_READONLY.
| LLVM_READONLY int32_t llvm::AMDGPU::getGlobalVaddrOp | ( | uint32_t | Opcode | ) |
Opcode of a SADDR form. References LLVM_READONLY.
Referenced by llvm::SIInstrInfo::moveFlatAddrToVGPR().
Definition at line 2497 of file AMDGPUBaseInfo.cpp.
References llvm::CallingConv::AMDGPU_PS, and F.
Referenced by generateEndPgm().
Definition at line 268 of file AMDGPUBaseInfo.cpp.
References AMDHSA_COV4, AMDHSA_COV5, AMDHSA_COV6, and llvm::AMDGPU::ImplicitArg::HOSTCALL_PTR_OFFSET.
| LLVM_READONLY int32_t llvm::AMDGPU::getIfAddr64Inst | ( | uint32_t | Opcode | ) |
Check if Opcode is an Addr64 opcode.
Opcode if it is an Addr64 opcode, otherwise -1. References LLVM_READONLY.
Referenced by llvm::SIInstrInfo::legalizeOperands().
| const ImageDimIntrinsicInfo * llvm::AMDGPU::getImageDimIntrinsicByBaseOpcode | ( | unsigned | BaseOpcode, |
| unsigned | Dim ) |
Referenced by simplifyAMDGCNImageIntrinsic().
| const ImageDimIntrinsicInfo * llvm::AMDGPU::getImageDimIntrinsicInfo | ( | unsigned | Intr | ) |
Definition at line 2493 of file AMDGPUBaseInfo.cpp.
References F.
Referenced by llvm::SIMachineFunctionInfo::SIMachineFunctionInfo().
Definition at line 3138 of file AMDGPUBaseInfo.cpp.
References llvm::Literal, and llvm::Signed.
Referenced by getInlineEncodingV2F16(), getInlineEncodingV2I16(), getPKFMACF16InlineEncoding(), and isInlinableLiteralV216().
| LLVM_READNONE std::optional< unsigned > llvm::AMDGPU::getInlineEncodingV2BF16 | ( | uint32_t | Literal | ) |
Definition at line 3199 of file AMDGPUBaseInfo.cpp.
References llvm::Literal, and llvm::Signed.
Referenced by llvm::SITargetLowering::checkAsmConstraintValA(), and isInlinableLiteralV2BF16().
| LLVM_READNONE std::optional< unsigned > llvm::AMDGPU::getInlineEncodingV2F16 | ( | uint32_t | Literal | ) |
Definition at line 3227 of file AMDGPUBaseInfo.cpp.
References getInlineEncodingV216(), and llvm::Literal.
Referenced by llvm::SITargetLowering::checkAsmConstraintValA(), and isInlinableLiteralV2F16().
| LLVM_READNONE std::optional< unsigned > llvm::AMDGPU::getInlineEncodingV2I16 | ( | uint32_t | Literal | ) |
Definition at line 3193 of file AMDGPUBaseInfo.cpp.
References getInlineEncodingV216(), and llvm::Literal.
Referenced by llvm::SITargetLowering::checkAsmConstraintValA(), and isInlinableLiteralV2I16().
F's Name attribute.Default if attribute is not present.Default and emits error if requested value cannot be converted to integer. References llvm::Default, DefaultVal, F, and Size.
| std::optional< std::pair< unsigned, std::optional< unsigned > > > llvm::AMDGPU::getIntegerPairAttribute | ( | const Function & | F, |
| StringRef | Name, | ||
| bool | OnlyFirstRequired = false ) |
F's Name attribute in "first[,second]" format ("second" is optional unless OnlyFirstRequired is false).std::nullopt if attribute is not present.std::nullopt and emits error if one of the requested values cannot be converted to integer, or OnlyFirstRequired is false and "second" value is not present. Definition at line 1652 of file AMDGPUBaseInfo.cpp.
| std::pair< unsigned, unsigned > llvm::AMDGPU::getIntegerPairAttribute | ( | const Function & | F, |
| StringRef | Name, | ||
| std::pair< unsigned, unsigned > | Default, | ||
| bool | OnlyFirstRequired = false ) |
F's Name attribute in "first[,second]" format ("second" is optional unless OnlyFirstRequired is false).Default if attribute is not present.Default and emits error if one of the requested values cannot be converted to integer, or OnlyFirstRequired is false and "second" value is not present. Definition at line 1643 of file AMDGPUBaseInfo.cpp.
References llvm::Default, F, and getIntegerPairAttribute().
Referenced by llvm::AMDGPUMachineFunction::AMDGPUMachineFunction(), llvm::AMDGPUSubtarget::getFlatWorkGroupSizes(), getIntegerPairAttribute(), llvm::GCNSubtarget::getMaxNumVectorRegs(), llvm::AMDGPUSubtarget::getWavesPerEU(), llvm::AMDGPUSubtarget::getWavesPerEU(), llvm::SIMachineFunctionInfo::mayUseAGPRs(), and llvm::SIMachineFunctionInfo::SIMachineFunctionInfo().
| std::optional< SmallVector< unsigned > > llvm::AMDGPU::getIntegerVecAttribute | ( | const Function & | F, |
| StringRef | Name, | ||
| unsigned | Size ) |
Similar to the function above, but returns std::nullopt if any error occurs.
Definition at line 1687 of file AMDGPUBaseInfo.cpp.
References A(), assert(), llvm::StringRef::empty(), F, Size, llvm::StringRef::split(), and llvm::utostr().
| SmallVector< unsigned > llvm::AMDGPU::getIntegerVecAttribute | ( | const Function & | F, |
| StringRef | Name, | ||
| unsigned | Size, | ||
| unsigned | DefaultVal ) |
F's Name attribute. Size, with all elements set to DefaultVal, if any error occurs. The corresponding error will also be emitted. Definition at line 1678 of file AMDGPUBaseInfo.cpp.
References DefaultVal, F, getIntegerVecAttribute(), and Size.
Referenced by llvm::AMDGPU::ClusterDimsAttr::get(), getIntegerVecAttribute(), llvm::AMDGPUSubtarget::getMaxNumWorkGroups(), and processUse().
| void llvm::AMDGPU::getInterestingMemoryOperands | ( | Module & | M, |
| Instruction * | I, | ||
| SmallVectorImpl< InterestingMemoryOperand > & | Interesting ) |
Get all the memory operands from the instruction that needs to be instrumented.
Definition at line 221 of file AMDGPUAsanInstrumentation.cpp.
References llvm::cast(), DL, llvm::dyn_cast(), llvm::SmallVectorImpl< T >::emplace_back(), llvm::VectorType::get(), llvm::Value::getPointerAlignment(), llvm::Value::getType(), I, llvm::isa(), llvm::Align::value(), and llvm::MaybeAlign::valueOrOne().
| Intrinsic::ID llvm::AMDGPU::getIntrinsicID | ( | const MachineInstr & | I | ) |
Return the intrinsic ID for opcodes with the G_AMDGPU_INTRIN_ prefix.
These opcodes have an Intrinsic::ID operand similar to a GIntrinsic. But they are not actual instances of GIntrinsics, so we cannot use GIntrinsic::getIntrinsicID() on them.
Definition at line 25 of file AMDGPUInstrInfo.cpp.
References I.
Referenced by llvm::AMDGPURegisterBankInfo::applyMappingImpl(), llvm::AMDGPURegisterBankInfo::getInstrMapping(), and llvm::AMDGPUInstructionSelector::select().
| AMDGPU::IsaVersion llvm::AMDGPU::getIsaVersion | ( | StringRef | GPU | ) |
Definition at line 280 of file TargetParser.cpp.
References GK_GFX1010, GK_GFX1011, GK_GFX1012, GK_GFX1013, GK_GFX1030, GK_GFX1031, GK_GFX1032, GK_GFX1033, GK_GFX1034, GK_GFX1035, GK_GFX1036, GK_GFX10_1_GENERIC, GK_GFX10_3_GENERIC, GK_GFX1100, GK_GFX1101, GK_GFX1102, GK_GFX1103, GK_GFX1150, GK_GFX1151, GK_GFX1152, GK_GFX1153, GK_GFX1170, GK_GFX11_GENERIC, GK_GFX1200, GK_GFX1201, GK_GFX1250, GK_GFX1251, GK_GFX12_5_GENERIC, GK_GFX12_GENERIC, GK_GFX1310, GK_GFX600, GK_GFX601, GK_GFX602, GK_GFX700, GK_GFX701, GK_GFX702, GK_GFX703, GK_GFX704, GK_GFX705, GK_GFX801, GK_GFX802, GK_GFX803, GK_GFX805, GK_GFX810, GK_GFX900, GK_GFX902, GK_GFX904, GK_GFX906, GK_GFX908, GK_GFX909, GK_GFX90A, GK_GFX90C, GK_GFX942, GK_GFX950, GK_GFX9_4_GENERIC, GK_GFX9_GENERIC, GK_NONE, and parseArchAMDGCN().
Referenced by llvm::AMDGPUTargetAsmStreamer::EmitAmdhsaKernelDescriptor(), llvm::AMDGPU::DepCtr::encodeFieldHoldCnt(), llvm::AMDGPU::IsaInfo::getAddressableNumSGPRs(), llvm::AMDGPU::MCKernelDescriptor::getDefaultAmdhsaKernelDescriptor(), llvm::AMDGPU::IsaInfo::getMaxNumSGPRs(), llvm::AMDGPU::IsaInfo::getMinNumSGPRs(), getNSAMaxSize(), llvm::AMDGPU::IsaInfo::getNumExtraSGPRs(), llvm::AMDGPU::IsaInfo::getSGPRAllocGranule(), llvm::AMDGPU::IsaInfo::getTotalNumSGPRs(), initDefaultAMDKernelCodeT(), llvm::AMDGPUInstPrinter::printSWaitCnt(), and llvm::AMDGPU::IsaInfo::AMDGPUTargetID::toString().
| unsigned llvm::AMDGPU::getKmcntBitMask | ( | const IsaVersion & | Version | ) |
Version. Returns 0 for versions that do not support KMcnt Definition at line 1801 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by llvm::AMDGPU::HardwareLimits::HardwareLimits().
| unsigned llvm::AMDGPU::getLdsDwGranularity | ( | const MCSubtargetInfo & | ST | ) |
This is used to calculate the lds size encoded for PAL metadata 3.0+ which must be defined in terms of bytes. Definition at line 3735 of file AMDGPUBaseInfo.cpp.
Referenced by EmitPALMetadataCommon().
| unsigned llvm::AMDGPU::getLgkmcntBitMask | ( | const IsaVersion & | Version | ) |
Version. Definition at line 1793 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by llvm::AMDGPU::HardwareLimits::HardwareLimits(), and llvm::AMDGPUInstPrinter::printSWaitCnt().
Definition at line 712 of file AMDGPUMCExpr.cpp.
References assert(), llvm::cast(), and isLitExpr().
| unsigned llvm::AMDGPU::getLoadcntBitMask | ( | const IsaVersion & | Version | ) |
Version. Returns 0 for versions that do not support LOADcnt Definition at line 1777 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by llvm::AMDGPU::HardwareLimits::HardwareLimits().
| LLVM_READONLY bool llvm::AMDGPU::getMAIIsDGEMM | ( | unsigned | Opc | ) |
Returns true if MAI operation is a double precision GEMM.
Definition at line 575 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by llvm::SIInstrInfo::isDGEMM().
| LLVM_READONLY bool llvm::AMDGPU::getMAIIsGFX940XDL | ( | unsigned | Opc | ) |
Definition at line 580 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by llvm::SIInstrInfo::isXDL().
| LLVM_READONLY int llvm::AMDGPU::getMaskedMIMGOp | ( | unsigned | Opc, |
| unsigned | NewChannels ) |
Definition at line 325 of file AMDGPUBaseInfo.cpp.
References llvm::AMDGPU::MIMGInfo::BaseOpcode, getMIMGInfo(), llvm::AMDGPU::MIMGInfo::MIMGEncoding, Opc, llvm::AMDGPU::MIMGInfo::Opcode, and llvm::AMDGPU::MIMGInfo::VAddrDwords.
| unsigned llvm::AMDGPU::getMaxNumUserSGPRs | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2559 of file AMDGPUBaseInfo.cpp.
References isGFX1250Plus().
Referenced by llvm::GCNUserSGPRUsageInfo::allocKernargPreloadSGPRs(), llvm::GCNSubtarget::getMaxNumUserSGPRs(), and llvm::GCNUserSGPRUsageInfo::getNumFreeUserSGPRs().
| LLVM_READONLY int32_t llvm::AMDGPU::getMCOpcode | ( | uint32_t | Opcode, |
| unsigned | Gen ) |
Definition at line 830 of file AMDGPUBaseInfo.cpp.
Referenced by llvm::SIInstrInfo::pseudoToMCOpcode().
| MCRegister llvm::AMDGPU::getMCReg | ( | MCRegister | Reg, |
| const MCSubtargetInfo & | STI ) |
If Reg is a pseudo reg, return the correct hardware register given STI otherwise return Reg.
Definition at line 2796 of file AMDGPUBaseInfo.cpp.
References llvm::Triple::getArch(), llvm::MCSubtargetInfo::getTargetTriple(), MAP_REG2REG, llvm::Triple::r600, and Reg.
Referenced by llvm::AMDGPUDisassembler::createRegOperand(), and llvm::AMDGPUMCInstLower::lowerOperand().
| LLVM_READONLY const MFMA_F8F6F4_Info * llvm::AMDGPU::getMFMA_F8F6F4_WithFormatArgs | ( | unsigned | CBSZ, |
| unsigned | BLGP, | ||
| unsigned | F8F8Opcode ) |
Definition at line 606 of file AMDGPUBaseInfo.cpp.
References mfmaScaleF8F6F4FormatToNumRegs().
Referenced by llvm::AMDGPUDisassembler::convertMAIInst().
| LLVM_READONLY int32_t llvm::AMDGPU::getMFMAEarlyClobberOp | ( | uint32_t | Opcode | ) |
References LLVM_READONLY.
Referenced by llvm::SIInstrInfo::pseudoToMCOpcode().
| LLVM_READONLY int32_t llvm::AMDGPU::getMFMASrcCVDstAGPROp | ( | uint32_t | Opcode | ) |
Opcode of an MFMA which uses VGPRs for srcC/vdst. References LLVM_READONLY.
| LLVM_READONLY const MIMGBaseOpcodeInfo * llvm::AMDGPU::getMIMGBaseOpcode | ( | unsigned | Opc | ) |
Definition at line 320 of file AMDGPUBaseInfo.cpp.
References getMIMGBaseOpcodeInfo(), getMIMGInfo(), and Opc.
| LLVM_READONLY const MIMGBaseOpcodeInfo * llvm::AMDGPU::getMIMGBaseOpcodeInfo | ( | unsigned | BaseOpcode | ) |
| LLVM_READONLY const MIMGBiasMappingInfo * llvm::AMDGPU::getMIMGBiasMappingInfo | ( | unsigned | Bias | ) |
References LLVM_READONLY.
Referenced by simplifyAMDGCNImageIntrinsic().
| LLVM_READONLY const MIMGDimInfo * llvm::AMDGPU::getMIMGDimInfo | ( | unsigned | DimEnum | ) |
References LLVM_READONLY.
| LLVM_READONLY const MIMGDimInfo * llvm::AMDGPU::getMIMGDimInfoByAsmSuffix | ( | StringRef | AsmSuffix | ) |
| LLVM_READONLY const MIMGDimInfo * llvm::AMDGPU::getMIMGDimInfoByEncoding | ( | uint8_t | DimEnc | ) |
References LLVM_READONLY.
Referenced by llvm::AMDGPUDisassembler::convertMIMGInst(), and llvm::SIInstrInfo::verifyInstruction().
| LLVM_READONLY const MIMGG16MappingInfo * llvm::AMDGPU::getMIMGG16MappingInfo | ( | unsigned | G | ) |
References G, LLVM_READONLY, and Opc.
| LLVM_READONLY const MIMGInfo * llvm::AMDGPU::getMIMGInfo | ( | unsigned | Opc | ) |
References LLVM_READONLY, and Opc.
Referenced by llvm::AMDGPUDisassembler::convertMIMGInst(), getMaskedMIMGOp(), getMIMGBaseOpcode(), and llvm::SIInstrInfo::verifyInstruction().
| LLVM_READONLY const MIMGLZMappingInfo * llvm::AMDGPU::getMIMGLZMappingInfo | ( | unsigned | L | ) |
Referenced by simplifyAMDGCNImageIntrinsic().
| LLVM_READONLY const MIMGMIPMappingInfo * llvm::AMDGPU::getMIMGMIPMappingInfo | ( | unsigned | MIP | ) |
References LLVM_READONLY.
Referenced by simplifyAMDGCNImageIntrinsic().
| LLVM_READONLY const MIMGOffsetMappingInfo * llvm::AMDGPU::getMIMGOffsetMappingInfo | ( | unsigned | Offset | ) |
References LLVM_READONLY, and llvm::Offset.
Referenced by simplifyAMDGCNImageIntrinsic().
| LLVM_READONLY int llvm::AMDGPU::getMIMGOpcode | ( | unsigned | BaseOpcode, |
| unsigned | MIMGEncoding, | ||
| unsigned | VDataDwords, | ||
| unsigned | VAddrDwords ) |
Definition at line 313 of file AMDGPUBaseInfo.cpp.
Referenced by llvm::AMDGPUDisassembler::convertMIMGInst(), llvm::AMDGPULegalizerInfo::legalizeBVHDualOrBVH8IntersectRayIntrinsic(), and llvm::AMDGPULegalizerInfo::legalizeBVHIntersectRayIntrinsic().
|
static |
Definition at line 24 of file AMDGPUAsanInstrumentation.cpp.
References getRedzoneSizeForScale().
Referenced by getRedzoneSizeForGlobal().
| LLVM_READONLY int llvm::AMDGPU::getMTBUFBaseOpcode | ( | unsigned | Opc | ) |
Definition at line 477 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY int llvm::AMDGPU::getMTBUFElements | ( | unsigned | Opc | ) |
Definition at line 488 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY bool llvm::AMDGPU::getMTBUFHasSoffset | ( | unsigned | Opc | ) |
Definition at line 503 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY bool llvm::AMDGPU::getMTBUFHasSrsrc | ( | unsigned | Opc | ) |
Definition at line 498 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY bool llvm::AMDGPU::getMTBUFHasVAddr | ( | unsigned | Opc | ) |
Definition at line 493 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY int llvm::AMDGPU::getMTBUFOpcode | ( | unsigned | BaseOpc, |
| unsigned | Elements ) |
Definition at line 482 of file AMDGPUBaseInfo.cpp.
| LLVM_READONLY int llvm::AMDGPU::getMUBUFBaseOpcode | ( | unsigned | Opc | ) |
Definition at line 508 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY int llvm::AMDGPU::getMUBUFElements | ( | unsigned | Opc | ) |
Definition at line 519 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY bool llvm::AMDGPU::getMUBUFHasSoffset | ( | unsigned | Opc | ) |
Definition at line 534 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY bool llvm::AMDGPU::getMUBUFHasSrsrc | ( | unsigned | Opc | ) |
Definition at line 529 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY bool llvm::AMDGPU::getMUBUFHasVAddr | ( | unsigned | Opc | ) |
Definition at line 524 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY bool llvm::AMDGPU::getMUBUFIsBufferInv | ( | unsigned | Opc | ) |
Definition at line 539 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY int llvm::AMDGPU::getMUBUFOpcode | ( | unsigned | BaseOpc, |
| unsigned | Elements ) |
Definition at line 513 of file AMDGPUBaseInfo.cpp.
| LLVM_READONLY bool llvm::AMDGPU::getMUBUFTfe | ( | unsigned | Opc | ) |
Definition at line 544 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by llvm::SITargetLowering::AddMemOpInit().
Definition at line 255 of file AMDGPUBaseInfo.cpp.
References AMDHSA_COV4, AMDHSA_COV5, AMDHSA_COV6, and llvm::AMDGPU::ImplicitArg::MULTIGRID_SYNC_ARG_OFFSET.
|
static |
Map from the encoding of a sendmsg/hwreg asm operand to it's name.
Definition at line 25 of file AMDGPUAsmUtils.cpp.
References llvm::First, and N.
Referenced by llvm::AMDGPU::Hwreg::getHwreg(), llvm::AMDGPU::SendMsg::getMsgName(), llvm::AMDGPU::SendMsg::getMsgOpName(), and llvm::AMDGPU::WaitEvent::getWaitEventMaskName().
| unsigned llvm::AMDGPU::getNSAMaxSize | ( | const MCSubtargetInfo & | STI, |
| bool | HasSampler ) |
Definition at line 2548 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::getCPU(), getIsaVersion(), and llvm::Version.
Referenced by llvm::GCNSubtarget::getNSAMaxSize().
|
constexpr |
Get the null pointer value for the given address space.
Definition at line 172 of file AMDGPUAddrSpace.h.
| unsigned llvm::AMDGPU::getNumFlatOffsetBits | ( | const MCSubtargetInfo & | ST | ) |
For pre-GFX12 FLAT instructions the offset must be positive; MSB is ignored and forced to zero.
Definition at line 3467 of file AMDGPUBaseInfo.cpp.
References isGFX10(), and isGFX12().
Referenced by llvm::SIInstrInfo::isLegalFLATOffset(), and llvm::SIInstrInfo::splitFlatOffset().
|
inline |
Definition at line 1830 of file AMDGPUBaseInfo.h.
References getOperandSize().
|
inline |
Definition at line 1785 of file AMDGPUBaseInfo.h.
References llvm_unreachable, OPERAND_INLINE_SPLIT_BARRIER_INT32, OPERAND_KIMM16, OPERAND_KIMM32, OPERAND_KIMM64, OPERAND_REG_IMM_BF16, OPERAND_REG_IMM_FP16, OPERAND_REG_IMM_FP32, OPERAND_REG_IMM_FP64, OPERAND_REG_IMM_INT16, OPERAND_REG_IMM_INT32, OPERAND_REG_IMM_INT64, OPERAND_REG_IMM_NOINLINE_V2FP16, OPERAND_REG_IMM_V2BF16, OPERAND_REG_IMM_V2FP16, OPERAND_REG_IMM_V2FP16_SPLAT, OPERAND_REG_IMM_V2FP32, OPERAND_REG_IMM_V2INT16, OPERAND_REG_IMM_V2INT32, OPERAND_REG_INLINE_AC_FP32, OPERAND_REG_INLINE_AC_FP64, OPERAND_REG_INLINE_AC_INT32, OPERAND_REG_INLINE_C_BF16, OPERAND_REG_INLINE_C_FP16, OPERAND_REG_INLINE_C_FP32, OPERAND_REG_INLINE_C_FP64, OPERAND_REG_INLINE_C_INT16, OPERAND_REG_INLINE_C_INT32, OPERAND_REG_INLINE_C_INT64, OPERAND_REG_INLINE_C_V2BF16, OPERAND_REG_INLINE_C_V2FP16, and OPERAND_REG_INLINE_C_V2INT16.
Referenced by getOperandSize().
| LLVM_READNONE std::optional< unsigned > llvm::AMDGPU::getPKFMACF16InlineEncoding | ( | uint32_t | Literal, |
| bool | IsGFX11Plus ) |
Definition at line 3235 of file AMDGPUBaseInfo.cpp.
References getInlineEncodingV216(), llvm::Hi, llvm::Literal, llvm::Lo, and llvm::Signed.
Referenced by isPKFMACF16InlineConstant().
Given SizeInBytes of the Value to be instrunmented, Returns the redzone size corresponding to it.
Definition at line 28 of file AMDGPUAsanInstrumentation.cpp.
References assert(), and getMinRedzoneSizeForGlobal().
|
static |
Definition at line 18 of file AMDGPUAsanInstrumentation.cpp.
Referenced by getMinRedzoneSizeForGlobal().
| unsigned llvm::AMDGPU::getRegBitWidth | ( | const MCRegisterClass & | RC | ) |
Get the size in bits of a register from the register class RC.
Definition at line 3053 of file AMDGPUBaseInfo.cpp.
References llvm::MCRegisterClass::getID(), and getRegBitWidth().
| unsigned llvm::AMDGPU::getRegBitWidth | ( | const TargetRegisterClass & | RC | ) |
Get the size in bits of a register from the register class RC.
Definition at line 3333 of file SIRegisterInfo.cpp.
References llvm::TargetRegisterClass::getID(), and getRegBitWidth().
Referenced by llvm::SIRegisterInfo::buildSpillLoadStore(), llvm::SIInstrInfo::canInsertSelect(), getRegBitWidth(), getRegBitWidth(), llvm::SIRegisterInfo::getRegSplitParts(), and llvm::SIInstrInfo::isLegalRegOperand().
Get the size in bits of a register from the register class RC.
Definition at line 2895 of file AMDGPUBaseInfo.cpp.
References llvm_unreachable.
| unsigned llvm::AMDGPU::getSamplecntBitMask | ( | const IsaVersion & | Version | ) |
Version. Returns 0 for versions that do not support SAMPLEcnt Definition at line 1781 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by llvm::AMDGPU::HardwareLimits::HardwareLimits().
| LLVM_READONLY int32_t llvm::AMDGPU::getSDWAOp | ( | uint32_t | Opcode | ) |
References LLVM_READONLY.
Deduce the least significant bit aligned shift and mask values for a binary Complement Value (as they're defined in SIDefines.h as C_*) as a returned pair<shift, mask>.
That is to say Value == ~(mask << shift)
For example, given C_00B848_FWD_PROGRESS (i.e., 0x7FFFFFFF) from SIDefines.h, this will return the pair as (31,1).
Definition at line 27 of file SIDefinesUtils.h.
| LLVM_READONLY bool llvm::AMDGPU::getSMEMIsBuffer | ( | unsigned | Opc | ) |
Definition at line 549 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by llvm::AMDGPUDisassembler::isBufferInstruction(), and supportsScaleOffset().
| std::optional< int64_t > llvm::AMDGPU::getSMRDEncodedLiteralOffset32 | ( | const MCSubtargetInfo & | ST, |
| int64_t | ByteOffset ) |
Definition at line 3457 of file AMDGPUBaseInfo.cpp.
References convertSMRDOffsetUnits(), isCI(), isDwordAligned(), and llvm::isUInt().
| std::optional< int64_t > llvm::AMDGPU::getSMRDEncodedOffset | ( | const MCSubtargetInfo & | ST, |
| int64_t | ByteOffset, | ||
| bool | IsBuffer, | ||
| bool | HasSOffset = false ) |
ByteOffset in the SMRD offset field, or std::nullopt if it won't fit. On GFX9 and GFX10 S_LOAD instructions have a signed offset, on other subtargets it is unsigned. S_BUFFER has an unsigned offset for all subtargets. Definition at line 3428 of file AMDGPUBaseInfo.cpp.
References assert(), convertSMRDOffsetUnits(), hasSMEMByteOffset(), hasSMRDSignedImmOffset(), isDwordAligned(), isGFX12Plus(), llvm::isInt(), and isLegalSMRDEncodedUnsignedOffset().
| LLVM_READONLY int32_t llvm::AMDGPU::getSOPKOp | ( | uint32_t | Opcode | ) |
References LLVM_READONLY.
| LLVM_READONLY int32_t llvm::AMDGPU::getSOPPWithRelaxation | ( | uint32_t | Opcode | ) |
|
inlinestatic |
Definition at line 131 of file AMDGPUMCExpr.h.
References llvm::MCSymbolRefExpr::getKind().
Referenced by needsPCRel().
| unsigned llvm::AMDGPU::getStorecntBitMask | ( | const IsaVersion & | Version | ) |
Version. returns 0 for versions that do not support STOREcnt or VScnt. STOREcnt and VScnt are the same counter, the name used depends on the ISA version. Definition at line 1809 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by llvm::AMDGPU::HardwareLimits::HardwareLimits().
|
static |
Definition at line 42 of file AMDGPUMemoryUtils.cpp.
References llvm::dyn_cast(), and llvm::GlobalValue::getValueType().
Referenced by isNamedBarrier().
| LLVM_READONLY unsigned llvm::AMDGPU::getTemporalHintType | ( | const MCInstrDesc | TID | ) |
Definition at line 780 of file AMDGPUBaseInfo.cpp.
References llvm::MCInstrDesc::getOpcode(), isAsyncStore(), llvm::SIInstrFlags::IsAtomicNoRet, llvm::SIInstrFlags::IsAtomicRet, isTensorStore(), llvm::MCInstrDesc::mayLoad(), llvm::MCInstrDesc::mayStore(), Opc, llvm::AMDGPU::CPol::TH_TYPE_ATOMIC, llvm::AMDGPU::CPol::TH_TYPE_LOAD, llvm::AMDGPU::CPol::TH_TYPE_STORE, and llvm::MCInstrDesc::TSFlags.
| int llvm::AMDGPU::getTotalNumVGPRs | ( | bool | has90AInsts, |
| int32_t | ArgNumAGPR, | ||
| int32_t | ArgNumVGPR ) |
Definition at line 2715 of file AMDGPUBaseInfo.cpp.
References llvm::alignTo().
| LDSUsesInfoTy llvm::AMDGPU::getTransitiveUsesOfLDS | ( | const CallGraph & | CG, |
| Module & | M ) |
Definition at line 138 of file AMDGPUMemoryUtils.cpp.
References assert(), llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::contains(), llvm::SmallVectorTemplateCommon< T, typename >::empty(), F, getUsesOfLDSByFunction(), llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::insert(), llvm::SmallPtrSetImpl< PtrType >::insert(), isDynamicLDS(), isKernel(), isNamedBarrier(), llvm::SmallVectorImpl< T >::pop_back_val(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::reportFatalUsageError(), and llvm::set_union().
| void llvm::AMDGPU::getUsesOfLDSByFunction | ( | const CallGraph & | CG, |
| Module & | M, | ||
| FunctionVariableMap & | kernels, | ||
| FunctionVariableMap & | Functions ) |
Definition at line 118 of file AMDGPUMemoryUtils.cpp.
References llvm::dyn_cast(), F, I, isKernel(), isLDSVariableToLower(), and llvm::Value::users().
Referenced by getTransitiveUsesOfLDS().
| LLVM_READONLY int32_t llvm::AMDGPU::getVCMPXNoSDstOp | ( | uint32_t | Opcode | ) |
References LLVM_READONLY.
| LLVM_READONLY int32_t llvm::AMDGPU::getVCMPXOpFromVCMP | ( | uint32_t | Opcode | ) |
| unsigned llvm::AMDGPU::getVGPREncodingMSBs | ( | MCRegister | Reg, |
| const MCRegisterInfo & | MRI ) |
Reg. Definition at line 3545 of file AMDGPUBaseInfo.cpp.
References MRI, Reg, and llvm::AMDGPU::HWEncoding::REG_IDX_MASK.
Referenced by llvm::AMDGPU::VOPD::InstInfo::getInvalidCompOperandIndex().
| std::pair< const AMDGPU::OpName *, const AMDGPU::OpName * > llvm::AMDGPU::getVGPRLoweringOperandTables | ( | const MCInstrDesc & | Desc | ) |
Definition at line 3574 of file AMDGPUBaseInfo.cpp.
References assert(), llvm::SIInstrFlags::DPP, llvm::SIInstrFlags::DS, llvm::SIInstrFlags::EXP, llvm::SIInstrFlags::FLAT, getVOPDComponents(), isVOPD(), llvm_unreachable, llvm::SIInstrFlags::MIMG, llvm::SIInstrFlags::MTBUF, llvm::SIInstrFlags::MUBUF, llvm::SIInstrFlags::VIMAGE, llvm::SIInstrFlags::VOP1, llvm::SIInstrFlags::VOP2, llvm::SIInstrFlags::VOP3, llvm::SIInstrFlags::VOP3P, llvm::SIInstrFlags::VOPC, and llvm::SIInstrFlags::VSAMPLE.
Referenced by getRegFromMIA().
| const MCRegisterClass * llvm::AMDGPU::getVGPRPhysRegClass | ( | MCRegister | Reg, |
| const MCRegisterInfo & | MRI ) |
Reg if it is a VGPR or nullptr otherwise. Definition at line 3524 of file AMDGPUBaseInfo.cpp.
References llvm::MCRegisterClass::contains(), MRI, and Reg.
Referenced by getRegForPrinting(), and getVGPRWithMSBs().
| MCRegister llvm::AMDGPU::getVGPRWithMSBs | ( | MCRegister | Reg, |
| unsigned | MSBs, | ||
| const MCRegisterInfo & | MRI ) |
If Reg is a low VGPR return a corresponding high VGPR with MSBs set.
Definition at line 3551 of file AMDGPUBaseInfo.cpp.
References llvm::MCRegisterClass::getID(), llvm::MCRegisterClass::getRegister(), getVGPRPhysRegClass(), llvm::AMDGPU::HWEncoding::IS_HI16, MRI, Reg, and llvm::AMDGPU::HWEncoding::REG_IDX_MASK.
Referenced by getRegFromMIA().
| unsigned llvm::AMDGPU::getVmcntBitMask | ( | const IsaVersion & | Version | ) |
Version. Definition at line 1771 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by llvm::AMDGPU::HardwareLimits::HardwareLimits(), and llvm::AMDGPUInstPrinter::printSWaitCnt().
| LLVM_READONLY bool llvm::AMDGPU::getVOP1IsSingle | ( | unsigned | Opc | ) |
Definition at line 554 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY bool llvm::AMDGPU::getVOP2IsSingle | ( | unsigned | Opc | ) |
Definition at line 559 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY bool llvm::AMDGPU::getVOP3IsSingle | ( | unsigned | Opc | ) |
Definition at line 564 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY std::pair< unsigned, unsigned > llvm::AMDGPU::getVOPDComponents | ( | unsigned | VOPDOpcode | ) |
Definition at line 858 of file AMDGPUBaseInfo.cpp.
References assert().
Referenced by getVGPRLoweringOperandTables(), and getVOPDInstInfo().
| LLVM_READONLY unsigned llvm::AMDGPU::getVOPDEncodingFamily | ( | const MCSubtargetInfo & | ST | ) |
ST. Definition at line 637 of file AMDGPUBaseInfo.cpp.
References llvm::SIEncodingFamily::GFX11, llvm::SIEncodingFamily::GFX12, llvm::SIEncodingFamily::GFX1250, llvm::SIEncodingFamily::GFX13, and llvm_unreachable.
Referenced by shouldScheduleVOPDAdjacent().
| LLVM_READONLY int llvm::AMDGPU::getVOPDFull | ( | unsigned | OpX, |
| unsigned | OpY, | ||
| unsigned | EncodingFamily, | ||
| bool | VOPD3 ) |
Definition at line 849 of file AMDGPUBaseInfo.cpp.
References getBitOp2().
Referenced by getCanBeVOPD().
| LLVM_READONLY VOPD::InstInfo llvm::AMDGPU::getVOPDInstInfo | ( | const MCInstrDesc & | OpX, |
| const MCInstrDesc & | OpY ) |
Definition at line 1028 of file AMDGPUBaseInfo.cpp.
Referenced by llvm::checkVOPDRegConstraints().
| LLVM_READONLY VOPD::InstInfo llvm::AMDGPU::getVOPDInstInfo | ( | unsigned | VOPDOpcode, |
| const MCInstrInfo * | InstrInfo ) |
Definition at line 1032 of file AMDGPUBaseInfo.cpp.
References llvm::AMDGPU::VOPD::COMPONENT_X, getVOPDComponents(), and llvm::SIInstrFlags::VOPD3.
| LLVM_READONLY unsigned llvm::AMDGPU::getVOPDOpcode | ( | unsigned | Opc, |
| bool | VOPD3 ) |
Definition at line 676 of file AMDGPUBaseInfo.cpp.
References getBitOp2(), and Opc.
Referenced by getCanBeVOPD().
| LLVM_READONLY int32_t llvm::AMDGPU::getVOPe32 | ( | uint32_t | Opcode | ) |
References LLVM_READONLY.
Referenced by llvm::SIInstrInfo::hasVALU32BitEncoding().
| LLVM_READONLY int32_t llvm::AMDGPU::getVOPe64 | ( | uint32_t | Opcode | ) |
References LLVM_READONLY.
Referenced by llvm::SITargetLowering::EmitInstrWithCustomInserter().
| unsigned llvm::AMDGPU::getWaitcntBitMask | ( | const IsaVersion & | Version | ) |
Version. Definition at line 1832 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by encodeWaitcnt().
| LLVM_READONLY const MFMA_F8F6F4_Info * llvm::AMDGPU::getWMMA_F8F6F4_WithFormatArgs | ( | unsigned | FmtA, |
| unsigned | FmtB, | ||
| unsigned | F8F8Opcode ) |
Definition at line 629 of file AMDGPUBaseInfo.cpp.
References wmmaScaleF8F6F4FormatToNumRegs().
Referenced by llvm::AMDGPUDisassembler::convertWMMAInst().
| LLVM_READONLY bool llvm::AMDGPU::getWMMAIsXDL | ( | unsigned | Opc | ) |
Definition at line 585 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by llvm::SIInstrInfo::isXDLWMMA().
| unsigned llvm::AMDGPU::getXcntBitMask | ( | const IsaVersion & | Version | ) |
Version. Returns 0 for versions that do not support Xcnt. Definition at line 1805 of file AMDGPUBaseInfo.cpp.
References llvm::Version.
Referenced by llvm::AMDGPU::HardwareLimits::HardwareLimits().
| bool llvm::AMDGPU::hasA16 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2531 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
| bool llvm::AMDGPU::hasAny64BitVGPROperands | ( | const MCInstrDesc & | OpDesc, |
| const MCInstrInfo & | MII, | ||
| const MCSubtargetInfo & | ST ) |
Definition at line 3686 of file AMDGPUBaseInfo.cpp.
References llvm::MCInstrDesc::getOpcode(), llvm::MCInstrInfo::getOpRegClassID(), llvm::MCSubtargetInfo::HwMode_RegInfo, and llvm::MCInstrDesc::operands().
Referenced by isDPALU_DPP().
| bool llvm::AMDGPU::hasAny64BitVGPROperands | ( | const MCInstrDesc & | OpDesc, |
| const MCSubtargetInfo & | ST ) |
| bool llvm::AMDGPU::hasArchitectedFlatScratch | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2695 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by llvm::AMDGPUTargetAsmStreamer::EmitAmdhsaKernelDescriptor().
| bool llvm::AMDGPU::hasDPPSrc1SGPR | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2707 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
References F, and LLVM_READNONE.
| bool llvm::AMDGPU::hasG16 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2535 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by llvm::AMDGPUDisassembler::convertMIMGInst().
| bool llvm::AMDGPU::hasGDS | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2544 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by llvm::AMDGPUDisassembler::getInstruction().
| bool llvm::AMDGPU::hasGFX10_3Insts | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2679 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by llvm::AMDGPU::IsaInfo::getMaxWavesPerEU(), and llvm::AMDGPU::IsaInfo::getVGPRAllocGranule().
| unsigned llvm::AMDGPU::hasKernargPreload | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2711 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by llvm::AMDGPUTargetAsmStreamer::EmitAmdhsaKernelDescriptor(), and llvm::AMDGPUDisassembler::hasKernargPreload().
| bool llvm::AMDGPU::hasMAIInsts | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2699 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
| bool llvm::AMDGPU::hasMIMG_R128 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2526 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
|
inline |
Definition at line 415 of file AMDGPUBaseInfo.h.
Referenced by llvm::SIInstrInfo::areLoadsFromSameBasePtr(), llvm::checkVOPDRegConstraints(), llvm::AMDGPU::VOPD::ComponentProps::ComponentProps(), llvm::AMDGPUDisassembler::convertDPP8Inst(), llvm::AMDGPUDisassembler::convertSDWAInst(), llvm::AMDGPUDisassembler::convertVOP3DPPInst(), llvm::AMDGPUDisassembler::convertVOP3PDPPInst(), llvm::AMDGPUDisassembler::convertVOPC64DPPInst(), llvm::AMDGPUDisassembler::convertVOPCDPPInst(), cvtVOP3DstOpSelOnly(), llvm::SIRegisterInfo::eliminateFrameIndex(), getDstSelForwardingOperand(), getFlatScratchSpillOpcode(), llvm::AMDGPUDisassembler::getInstruction(), llvm::SIInstrInfo::hasModifiers(), llvm::AMDGPUDisassembler::isMacDPP(), isVOPD(), llvm::AMDGPUMCInstLower::lowerT16D16Helper(), llvm::SIInstrInfo::moveToVALUImpl(), llvm::SITargetLowering::PostISelFolding(), and supportsScaleOffset().
| bool llvm::AMDGPU::hasPackedD16 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2539 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature(), isCI(), and isSI().
Referenced by llvm::AMDGPUDisassembler::convertMIMGInst().
|
static |
Definition at line 3391 of file AMDGPUBaseInfo.cpp.
References isGCN3Encoding(), and isGFX10Plus().
Referenced by convertSMRDOffsetUnits(), getSMRDEncodedOffset(), and isLegalSMRDEncodedUnsignedOffset().
| bool llvm::AMDGPU::hasSMRDSignedImmOffset | ( | const MCSubtargetInfo & | ST | ) |
Definition at line 203 of file AMDGPUBaseInfo.cpp.
References isGFX9Plus().
Referenced by getSMRDEncodedOffset(), and isLegalSMRDEncodedSignedOffset().
| bool llvm::AMDGPU::hasSRAMECC | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2522 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Checks if Val is inside MD, a !range-like metadata.
Definition at line 1724 of file AMDGPUBaseInfo.cpp.
References assert(), E(), llvm::mdconst::extract(), llvm::MDNode::getNumOperands(), llvm::MDNode::getOperand(), High, I, and llvm::Low.
Referenced by flatInstrMayAccessPrivate().
| bool llvm::AMDGPU::hasVOPD | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2703 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by llvm::AMDGPUDisassembler::decodeMandatoryLiteralConstant().
| bool llvm::AMDGPU::hasXNACK | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2518 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
| void llvm::AMDGPU::initDefaultAMDKernelCodeT | ( | AMDGPUMCKernelCodeT & | KernelCode, |
| const MCSubtargetInfo * | STI ) |
Definition at line 1551 of file AMDGPUBaseInfo.cpp.
References AMD_CODE_PROPERTY_ENABLE_WAVEFRONT_SIZE32, llvm::AMDGPU::AMDGPUMCKernelCodeT::amd_kernel_code_version_major, llvm::AMDGPU::AMDGPUMCKernelCodeT::amd_kernel_code_version_minor, llvm::AMDGPU::AMDGPUMCKernelCodeT::amd_machine_kind, llvm::AMDGPU::AMDGPUMCKernelCodeT::amd_machine_version_major, llvm::AMDGPU::AMDGPUMCKernelCodeT::amd_machine_version_minor, llvm::AMDGPU::AMDGPUMCKernelCodeT::amd_machine_version_stepping, llvm::AMDGPU::AMDGPUMCKernelCodeT::call_convention, llvm::AMDGPU::AMDGPUMCKernelCodeT::code_properties, llvm::AMDGPU::AMDGPUMCKernelCodeT::compute_pgm_resource_registers, llvm::MCSubtargetInfo::getCPU(), llvm::MCSubtargetInfo::getFeatureBits(), getIsaVersion(), llvm::AMDGPU::AMDGPUMCKernelCodeT::group_segment_alignment, llvm::AMDGPU::AMDGPUMCKernelCodeT::kernarg_segment_alignment, llvm::AMDGPU::AMDGPUMCKernelCodeT::kernel_code_entry_byte_offset, llvm::AMDGPU::AMDGPUMCKernelCodeT::private_segment_alignment, S_00B848_FWD_PROGRESS, S_00B848_MEM_ORDERED, S_00B848_WGP_MODE, llvm::FeatureBitset::test(), llvm::Version, and llvm::AMDGPU::AMDGPUMCKernelCodeT::wavefront_size.
Referenced by llvm::AMDGPU::AMDGPUMCKernelCodeT::initDefault().
| iota_range< InstCounterType > llvm::AMDGPU::inst_counter_types | ( | InstCounterType | MaxCounter | ) |
Definition at line 197 of file AMDGPUBaseInfo.cpp.
References llvm::enum_seq(), and LOAD_CNT.
| void llvm::AMDGPU::instrumentAddress | ( | Module & | M, |
| IRBuilder<> & | IRB, | ||
| Instruction * | OrigIns, | ||
| Instruction * | InsertBefore, | ||
| Value * | Addr, | ||
| Align | Alignment, | ||
| TypeSize | TypeStoreSize, | ||
| bool | IsWrite, | ||
| Value * | SizeArgument, | ||
| bool | UseCalls, | ||
| bool | Recover, | ||
| int | Scale, | ||
| int | Offset ) |
Instrument the memory operand Addr.
Generates report blocks that catch the addressing errors.
Definition at line 183 of file AMDGPUAsanInstrumentation.cpp.
References llvm::IRBuilderBase::CreateAdd(), llvm::IRBuilderBase::CreateIntToPtr(), llvm::IRBuilderBase::CreateLShr(), llvm::IRBuilderBase::CreatePtrToInt(), llvm::IRBuilderBase::CreateTypeSize(), llvm::Constant::getAllOnesValue(), llvm::details::FixedOrScalableQuantity< LeafTy, ValueTy >::getFixedValue(), llvm::Value::getType(), instrumentAddressImpl(), llvm::details::FixedOrScalableQuantity< LeafTy, ValueTy >::isScalable(), llvm::IRBuilderBase::SetInsertPoint(), Size, and llvm::Align::value().
|
static |
Definition at line 150 of file AMDGPUAsanInstrumentation.cpp.
References llvm::IRBuilderBase::CreateAlignedLoad(), llvm::IRBuilderBase::CreateAnd(), llvm::IRBuilderBase::CreateIntToPtr(), llvm::IRBuilderBase::CreateIsNotNull(), llvm::IRBuilderBase::CreatePtrToInt(), createSlowPathCmp(), genAMDGPUReportBlock(), generateCrashCode(), llvm::IntegerType::get(), llvm::PointerType::get(), llvm::Instruction::getDebugLoc(), llvm::Type::getPointerAddressSpace(), llvm::Value::getType(), memToShadow(), llvm::Instruction::setDebugLoc(), llvm::IRBuilderBase::SetInsertPoint(), TypeStoreSizeToSizeIndex(), and llvm::Align::value().
Referenced by instrumentAddress().
Ty is a pointer type with size Width. Definition at line 29 of file AMDGPURegBankLegalizeRules.cpp.
Referenced by LLTToBId(), and matchUniformityAndLLT().
Definition at line 3336 of file AMDGPUBaseInfo.cpp.
References A(), llvm::CallingConv::AMDGPU_CS, llvm::CallingConv::AMDGPU_CS_Chain, llvm::CallingConv::AMDGPU_CS_ChainPreserve, llvm::CallingConv::AMDGPU_ES, llvm::CallingConv::AMDGPU_Gfx, llvm::CallingConv::AMDGPU_GS, llvm::CallingConv::AMDGPU_HS, llvm::CallingConv::AMDGPU_KERNEL, llvm::CallingConv::AMDGPU_LS, llvm::CallingConv::AMDGPU_PS, llvm::CallingConv::AMDGPU_VS, F, and llvm::CallingConv::SPIR_KERNEL.
Referenced by adjustInliningThresholdUsingCallee(), isTriviallyUniform(), and isUniformMMO().
Definition at line 3365 of file AMDGPUBaseInfo.cpp.
References llvm::CallingConv::AMDGPU_CS, llvm::CallingConv::AMDGPU_CS_Chain, llvm::CallingConv::AMDGPU_CS_ChainPreserve, llvm::CallingConv::AMDGPU_ES, llvm::CallingConv::AMDGPU_Gfx, llvm::CallingConv::AMDGPU_GS, llvm::CallingConv::AMDGPU_HS, llvm::CallingConv::AMDGPU_KERNEL, llvm::CallingConv::AMDGPU_LS, llvm::CallingConv::AMDGPU_PS, llvm::CallingConv::AMDGPU_VS, llvm::CallBase::getCallingConv(), llvm::CallBase::paramHasAttr(), and llvm::CallingConv::SPIR_KERNEL.
| LLVM_READONLY bool llvm::AMDGPU::isAsyncStore | ( | unsigned | Opc | ) |
Definition at line 764 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by getTemporalHintType().
|
constexpr |
Definition at line 1627 of file AMDGPUBaseInfo.h.
References llvm::CallingConv::AMDGPU_CS_Chain, and llvm::CallingConv::AMDGPU_CS_ChainPreserve.
Referenced by getCallOpcode(), llvm::AMDGPUCallLowering::handleImplicitCallArguments(), llvm::SITargetLowering::isEligibleForTailCallOptimization(), isModuleEntryFunctionCC(), llvm::SITargetLowering::LowerCall(), llvm::AMDGPUCallLowering::lowerTailCall(), and llvm::SIMachineFunctionInfo::SIMachineFunctionInfo().
| bool llvm::AMDGPU::isCI | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2569 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by llvm::AMDGPU::MTBUFFormat::getNfmtLookupTable(), getSMRDEncodedLiteralOffset32(), hasPackedD16(), and isNotGFX10Plus().
| bool llvm::AMDGPU::isClobberedInFunction | ( | const LoadInst * | Load, |
| MemorySSA * | MSSA, | ||
| AAResults * | AA ) |
Check is a Load is clobbered in its function.
Definition at line 398 of file AMDGPUMemoryUtils.cpp.
References llvm::cast(), llvm::dbgs(), llvm::dyn_cast(), llvm::SmallVectorTemplateCommon< T, typename >::empty(), llvm::MemoryLocation::get(), llvm::MemorySSAWalker::getClobberingMemoryAccess(), llvm::MemorySSA::getWalker(), llvm::SmallPtrSetImpl< PtrType >::insert(), llvm::MemorySSA::isLiveOnEntryDef(), isReallyAClobber(), LLVM_DEBUG, llvm::SmallVectorImpl< T >::pop_back_val(), and llvm::SmallVectorTemplateBase< T, bool >::push_back().
|
constexpr |
Definition at line 1604 of file AMDGPUBaseInfo.h.
References llvm::CallingConv::AMDGPU_CS, and isGraphics().
Referenced by EmitPALMetadataCommon(), llvm::SIProgramInfo::getPGMRSrc1(), llvm::SIProgramInfo::getPGMRSrc2(), llvm::AMDGPULegalizerInfo::loadInputValue(), llvm::SIFrameLowering::mayReserveScratchForCWSR(), llvm::R600InstrInfo::usesTextureCache(), and llvm::R600InstrInfo::usesVertexCache().
Definition at line 99 of file AMDGPUAddrSpace.h.
| LLVM_READNONE bool llvm::AMDGPU::isCvt_F32_Fp8_Bf8_e64 | ( | unsigned | Opc | ) |
Definition at line 729 of file AMDGPUBaseInfo.cpp.
References Opc.
| bool llvm::AMDGPU::isDPALU_DPP | ( | const MCInstrDesc & | OpDesc, |
| const MCInstrInfo & | MII, | ||
| const MCSubtargetInfo & | ST ) |
Definition at line 3724 of file AMDGPUBaseInfo.cpp.
References llvm::MCInstrDesc::getOpcode(), hasAny64BitVGPROperands(), and isDPALU_DPP32BitOpc().
Referenced by llvm::SIInstrInfo::verifyInstruction().
Definition at line 3704 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by isDPALU_DPP().
Definition at line 812 of file AMDGPUBaseInfo.cpp.
References Opc.
Definition at line 3415 of file AMDGPUBaseInfo.cpp.
Referenced by convertSMRDOffsetUnits(), getSMRDEncodedLiteralOffset32(), and getSMRDEncodedOffset().
| bool llvm::AMDGPU::isDynamicLDS | ( | const GlobalVariable & | GV | ) |
Definition at line 67 of file AMDGPUMemoryUtils.cpp.
References DL, llvm::GlobalVariable::getGlobalSize(), llvm::GlobalValue::getParent(), llvm::Type::getPointerAddressSpace(), llvm::GlobalValue::getType(), and llvm::AMDGPUAS::LOCAL_ADDRESS.
Referenced by getTransitiveUsesOfLDS(), and isLDSVariableToLower().
|
constexpr |
Definition at line 1609 of file AMDGPUBaseInfo.h.
References llvm::CallingConv::AMDGPU_CS, llvm::CallingConv::AMDGPU_ES, llvm::CallingConv::AMDGPU_GS, llvm::CallingConv::AMDGPU_HS, llvm::CallingConv::AMDGPU_KERNEL, llvm::CallingConv::AMDGPU_LS, llvm::CallingConv::AMDGPU_PS, llvm::CallingConv::AMDGPU_VS, and llvm::CallingConv::SPIR_KERNEL.
Referenced by llvm::SITargetLowering::CanLowerReturn(), llvm::MCResourceInfo::gatherResourceInfo(), llvm::GCNUserSGPRUsageInfo::GCNUserSGPRUsageInfo(), isModuleEntryFunctionCC(), llvm::AMDGPULegalizerInfo::loadInputValue(), llvm::SITargetLowering::LowerFormalArguments(), llvm::AMDGPUCallLowering::lowerFormalArguments(), llvm::SITargetLowering::mayBeEmittedAsTailCall(), llvm::SIFrameLowering::mayReserveScratchForCWSR(), mustPreserveGV(), and recursivelyVisitUsers().
Definition at line 93 of file AMDGPUAddrSpace.h.
References llvm::AMDGPUAS::CONSTANT_ADDRESS, llvm::AMDGPUAS::CONSTANT_ADDRESS_32BIT, llvm::AMDGPUAS::GLOBAL_ADDRESS, and llvm::AMDGPUAS::MAX_AMDGPU_ADDRESS.
Referenced by llvm::SITargetLowering::allowsMisalignedMemoryAccessesImpl(), llvm::AMDGPURegisterBankInfo::applyMappingLoad(), llvm::GCNTTIImpl::rewriteIntrinsicWithAddressSpace(), and llvm::SITargetLowering::shouldExpandAtomicRMWInIR().
Definition at line 88 of file AMDGPUAddrSpace.h.
References llvm::AMDGPUAS::CONSTANT_ADDRESS, llvm::AMDGPUAS::FLAT_ADDRESS, llvm::AMDGPUAS::GLOBAL_ADDRESS, and llvm::AMDGPUAS::MAX_AMDGPU_ADDRESS.
Referenced by llvm::AMDGPURegisterBankInfo::applyMappingImpl(), llvm::AMDGPURegisterBankInfo::getInstrMappingForLoad(), llvm::AMDGPURegisterBankInfo::getValueMappingForPtr(), llvm::AMDGPUTargetMachine::isNoopAddrSpaceCast(), llvm::AMDGPULegalizerInfo::legalizeAtomicCmpXChg(), llvm::SITargetLowering::shouldExpandAtomicRMWInIR(), and llvm::GCNTTIImpl::shouldPrefetchAddressSpace().
| bool llvm::AMDGPU::isGCN3Encoding | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2667 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by hasSMEMByteOffset().
| LLVM_READNONE bool llvm::AMDGPU::isGenericAtomic | ( | unsigned | Opc | ) |
Definition at line 742 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by llvm::SIInstrInfo::getGenericInstructionUniformity().
| bool llvm::AMDGPU::isGFX10 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2603 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by getGcnBufferFormatInfo(), getGcnBufferFormatInfo(), getNumFlatOffsetBits(), llvm::AMDGPU::MTBUFFormat::getUnifiedFormatName(), llvm::AMDGPUDisassembler::isGFX10(), isGFX10_GFX11(), isGFX10Before1030(), isGFX10Plus(), isGFX8_GFX9_GFX10(), isGFX9_GFX10(), isGFX9_GFX10_GFX11(), and llvm::AMDGPU::MTBUFFormat::isValidUnifiedFormat().
| bool llvm::AMDGPU::isGFX10_3_GFX11 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2683 of file AMDGPUBaseInfo.cpp.
References isGFX10_BEncoding(), and isGFX12Plus().
| bool llvm::AMDGPU::isGFX10_AEncoding | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2671 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
| bool llvm::AMDGPU::isGFX10_BEncoding | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2675 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by isGFX10_3_GFX11(), and isGFX10Before1030().
| bool llvm::AMDGPU::isGFX10_GFX11 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2607 of file AMDGPUBaseInfo.cpp.
| bool llvm::AMDGPU::isGFX10Before1030 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2663 of file AMDGPUBaseInfo.cpp.
References isGFX10(), and isGFX10_BEncoding().
| bool llvm::AMDGPU::isGFX10Plus | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2611 of file AMDGPUBaseInfo.cpp.
References isGFX10(), and isGFX11Plus().
Referenced by createAMDGPUMCSubtargetInfo(), llvm::AMDGPUAsmPrinter::doFinalization(), generateEndPgm(), llvm::AMDGPU::MTBUFFormat::getDefaultFormatEncoding(), llvm::AMDGPU::IsaInfo::getEUsPerCU(), llvm::AMDGPU::IsaInfo::getLocalMemorySize(), llvm::AMDGPU::IsaInfo::getMaxWavesPerEU(), llvm::AMDGPU::IsaInfo::getMaxWorkGroupsPerCU(), llvm::AMDGPU::IsaInfo::getTotalNumVGPRs(), hasSMEMByteOffset(), llvm::AMDGPUDisassembler::isGFX10Plus(), isGFX9Plus(), llvm::AMDGPU::Exp::isSupportedTgtId(), llvm::AMDGPU::MTBUFFormat::isValidFormatEncoding(), supportsWave32(), supportsWGP(), and llvm::AMDGPU::AMDGPUMCKernelCodeT::validate().
| bool llvm::AMDGPU::isGFX11 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2615 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by isGFX10_GFX11(), isGFX1170(), isGFX11Plus(), isGFX9_GFX10_GFX11(), and llvm::AMDGPULegalizerInfo::legalizeBVHIntersectRayIntrinsic().
| bool llvm::AMDGPU::isGFX1170 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2619 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature(), and isGFX11().
Referenced by llvm::AMDGPUDisassembler::isGFX1170().
| bool llvm::AMDGPU::isGFX11Plus | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2623 of file AMDGPUBaseInfo.cpp.
References isGFX11(), and isGFX12Plus().
Referenced by llvm::AMDGPU::MTBUFFormat::convertDfmtNfmt2Ufmt(), llvm::AMDGPU::SendMsg::decodeMsg(), llvm::AMDGPUTargetAsmStreamer::EmitCodeEnd(), llvm::AMDGPUTargetELFStreamer::EmitCodeEnd(), getGcnBufferFormatInfo(), getGcnBufferFormatInfo(), llvm::AMDGPU::SendMsg::getMsgIdMask(), llvm::AMDGPU::MTBUFFormat::getUnifiedFormat(), imageIntrinsicOptimizerImpl(), isGFX10Plus(), llvm::AMDGPUDisassembler::isGFX11Plus(), isNotGFX11Plus(), llvm::AMDGPU::Exp::isSupportedTgtId(), llvm::AMDGPU::SendMsg::isValidMsgStream(), llvm::AMDGPULegalizerInfo::legalizeBVHIntersectRayIntrinsic(), llvm::AMDGPU::SendMsg::msgRequiresOp(), and llvm::AMDGPU::SendMsg::msgSupportsStream().
| bool llvm::AMDGPU::isGFX12 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2627 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::getFeatureBits().
Referenced by getNumFlatOffsetBits(), isGFX12Plus(), and isLegalDPALU_DPPControl().
| bool llvm::AMDGPU::isGFX1250 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2637 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::getFeatureBits(), and isGFX13().
Referenced by llvm::AMDGPU::IsaInfo::getEUsPerCU(), llvm::AMDGPUDisassembler::isGFX1250(), supportsWave32(), and supportsWGP().
| bool llvm::AMDGPU::isGFX1250Plus | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2641 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::getFeatureBits().
Referenced by llvm::AMDGPUTargetAsmStreamer::EmitAmdhsaKernelDescriptor(), getMaxNumUserSGPRs(), and llvm::AMDGPUDisassembler::isGFX1250Plus().
| bool llvm::AMDGPU::isGFX12Plus | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2631 of file AMDGPUBaseInfo.cpp.
References isGFX12(), and isGFX13Plus().
Referenced by llvm::SIInstrInfo::allowNegativeFlatOffset(), getSMRDEncodedOffset(), isGFX10_3_GFX11(), isGFX11Plus(), llvm::AMDGPUDisassembler::isGFX12Plus(), llvm::SIInstrInfo::isLegalRegOperand(), isLegalSMRDEncodedSignedOffset(), isLegalSMRDEncodedUnsignedOffset(), isNotGFX12Plus(), llvm::SIInstrInfo::isXDL(), llvm::AMDGPULegalizerInfo::legalizeBVHIntersectRayIntrinsic(), llvm::SIInstrInfo::legalizeOperandsVOP3(), llvm::AMDGPU::AMDGPUMCKernelCodeT::validate(), and llvm::SIInstrInfo::verifyInstruction().
| bool llvm::AMDGPU::isGFX13 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2645 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::getFeatureBits().
Referenced by isGFX1250(), llvm::AMDGPUDisassembler::isGFX13(), and isGFX13Plus().
| bool llvm::AMDGPU::isGFX13Plus | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2649 of file AMDGPUBaseInfo.cpp.
References isGFX13().
Referenced by isGFX12Plus(), llvm::AMDGPUDisassembler::isGFX13Plus(), and llvm::AMDGPU::Exp::isSupportedTgtId().
| bool llvm::AMDGPU::isGFX8_GFX9_GFX10 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2589 of file AMDGPUBaseInfo.cpp.
| bool llvm::AMDGPU::isGFX8Plus | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2593 of file AMDGPUBaseInfo.cpp.
References isGFX9Plus(), and isVI().
| bool llvm::AMDGPU::isGFX9 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2577 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by llvm::AMDGPU::MTBUFFormat::getNfmtLookupTable(), isGFX8_GFX9_GFX10(), llvm::AMDGPUDisassembler::isGFX9(), isGFX9_GFX10(), isGFX9_GFX10_GFX11(), isGFX9Plus(), and isNotGFX10Plus().
| bool llvm::AMDGPU::isGFX90A | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2687 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by llvm::AMDGPUAsmPrinter::doFinalization(), llvm::AMDGPUTargetAsmStreamer::EmitAmdhsaKernelDescriptor(), llvm::AMDGPUTargetAsmStreamer::EmitCodeEnd(), llvm::AMDGPUTargetELFStreamer::EmitCodeEnd(), llvm::AMDGPU::MCKernelDescriptor::getDefaultAmdhsaKernelDescriptor(), llvm::AMDGPU::IsaInfo::getMaxWavesPerEU(), and isLegalDPALU_DPPControl().
| bool llvm::AMDGPU::isGFX940 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2691 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
| bool llvm::AMDGPU::isGFX9_GFX10 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2581 of file AMDGPUBaseInfo.cpp.
| bool llvm::AMDGPU::isGFX9_GFX10_GFX11 | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2585 of file AMDGPUBaseInfo.cpp.
| bool llvm::AMDGPU::isGFX9Plus | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2597 of file AMDGPUBaseInfo.cpp.
References isGFX10Plus(), and isGFX9().
Referenced by hasSMRDSignedImmOffset(), isGFX8Plus(), llvm::AMDGPUDisassembler::isGFX9Plus(), isNotGFX9Plus(), and llvm::AMDGPUInstPrinter::printSwizzle().
| bool llvm::AMDGPU::isGlobalSegment | ( | const GlobalValue * | GV | ) |
Definition at line 1589 of file AMDGPUBaseInfo.cpp.
References llvm::GlobalValue::getAddressSpace(), and llvm::AMDGPUAS::GLOBAL_ADDRESS.
|
constexpr |
Definition at line 1598 of file AMDGPUBaseInfo.h.
References llvm::CallingConv::AMDGPU_Gfx, llvm::CallingConv::AMDGPU_Gfx_WholeWave, and isShader().
Referenced by llvm::GCNUserSGPRUsageInfo::GCNUserSGPRUsageInfo(), isCompute(), llvm::SIInstrInfo::legalizeOperands(), llvm::SITargetLowering::LowerFormalArguments(), llvm::AMDGPUCallLowering::lowerFormalArguments(), and llvm::SIMachineFunctionInfo::SIMachineFunctionInfo().
| bool llvm::AMDGPU::isGroupSegment | ( | const GlobalValue * | GV | ) |
Definition at line 1585 of file AMDGPUBaseInfo.cpp.
References llvm::GlobalValue::getAddressSpace(), and llvm::AMDGPUAS::LOCAL_ADDRESS.
| bool llvm::AMDGPU::isHi16Reg | ( | MCRegister | Reg, |
| const MCRegisterInfo & | MRI ) |
Reg occupies the high 16-bits of a 32-bit register. Definition at line 2729 of file AMDGPUBaseInfo.cpp.
References llvm::AMDGPU::HWEncoding::IS_HI16, MRI, and Reg.
Referenced by llvm::SIInstrInfo::copyPhysReg(), cvtVOP3DstOpSelOnly(), llvm::SIRegisterInfo::getRegAllocationHints(), llvm::AMDGPUMCInstLower::lowerT16D16Helper(), llvm::AMDGPUMCInstLower::lowerT16FmaMixFP16(), and llvm::SIRegisterInfo::SIRegisterInfo().
| bool llvm::AMDGPU::isHsaAbi | ( | const MCSubtargetInfo & | STI | ) |
STI is AMDHSA. Definition at line 208 of file AMDGPUBaseInfo.cpp.
References llvm::Triple::AMDHSA, llvm::Triple::getOS(), and llvm::MCSubtargetInfo::getTargetTriple().
|
inline |
Is this literal inlinable, and not one of the values intended for floating point values.
Definition at line 1837 of file AMDGPUBaseInfo.h.
References llvm::Literal.
Referenced by llvm::SITargetLowering::checkAsmConstraintVal(), clearUnusedBits(), llvm::SIRegisterInfo::eliminateFrameIndex(), llvm::SIRegisterInfo::isFrameOffsetLegal(), isInlinableLiteral32(), isInlinableLiteral64(), isInlinableLiteralBF16(), isInlinableLiteralFP16(), llvm::SIInstrInfo::isInlineConstant(), and llvm::AMDGPUAsmPrinter::PrintAsmOperand().
| LLVM_READNONE bool llvm::AMDGPU::isInlinableLiteral32 | ( | int32_t | Literal, |
| bool | HasInv2Pi ) |
Definition at line 3074 of file AMDGPUBaseInfo.cpp.
References llvm::bit_cast(), isInlinableIntLiteral(), and llvm::Literal.
Referenced by llvm::SITargetLowering::checkAsmConstraintValA(), llvm::AMDGPUDisassembler::decodeLiteralConstant(), llvm::SIRegisterInfo::eliminateFrameIndex(), llvm::SIFrameLowering::emitEntryFunctionPrologue(), isInlinableLiteralI16(), isInlineableLiteralOp16(), llvm::SIInstrInfo::isInlineConstant(), llvm::SIInstrInfo::isInlineConstant(), and llvm::SIInstrInfo::isLegalAV64PseudoImm().
| LLVM_READNONE bool llvm::AMDGPU::isInlinableLiteral64 | ( | int64_t | Literal, |
| bool | HasInv2Pi ) |
Is this literal inlinable.
Definition at line 3057 of file AMDGPUBaseInfo.cpp.
References llvm::bit_cast(), isInlinableIntLiteral(), and llvm::Literal.
Referenced by llvm::SITargetLowering::checkAsmConstraintValA(), llvm::AMDGPUDisassembler::decodeLiteralConstant(), llvm::SIInstrInfo::isInlineConstant(), llvm::SIInstrInfo::isInlineConstant(), and llvm::SIInstrInfo::isOperandLegal().
| LLVM_READNONE bool llvm::AMDGPU::isInlinableLiteralBF16 | ( | int16_t | Literal, |
| bool | HasInv2Pi ) |
Definition at line 3100 of file AMDGPUBaseInfo.cpp.
References isInlinableIntLiteral(), and llvm::Literal.
Referenced by llvm::SITargetLowering::checkAsmConstraintValA(), llvm::AMDGPUDisassembler::decodeLiteralConstant(), isInlineableLiteralOp16(), llvm::SIInstrInfo::isInlineConstant(), and llvm::SIInstrInfo::isInlineConstant().
| LLVM_READNONE bool llvm::AMDGPU::isInlinableLiteralFP16 | ( | int16_t | Literal, |
| bool | HasInv2Pi ) |
Definition at line 3121 of file AMDGPUBaseInfo.cpp.
References isInlinableIntLiteral(), and llvm::Literal.
Referenced by llvm::SITargetLowering::checkAsmConstraintValA(), llvm::AMDGPUDisassembler::decodeLiteralConstant(), isInlineableLiteralOp16(), llvm::SIInstrInfo::isInlineConstant(), and llvm::SIInstrInfo::isInlineConstant().
| LLVM_READNONE bool llvm::AMDGPU::isInlinableLiteralI16 | ( | int32_t | Literal, |
| bool | HasInv2Pi ) |
Definition at line 3117 of file AMDGPUBaseInfo.cpp.
References isInlinableLiteral32(), and llvm::Literal.
Referenced by llvm::SITargetLowering::checkAsmConstraintValA(), llvm::AMDGPUDisassembler::decodeLiteralConstant(), and llvm::SIInstrInfo::isInlineConstant().
| LLVM_READNONE bool llvm::AMDGPU::isInlinableLiteralV216 | ( | uint32_t | Literal, |
| uint8_t | OpType ) |
Definition at line 3260 of file AMDGPUBaseInfo.cpp.
References getInlineEncodingV216(), isInlinableLiteralV2BF16(), llvm::Literal, llvm_unreachable, OPERAND_REG_IMM_NOINLINE_V2FP16, OPERAND_REG_IMM_V2BF16, OPERAND_REG_IMM_V2FP16, OPERAND_REG_IMM_V2FP16_SPLAT, OPERAND_REG_IMM_V2INT16, OPERAND_REG_INLINE_C_V2BF16, OPERAND_REG_INLINE_C_V2FP16, and OPERAND_REG_INLINE_C_V2INT16.
| LLVM_READNONE bool llvm::AMDGPU::isInlinableLiteralV2BF16 | ( | uint32_t | Literal | ) |
Definition at line 3286 of file AMDGPUBaseInfo.cpp.
References getInlineEncodingV2BF16(), and llvm::Literal.
Referenced by llvm::AMDGPUDisassembler::decodeLiteralConstant(), isInlinableLiteralV216(), and llvm::SIInstrInfo::isInlineConstant().
| LLVM_READNONE bool llvm::AMDGPU::isInlinableLiteralV2F16 | ( | uint32_t | Literal | ) |
Definition at line 3291 of file AMDGPUBaseInfo.cpp.
References getInlineEncodingV2F16(), and llvm::Literal.
Referenced by llvm::AMDGPUDisassembler::decodeLiteralConstant(), and llvm::SIInstrInfo::isInlineConstant().
| LLVM_READNONE bool llvm::AMDGPU::isInlinableLiteralV2I16 | ( | uint32_t | Literal | ) |
Definition at line 3281 of file AMDGPUBaseInfo.cpp.
References getInlineEncodingV2I16(), and llvm::Literal.
Referenced by llvm::AMDGPUDisassembler::decodeLiteralConstant(), and llvm::SIInstrInfo::isInlineConstant().
| LLVM_READNONE bool llvm::AMDGPU::isInlineValue | ( | MCRegister | Reg | ) |
Definition at line 2823 of file AMDGPUBaseInfo.cpp.
References Reg.
Definition at line 3502 of file AMDGPUBaseInfo.cpp.
Referenced by llvm::SIInstrInfo::getGenericInstructionUniformity(), llvm::AMDGPUTargetLowering::isSDNodeAlwaysUniform(), and isTriviallyUniform().
Definition at line 3498 of file AMDGPUBaseInfo.cpp.
Referenced by llvm::SIInstrInfo::getGenericInstructionUniformity(), and llvm::SITargetLowering::isSDNodeSourceOfDivergence().
| LLVM_READONLY bool llvm::AMDGPU::isInvalidSingleUseConsumerInst | ( | unsigned | Opc | ) |
References LLVM_READONLY, and Opc.
| LLVM_READONLY bool llvm::AMDGPU::isInvalidSingleUseProducerInst | ( | unsigned | Opc | ) |
References LLVM_READONLY, and Opc.
|
inlineconstexpr |
Definition at line 1654 of file AMDGPUBaseInfo.h.
References llvm::CallingConv::AMDGPU_KERNEL, and llvm::CallingConv::SPIR_KERNEL.
Referenced by llvm::AMDGPUSubtarget::getImplicitArgNumBytes(), getTransitiveUsesOfLDS(), getUsesOfLDSByFunction(), isKernel(), llvm::AMDGPULegalizerInfo::legalizeIntrinsic(), llvm::SITargetLowering::LowerFormalArguments(), llvm::SITargetLowering::LowerReturn(), llvm::AMDGPUCallLowering::lowerReturn(), and removeFnAttrFromReachable().
Definition at line 1664 of file AMDGPUBaseInfo.h.
References F, and isKernel().
| bool llvm::AMDGPU::isKImmOperand | ( | const MCInstrDesc & | Desc, |
| unsigned | OpNo ) |
Is this a KImm operand?
Definition at line 2854 of file AMDGPUBaseInfo.cpp.
References assert(), OPERAND_KIMM_FIRST, and OPERAND_KIMM_LAST.
| bool llvm::AMDGPU::isLDSVariableToLower | ( | const GlobalVariable & | GV | ) |
Definition at line 76 of file AMDGPUMemoryUtils.cpp.
References llvm::GlobalVariable::getInitializer(), llvm::Type::getPointerAddressSpace(), llvm::GlobalValue::getType(), llvm::GlobalVariable::hasInitializer(), llvm::isa(), llvm::GlobalVariable::isConstant(), isDynamicLDS(), and llvm::AMDGPUAS::LOCAL_ADDRESS.
Referenced by eliminateConstantExprUsesOfLDSFromAllInstructions(), and getUsesOfLDSByFunction().
|
inline |
Definition at line 1936 of file AMDGPUBaseInfo.h.
References isGFX12(), isGFX90A(), llvm::AMDGPU::DPP::ROW_NEWBCAST_FIRST, llvm::AMDGPU::DPP::ROW_NEWBCAST_LAST, llvm::AMDGPU::DPP::ROW_SHARE_FIRST, and llvm::AMDGPU::DPP::ROW_SHARE_LAST.
Referenced by llvm::SIInstrInfo::expandMovDPP64(), llvm::AMDGPULegalizerInfo::legalizeLaneOp(), lowerLaneOp(), and llvm::SIInstrInfo::verifyInstruction().
| LLVM_READONLY bool llvm::AMDGPU::isLegalSMRDEncodedSignedOffset | ( | const MCSubtargetInfo & | ST, |
| int64_t | EncodedOffset, | ||
| bool | IsBuffer ) |
Definition at line 3404 of file AMDGPUBaseInfo.cpp.
References hasSMRDSignedImmOffset(), isGFX12Plus(), and llvm::isInt().
| LLVM_READONLY bool llvm::AMDGPU::isLegalSMRDEncodedUnsignedOffset | ( | const MCSubtargetInfo & | ST, |
| int64_t | EncodedOffset ) |
Definition at line 3395 of file AMDGPUBaseInfo.cpp.
References hasSMEMByteOffset(), isGFX12Plus(), and llvm::isUInt().
Referenced by getSMRDEncodedOffset().
| bool llvm::AMDGPU::isLegalSMRDImmOffset | ( | const MCSubtargetInfo & | ST, |
| int64_t | ByteOffset ) |
ByteOffset should be the offset in bytes and not the encoded offset. References LLVM_READNONE.
Definition at line 706 of file AMDGPUMCExpr.cpp.
References llvm::AMDGPUMCExpr::AGVK_Lit, llvm::AMDGPUMCExpr::AGVK_Lit64, and llvm::dyn_cast().
Referenced by getLitValue().
| LLVM_READNONE bool llvm::AMDGPU::isMAC | ( | unsigned | Opc | ) |
Definition at line 687 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by llvm::AMDGPUDisassembler::getInstruction().
|
constexpr |
Definition at line 1644 of file AMDGPUBaseInfo.h.
References llvm::CallingConv::AMDGPU_Gfx, isChainCC(), and isEntryFunctionCC().
Referenced by llvm::AMDGPUTargetMachine::getAssumedAddrSpace().
| TargetExtType * llvm::AMDGPU::isNamedBarrier | ( | const GlobalVariable & | GV | ) |
Definition at line 61 of file AMDGPUMemoryUtils.cpp.
References llvm::TargetExtType::getName(), and getTargetExtType().
Referenced by llvm::AMDGPUMachineFunction::allocateLDSGlobal(), getTransitiveUsesOfLDS(), llvm::AMDGPULegalizerInfo::legalizeGlobalValue(), and llvm::AMDGPUTargetLowering::LowerGlobalAddress().
| bool llvm::AMDGPU::isNotGFX10Plus | ( | const MCSubtargetInfo & | STI | ) |
| bool llvm::AMDGPU::isNotGFX11Plus | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2657 of file AMDGPUBaseInfo.cpp.
References isGFX11Plus().
| bool llvm::AMDGPU::isNotGFX12Plus | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2635 of file AMDGPUBaseInfo.cpp.
References isGFX12Plus().
| bool llvm::AMDGPU::isNotGFX9Plus | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2601 of file AMDGPUBaseInfo.cpp.
References isGFX9Plus().
| LLVM_READONLY bool llvm::AMDGPU::isPackedFP32Inst | ( | unsigned | Opc | ) |
Definition at line 3747 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by llvm::SIInstrInfo::isLegalRegOperand(), llvm::SIInstrInfo::legalizeOperandsVOP3(), and llvm::SIInstrInfo::verifyInstruction().
| LLVM_READNONE bool llvm::AMDGPU::isPermlane16 | ( | unsigned | Opc | ) |
Definition at line 718 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READNONE bool llvm::AMDGPU::isPKFMACF16InlineConstant | ( | uint32_t | Literal, |
| bool | IsGFX11Plus ) |
Definition at line 3296 of file AMDGPUBaseInfo.cpp.
References getPKFMACF16InlineEncoding(), and llvm::Literal.
Referenced by llvm::AMDGPUDisassembler::decodeLiteralConstant(), and llvm::SIInstrInfo::isInlineConstant().
| bool llvm::AMDGPU::isReadOnlySegment | ( | const GlobalValue * | GV | ) |
Definition at line 1593 of file AMDGPUBaseInfo.cpp.
References llvm::AMDGPUAS::CONSTANT_ADDRESS, llvm::AMDGPUAS::CONSTANT_ADDRESS_32BIT, and llvm::GlobalValue::getAddressSpace().
Referenced by llvm::AMDGPUTargetObjectFile::SelectSectionForGlobal().
Given a Def clobbering a load from Ptr according to the MSSA check if this is actually a memory update or an artificial clobber to facilitate ordering constraints.
Definition at line 356 of file AMDGPUMemoryUtils.cpp.
References llvm::dyn_cast(), I, II, and llvm::isa().
Referenced by isClobberedInFunction().
| bool llvm::AMDGPU::isSGPR | ( | MCRegister | Reg, |
| const MCRegisterInfo * | TRI ) |
Is Reg - scalar register.
Definition at line 2722 of file AMDGPUBaseInfo.cpp.
References llvm::MCRegisterClass::contains(), Reg, and TRI.
|
constexpr |
Definition at line 1580 of file AMDGPUBaseInfo.h.
References llvm::CallingConv::AMDGPU_CS, llvm::CallingConv::AMDGPU_CS_Chain, llvm::CallingConv::AMDGPU_CS_ChainPreserve, llvm::CallingConv::AMDGPU_ES, llvm::CallingConv::AMDGPU_GS, llvm::CallingConv::AMDGPU_HS, llvm::CallingConv::AMDGPU_LS, llvm::CallingConv::AMDGPU_PS, and llvm::CallingConv::AMDGPU_VS.
Referenced by llvm::GCNTTIImpl::fpenvIEEEMode(), llvm::SIModeRegisterDefaults::getDefaultForCallingConv(), isGraphics(), llvm::GCNSubtarget::isMesaGfxShader(), llvm::AMDGPUSubtarget::isMesaKernel(), llvm::R600TargetLowering::LowerFormalArguments(), llvm::SITargetLowering::LowerReturn(), llvm::AMDGPUCallLowering::lowerReturn(), and reservePrivateMemoryRegs().
| bool llvm::AMDGPU::isSI | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2565 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by llvm::AMDGPU::MTBUFFormat::getNfmtLookupTable(), hasPackedD16(), and isNotGFX10Plus().
| bool llvm::AMDGPU::isSISrcFPOperand | ( | const MCInstrDesc & | Desc, |
| unsigned | OpNo ) |
Is this floating-point operand?
Definition at line 2861 of file AMDGPUBaseInfo.cpp.
References assert(), OPERAND_REG_IMM_FP16, OPERAND_REG_IMM_FP32, OPERAND_REG_IMM_FP64, OPERAND_REG_IMM_NOINLINE_V2FP16, OPERAND_REG_IMM_V2FP16, OPERAND_REG_IMM_V2FP16_SPLAT, OPERAND_REG_IMM_V2FP32, OPERAND_REG_INLINE_AC_FP32, OPERAND_REG_INLINE_AC_FP64, OPERAND_REG_INLINE_C_FP16, OPERAND_REG_INLINE_C_FP32, OPERAND_REG_INLINE_C_FP64, and OPERAND_REG_INLINE_C_V2FP16.
Referenced by llvm::AMDGPU::VOPD::ComponentProps::ComponentProps().
| bool llvm::AMDGPU::isSISrcInlinableOperand | ( | const MCInstrDesc & | Desc, |
| unsigned | OpNo ) |
Does this operand support only inlinable literals?
Definition at line 2884 of file AMDGPUBaseInfo.cpp.
References assert(), OPERAND_REG_INLINE_AC_FIRST, OPERAND_REG_INLINE_AC_LAST, OPERAND_REG_INLINE_C_FIRST, and OPERAND_REG_INLINE_C_LAST.
|
inline |
Definition at line 1765 of file AMDGPUBaseInfo.h.
References isSISrcOperand().
|
constexpr |
Is this an AMDGPU specific source operand?
These include registers, inline constants, literals and mandatory literals (KImm).
Definition at line 1760 of file AMDGPUBaseInfo.h.
References OPERAND_SRC_FIRST, and OPERAND_SRC_LAST.
Referenced by llvm::SIInstrInfo::isLiteralOperandLegal(), llvm::SIInstrInfo::isOperandLegal(), and isSISrcOperand().
|
static |
Definition at line 2007 of file AMDGPUBaseInfo.cpp.
References Size.
Referenced by llvm::AMDGPU::DepCtr::isSymbolicDepCtrEncoding().
| LLVM_READONLY bool llvm::AMDGPU::isTensorStore | ( | unsigned | Opc | ) |
Definition at line 775 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by getTemporalHintType().
| LLVM_READONLY bool llvm::AMDGPU::isTrue16Inst | ( | unsigned | Opc | ) |
Definition at line 795 of file AMDGPUBaseInfo.cpp.
References Opc.
| bool llvm::AMDGPU::isUniformMMO | ( | const MachineMemOperand * | MMO | ) |
Definition at line 30 of file AMDGPUInstrInfo.cpp.
References llvm::AMDGPUAS::CONSTANT_ADDRESS_32BIT, llvm::dyn_cast(), llvm::MachineMemOperand::getAddrSpace(), llvm::MachineMemOperand::getPseudoValue(), llvm::MachineMemOperand::getValue(), I, llvm::isa(), and isArgPassedInSGPR().
Referenced by llvm::AMDGPURegisterBankInfo::isScalarLoadLegal(), llvm::AMDGPU::RegBankLegalizeRules::RegBankLegalizeRules(), and llvm::AMDGPUTargetLowering::shouldReduceLoadWidth().
| LLVM_READNONE bool llvm::AMDGPU::isValid32BitLiteral | ( | uint64_t | Val, |
| bool | IsFP64 ) |
Definition at line 3300 of file AMDGPUBaseInfo.cpp.
References llvm::isInt(), llvm::isUInt(), and llvm::Lo_32().
Referenced by llvm::SIInstrInfo::getInstSizeInBytes(), llvm::SIInstrInfo::isOperandLegal(), and llvm::AMDGPUDAGToDAGISel::Select().
Definition at line 1603 of file AMDGPUBaseInfo.cpp.
References llvm::CallingConv::C.
Referenced by parseAsmPhysRegName().
| bool llvm::AMDGPU::isVI | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2573 of file AMDGPUBaseInfo.cpp.
References llvm::MCSubtargetInfo::hasFeature().
Referenced by llvm::AMDGPU::MTBUFFormat::getNfmtLookupTable(), isGFX8_GFX9_GFX10(), isGFX8Plus(), and isNotGFX10Plus().
| LLVM_READONLY bool llvm::AMDGPU::isVOPC64DPP | ( | unsigned | Opc | ) |
Definition at line 569 of file AMDGPUBaseInfo.cpp.
References Opc.
Referenced by llvm::AMDGPUDisassembler::getInstruction().
| LLVM_READONLY bool llvm::AMDGPU::isVOPCAsmOnly | ( | unsigned | Opc | ) |
Definition at line 573 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY bool llvm::AMDGPU::isVOPD | ( | unsigned | Opc | ) |
Definition at line 683 of file AMDGPUBaseInfo.cpp.
References hasNamedOperand(), and Opc.
Referenced by getSrcOperandIndices(), and getVGPRLoweringOperandTables().
| const D16ImageDimIntrinsic * llvm::AMDGPU::lookupD16ImageDimIntrinsic | ( | unsigned | Intr | ) |
| const RsrcIntrinsic * llvm::AMDGPU::lookupRsrcIntrinsic | ( | unsigned | Intr | ) |
|
constexpr |
If LLVMAddressSpace has a corresponding DWARF encoding, return it; otherwise return the sentinel value -1 to indicate no such mapping exists.
This maps private/scratch to the focused lane view.
These mappings must be kept in sync with llvm/docs/AMDGPUUsage.rst table "AMDGPU DWARF Address Space Mapping".
Note: This could return std::optional<int> but that would require an extra #include.
Definition at line 162 of file AMDGPUAddrSpace.h.
References llvm::AMDGPU::impl::LLVMToDWARFAddrSpaceMapping.
| LLVM_READONLY unsigned llvm::AMDGPU::mapWMMA2AddrTo3AddrOpcode | ( | unsigned | Opc | ) |
Definition at line 817 of file AMDGPUBaseInfo.cpp.
References Opc.
| LLVM_READONLY unsigned llvm::AMDGPU::mapWMMA3AddrTo2AddrOpcode | ( | unsigned | Opc | ) |
Definition at line 822 of file AMDGPUBaseInfo.cpp.
References Opc.
|
inline |
Provided with the MCExpr * Val, uint32 Mask and Shift, will return the right shifted and masked, in said order of operations, MCExpr * created within the MCContext Ctx.
For example, given MCExpr *Val, Mask == 0xf, Shift == 6 the returned MCExpr
Definition at line 63 of file SIDefinesUtils.h.
References llvm::MCConstantExpr::create(), llvm::MCBinaryExpr::createAnd(), and llvm::MCBinaryExpr::createLShr().
|
inline |
Provided with the MCExpr * Val, uint32 Mask and Shift, will return the masked and left shifted, in said order of operations, MCExpr * created within the MCContext Ctx.
For example, given MCExpr *Val, Mask == 0xf, Shift == 6 the returned MCExpr
Definition at line 44 of file SIDefinesUtils.h.
References llvm::MCConstantExpr::create(), llvm::MCBinaryExpr::createAnd(), and llvm::MCBinaryExpr::createShl().
Referenced by llvm::AMDGPU::AMDGPUMCKernelCodeT::EmitKernelCodeT().
|
constexpr |
Return true if we might ever do TCO for calls with this calling convention.
Definition at line 1673 of file AMDGPUBaseInfo.h.
References llvm::CallingConv::AMDGPU_Gfx, llvm::CallingConv::AMDGPU_Gfx_WholeWave, llvm::CallingConv::C, and canGuaranteeTCO().
Referenced by llvm::AMDGPUCallLowering::isEligibleForTailCallOptimization(), and llvm::SITargetLowering::isEligibleForTailCallOptimization().
| LLVM_READNONE MCRegister llvm::AMDGPU::mc2PseudoReg | ( | MCRegister | Reg | ) |
Convert hardware register Reg to a pseudo register.
Definition at line 2821 of file AMDGPUBaseInfo.cpp.
References MAP_REG2REG, and Reg.
Referenced by checkWriteLane().
|
static |
Definition at line 139 of file AMDGPUAsanInstrumentation.cpp.
References llvm::IRBuilderBase::CreateAdd(), and llvm::IRBuilderBase::CreateLShr().
Referenced by instrumentAddressImpl().
| LLVM_READNONE uint8_t llvm::AMDGPU::mfmaScaleF8F6F4FormatToNumRegs | ( | unsigned | EncodingVal | ) |
Definition at line 590 of file AMDGPUBaseInfo.cpp.
References llvm::AMDGPU::MFMAScaleFormats::FP4_E2M1, llvm::AMDGPU::MFMAScaleFormats::FP6_E2M3, llvm::AMDGPU::MFMAScaleFormats::FP6_E3M2, llvm::AMDGPU::MFMAScaleFormats::FP8_E4M3, llvm::AMDGPU::MFMAScaleFormats::FP8_E5M2, and llvm_unreachable.
Referenced by getMFMA_F8F6F4_WithFormatArgs().
| raw_ostream & llvm::AMDGPU::operator<< | ( | raw_ostream & | OS, |
| const AMDGPU::Waitcnt & | Wait ) |
Definition at line 1747 of file AMDGPUBaseInfo.cpp.
| AMDGPU::GPUKind llvm::AMDGPU::parseArchAMDGCN | ( | StringRef | CPU | ) |
Definition at line 239 of file TargetParser.cpp.
References llvm::CallingConv::C, and GK_NONE.
Referenced by fillAMDGCNFeatureMap(), getCanonicalArchName(), llvm::AMDGPUTargetStreamer::getElfMach(), and getIsaVersion().
| AMDGPU::GPUKind llvm::AMDGPU::parseArchR600 | ( | StringRef | CPU | ) |
Definition at line 248 of file TargetParser.cpp.
References llvm::CallingConv::C, and GK_NONE.
Referenced by fillAMDGPUFeatureMap(), getCanonicalArchName(), and llvm::AMDGPUTargetStreamer::getElfMach().
| std::tuple< char, unsigned, unsigned > llvm::AMDGPU::parseAsmConstraintPhysReg | ( | StringRef | Constraint | ) |
Returns a valid charcode or 0 in the first entry if this is a valid physical register constraint.
Followed by the start register number, and the register width. Does not validate the number of registers exists in the class.
Definition at line 1635 of file AMDGPUBaseInfo.cpp.
References parseAsmPhysRegName(), and RegName.
Referenced by llvm::SITargetLowering::getRegForInlineAsmConstraint().
Returns a valid charcode or 0 in the first entry if this is a valid physical register name.
Followed by the start register number, and the register width. Does not validate the number of registers exists in the class. Unlike parseAsmConstraintPhysReg, this does not expect the name to be wrapped in "{}".
Definition at line 1607 of file AMDGPUBaseInfo.cpp.
References llvm::Failed(), isValidRegPrefix(), and RegName.
Referenced by parseAsmConstraintPhysReg().
| void llvm::AMDGPU::printAMDGPUMCExpr | ( | const MCExpr * | Expr, |
| raw_ostream & | OS, | ||
| const MCAsmInfo * | MAI ) |
Definition at line 695 of file AMDGPUMCExpr.cpp.
References llvm::MCAsmInfo::printExpr().
Referenced by llvm::AMDGPUTargetAsmStreamer::EmitAmdhsaKernelDescriptor(), and llvm::AMDGPUTargetAsmStreamer::EmitAMDKernelCodeT().
| void llvm::AMDGPU::removeFnAttrFromReachable | ( | CallGraph & | CG, |
| Function * | KernelRoot, | ||
| ArrayRef< StringRef > | FnAttrs ) |
Strip FnAttr attribute from any functions where we may have introduced its use.
Definition at line 312 of file AMDGPUMemoryUtils.cpp.
References assert(), llvm::SmallVectorTemplateCommon< T, typename >::empty(), F, llvm::CallGraph::getExternalCallingNode(), llvm::Function::getFunction(), llvm::SmallPtrSetImpl< PtrType >::insert(), isKernel(), llvm::SmallVectorImpl< T >::pop_back_val(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), and llvm::Function::removeFnAttr().
TT, false otherwise. Definition at line 1599 of file AMDGPUBaseInfo.cpp.
References llvm::Triple::r600.
Referenced by llvm::AMDGPUTargetObjectFile::SelectSectionForGlobal(), and llvm::SITargetLowering::shouldEmitFixup().
| bool llvm::AMDGPU::supportsScaleOffset | ( | const MCInstrInfo & | MII, |
| unsigned | Opcode ) |
Definition at line 3667 of file AMDGPUBaseInfo.cpp.
References llvm::SIInstrFlags::FLAT, llvm::SIInstrFlags::FlatScratch, llvm::MCInstrInfo::get(), getSMEMIsBuffer(), hasNamedOperand(), llvm::SIInstrFlags::SMRD, and llvm::MCInstrDesc::TSFlags.
Referenced by llvm::SIInstrInfo::verifyInstruction().
|
inline |
Definition at line 1733 of file AMDGPUBaseInfo.h.
References isGFX10Plus(), and isGFX1250().
Referenced by createAMDGPUMCSubtargetInfo().
| bool llvm::AMDGPU::supportsWGP | ( | const MCSubtargetInfo & | STI | ) |
Definition at line 2651 of file AMDGPUBaseInfo.cpp.
References isGFX10Plus(), and isGFX1250().
Referenced by llvm::AMDGPUTargetAsmStreamer::EmitAmdhsaKernelDescriptor().
|
static |
Definition at line 52 of file AMDGPUAsanInstrumentation.cpp.
References llvm::countr_zero().
Referenced by instrumentAddressImpl().
| LLVM_READNONE uint8_t llvm::AMDGPU::wmmaScaleF8F6F4FormatToNumRegs | ( | unsigned | Fmt | ) |
Definition at line 614 of file AMDGPUBaseInfo.cpp.
References llvm_unreachable, llvm::AMDGPU::WMMA::MATRIX_FMT_BF6, llvm::AMDGPU::WMMA::MATRIX_FMT_BF8, llvm::AMDGPU::WMMA::MATRIX_FMT_FP4, llvm::AMDGPU::WMMA::MATRIX_FMT_FP6, and llvm::AMDGPU::WMMA::MATRIX_FMT_FP8.
Referenced by getWMMA_F8F6F4_WithFormatArgs(), and llvm::GCNTTIImpl::instCombineIntrinsic().
|
staticconstexpr |
Offset of nonstandard values for llvm.get.rounding results from the largest supported mode.
Definition at line 135 of file SIModeRegisterDefaults.h.
Referenced by decodeFltRoundToHWConversionTable(), decodeIndexFltRoundConversionTable(), encodeFltRoundsTable(), encodeFltRoundsToHWTable(), and encodeFltRoundsToHWTableSame().
|
staticconstexpr |
Offset in mode register of f32 rounding mode.
Definition at line 138 of file SIModeRegisterDefaults.h.
Referenced by getModeRegisterRoundMode().
|
staticconstexpr |
Offset in mode register of f64/f16 rounding mode.
Definition at line 141 of file SIModeRegisterDefaults.h.
Referenced by getModeRegisterRoundMode().
Definition at line 76 of file SIModeRegisterDefaults.cpp.
Referenced by decodeIndexFltRoundConversionTable(), and llvm::SITargetLowering::lowerGET_ROUNDING().
Definition at line 190 of file SIModeRegisterDefaults.cpp.
Referenced by decodeFltRoundToHW(), decodeFltRoundToHWConversionTable(), decodeFltRoundToHWConversionTable(), and llvm::SITargetLowering::lowerSET_ROUNDING().
|
staticconstexpr |
Definition at line 78 of file AMDGPULaneMaskUtils.h.
Referenced by llvm::AMDGPU::LaneMaskConstants::get().
|
staticconstexpr |
Definition at line 80 of file AMDGPULaneMaskUtils.h.
Referenced by llvm::AMDGPU::LaneMaskConstants::get().
| const int llvm::AMDGPU::OPR_ID_DUPLICATE = -3 |
Definition at line 25 of file AMDGPUAsmUtils.h.
Referenced by encodeCustomOperand().
| const int llvm::AMDGPU::OPR_ID_UNKNOWN = -1 |
Definition at line 23 of file AMDGPUAsmUtils.h.
Referenced by encodeCustomOperand(), and getEncodingFromOperandTable().
| const int llvm::AMDGPU::OPR_ID_UNSUPPORTED = -2 |
Definition at line 24 of file AMDGPUAsmUtils.h.
Referenced by encodeCustomOperand(), and getEncodingFromOperandTable().
| const int llvm::AMDGPU::OPR_VAL_INVALID = -4 |
Definition at line 26 of file AMDGPUAsmUtils.h.
Referenced by encodeCustomOperandVal().
Definition at line 1822 of file SIInstrInfo.h.
Referenced by llvm::SIInstrInfo::getDefaultRsrcDataFormat().
Definition at line 1823 of file SIInstrInfo.h.
Referenced by llvm::SIInstrInfo::getScratchRsrcWords23().
Definition at line 1824 of file SIInstrInfo.h.
Referenced by llvm::SIInstrInfo::getScratchRsrcWords23().
Definition at line 1825 of file SIInstrInfo.h.
Referenced by llvm::SIInstrInfo::getScratchRsrcWords23().