LLVM 22.0.0git
|
#include "Target/AMDGPU/Utils/AMDGPUPALMetadata.h"
Public Types | |
using | RegisterExprMap = DenseMap< unsigned, const MCExpr * > |
Definition at line 25 of file AMDGPUPALMetadata.h.
Definition at line 27 of file AMDGPUPALMetadata.h.
Definition at line 1109 of file AMDGPUPALMetadata.cpp.
References N, and refComputeRegister().
Definition at line 1103 of file AMDGPUPALMetadata.cpp.
References N, and refComputeRegister().
|
inline |
Definition at line 150 of file AMDGPUPALMetadata.h.
unsigned AMDGPUPALMetadata::getPALMajorVersion | ( | ) |
Definition at line 1056 of file AMDGPUPALMetadata.cpp.
References getPALVersion().
unsigned AMDGPUPALMetadata::getPALMinorVersion | ( | ) |
Definition at line 1058 of file AMDGPUPALMetadata.cpp.
References getPALVersion().
VersionTuple AMDGPUPALMetadata::getPALVersion | ( | ) |
Definition at line 1060 of file AMDGPUPALMetadata.cpp.
References getPALVersion().
Referenced by getPALMajorVersion(), getPALMinorVersion(), getPALVersion(), and setEntryPoint().
Definition at line 194 of file AMDGPUPALMetadata.cpp.
References llvm::msgpack::Document::getNode(), N, and llvm::msgpack::UInt.
unsigned AMDGPUPALMetadata::getType | ( | ) | const |
Definition at line 1010 of file AMDGPUPALMetadata.cpp.
Referenced by llvm::AMDGPUTargetELFStreamer::finish().
Definition at line 1002 of file AMDGPUPALMetadata.cpp.
References llvm::AMDGPU::ElfNote::NoteNameV2, and llvm::AMDGPU::ElfNote::NoteNameV3.
Referenced by llvm::AMDGPUTargetELFStreamer::finish().
void AMDGPUPALMetadata::readFromIR | ( | Module & | M | ) |
Definition at line 55 of file AMDGPUPALMetadata.cpp.
References I, llvm::ELF::NT_AMD_PAL_METADATA, llvm::ELF::NT_AMDGPU_METADATA, and setRegister().
msgpack::DocNode * AMDGPUPALMetadata::refComputeRegister | ( | StringRef | field | ) |
Definition at line 1097 of file AMDGPUPALMetadata.cpp.
References I.
Referenced by checkComputeRegisters().
void AMDGPUPALMetadata::reset | ( | ) |
Definition at line 1025 of file AMDGPUPALMetadata.cpp.
References llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::clear(), llvm::msgpack::Document::clear(), llvm::DelayedMCExprs::clear(), and llvm::msgpack::Document::getEmptyNode().
Referenced by llvm::AMDGPUTargetAsmStreamer::finish(), and llvm::AMDGPUTargetELFStreamer::finish().
bool AMDGPUPALMetadata::resolvedAllMCExpr | ( | ) |
Definition at line 1034 of file AMDGPUPALMetadata.cpp.
References llvm::DelayedMCExprs::empty().
Definition at line 1093 of file AMDGPUPALMetadata.cpp.
Definition at line 1089 of file AMDGPUPALMetadata.cpp.
Referenced by EmitPALMetadataCommon().
Definition at line 255 of file AMDGPUPALMetadata.cpp.
References llvm::msgpack::Document::getNode(), getPALVersion(), getStageName(), Name, and llvm::raw_svector_ostream::str().
Definition at line 94 of file AMDGPUPALMetadata.cpp.
References llvm::ELF::NT_AMD_PAL_METADATA.
Definition at line 879 of file AMDGPUPALMetadata.cpp.
References llvm::StringRef::consumeInteger(), llvm::errs(), llvm::msgpack::Document::fromYAML(), llvm::msgpack::DocNode::getMap(), llvm::msgpack::Document::getMapNode(), llvm::msgpack::Document::getNode(), I, llvm::ELF::NT_AMDGPU_METADATA, and llvm::msgpack::String.
Definition at line 376 of file AMDGPUPALMetadata.cpp.
References llvm::msgpack::Document::getNode().
Definition at line 401 of file AMDGPUPALMetadata.cpp.
References llvm::DelayedMCExprs::assignDocNode(), and llvm::msgpack::UInt.
Definition at line 395 of file AMDGPUPALMetadata.cpp.
References llvm::msgpack::Document::getNode().
Definition at line 388 of file AMDGPUPALMetadata.cpp.
References llvm::DelayedMCExprs::assignDocNode(), and llvm::msgpack::UInt.
Definition at line 382 of file AMDGPUPALMetadata.cpp.
References llvm::msgpack::Document::getNode().
Definition at line 369 of file AMDGPUPALMetadata.cpp.
References llvm::msgpack::Document::getNode().
Definition at line 1119 of file AMDGPUPALMetadata.cpp.
Definition at line 1115 of file AMDGPUPALMetadata.cpp.
Definition at line 1128 of file AMDGPUPALMetadata.cpp.
References llvm::msgpack::DocNode::getMap().
Definition at line 1123 of file AMDGPUPALMetadata.cpp.
References llvm::msgpack::DocNode::getMap().
Definition at line 1080 of file AMDGPUPALMetadata.cpp.
void AMDGPUPALMetadata::setHwStage | ( | unsigned | CC, |
StringRef | field, | ||
msgpack::Type | Type, | ||
const MCExpr * | Val | ||
) |
Definition at line 1084 of file AMDGPUPALMetadata.cpp.
References llvm::DelayedMCExprs::assignDocNode().
Definition at line 1076 of file AMDGPUPALMetadata.cpp.
Referenced by EmitPALMetadataCommon(), setNumUsedAgprs(), setNumUsedSgprs(), setNumUsedVgprs(), and setScratchSize().
void AMDGPUPALMetadata::setLegacy | ( | ) |
Definition at line 1020 of file AMDGPUPALMetadata.cpp.
References llvm::ELF::NT_AMD_PAL_METADATA.
Definition at line 312 of file AMDGPUPALMetadata.cpp.
References setHwStage(), and llvm::msgpack::UInt.
Definition at line 308 of file AMDGPUPALMetadata.cpp.
Definition at line 332 of file AMDGPUPALMetadata.cpp.
References getScratchSizeKey(), setHwStage(), setRegister(), and llvm::msgpack::UInt.
Definition at line 319 of file AMDGPUPALMetadata.cpp.
References llvm::msgpack::Document::getNode(), getScratchSizeKey(), and setRegister().
Definition at line 293 of file AMDGPUPALMetadata.cpp.
References getScratchSizeKey(), setHwStage(), setRegister(), and llvm::msgpack::UInt.
Definition at line 280 of file AMDGPUPALMetadata.cpp.
References llvm::msgpack::Document::getNode(), getScratchSizeKey(), and setRegister().
Definition at line 222 of file AMDGPUPALMetadata.cpp.
References llvm::DelayedMCExprs::assignDocNode(), llvm::MCConstantExpr::create(), llvm::MCBinaryExpr::createOr(), llvm::msgpack::Document::getNode(), N, llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::try_emplace(), and llvm::msgpack::UInt.
Definition at line 207 of file AMDGPUPALMetadata.cpp.
References llvm::msgpack::Document::getNode(), N, and llvm::msgpack::UInt.
Referenced by readFromIR(), setNumUsedSgprs(), setNumUsedVgprs(), setRsrc1(), setRsrc2(), setScratchSize(), setSpiPsInputAddr(), setSpiPsInputEna(), and setWave32().
Definition at line 165 of file AMDGPUPALMetadata.cpp.
References getRsrc1Reg(), and setRegister().
Definition at line 161 of file AMDGPUPALMetadata.cpp.
References getRsrc1Reg(), and setRegister().
Definition at line 176 of file AMDGPUPALMetadata.cpp.
References getRsrc1Reg(), and setRegister().
Definition at line 172 of file AMDGPUPALMetadata.cpp.
References getRsrc1Reg(), and setRegister().
Definition at line 357 of file AMDGPUPALMetadata.cpp.
References getScratchSizeKey(), setHwStage(), setRegister(), and llvm::msgpack::UInt.
Definition at line 347 of file AMDGPUPALMetadata.cpp.
References llvm::msgpack::Document::getNode(), getScratchSizeKey(), and setRegister().
void AMDGPUPALMetadata::setSpiPsInputAddr | ( | unsigned | Val | ) |
Definition at line 189 of file AMDGPUPALMetadata.cpp.
References llvm::AMDGPU::PALMD::R_A1B4_SPI_PS_INPUT_ADDR, and setRegister().
void AMDGPUPALMetadata::setSpiPsInputEna | ( | unsigned | Val | ) |
Definition at line 183 of file AMDGPUPALMetadata.cpp.
References llvm::AMDGPU::PALMD::R_A1B3_SPI_PS_INPUT_ENA, and setRegister().
void AMDGPUPALMetadata::setWave32 | ( | unsigned | CC | ) |
Definition at line 409 of file AMDGPUPALMetadata.cpp.
References llvm::CallingConv::AMDGPU_CS, llvm::CallingConv::AMDGPU_GS, llvm::CallingConv::AMDGPU_HS, llvm::CallingConv::AMDGPU_PS, llvm::CallingConv::AMDGPU_VS, llvm::AMDGPU::PALMD::R_2E00_COMPUTE_DISPATCH_INITIATOR, llvm::AMDGPU::PALMD::R_A1B6_SPI_PS_IN_CONTROL, llvm::AMDGPU::PALMD::R_A2D5_VGT_SHADER_STAGES_EN, S_00B800_CS_W32_EN, S_0286D8_PS_W32_EN, S_028B54_GS_W32_EN, S_028B54_HS_W32_EN, S_028B54_VS_W32_EN, and setRegister().
void AMDGPUPALMetadata::toBlob | ( | unsigned | Type, |
std::string & | S | ||
) |
Definition at line 852 of file AMDGPUPALMetadata.cpp.
References llvm::ELF::NT_AMD_PAL_METADATA, and llvm::DelayedMCExprs::resolveDelayedExpressions().
Referenced by llvm::AMDGPUTargetELFStreamer::finish().
void AMDGPUPALMetadata::toString | ( | std::string & | S | ) |
Definition at line 799 of file AMDGPUPALMetadata.cpp.
References llvm::AMDGPU::PALMD::AssemblerDirective, llvm::AMDGPU::PALMD::AssemblerDirectiveBegin, llvm::AMDGPU::PALMD::AssemblerDirectiveEnd, llvm::msgpack::DocNode::getKind(), llvm::msgpack::DocNode::getMap(), llvm::msgpack::Document::getMapNode(), llvm::msgpack::Document::getNode(), getRegisterName(), llvm::msgpack::Document::getRoot(), I, llvm::msgpack::Nil, RegName, llvm::DelayedMCExprs::resolveDelayedExpressions(), llvm::msgpack::Document::setHexMode(), llvm::String, llvm::msgpack::Document::toYAML(), and llvm::Twine::utohexstr().
Referenced by llvm::AMDGPUTargetAsmStreamer::finish().
Definition at line 1065 of file AMDGPUPALMetadata.cpp.
Referenced by EmitPALMetadataCommon().