LLVM 22.0.0git
AMDGPUDisassembler.cpp File Reference

This file contains definition for AMDGPU ISA disassembler. More...

Go to the source code of this file.

Classes

struct  VOPModifiers

Macros

#define DEBUG_TYPE   "amdgpu-disassembler"
#define SGPR_MAX
#define DECODE_OPERAND(StaticDecoderName, DecoderName)
#define DECODE_OPERAND_REG_8(RegClass)
#define DECODE_SrcOp(Name, EncSize, OpWidth, EncImm)
#define DECODE_OPERAND_SREG_7(RegClass, OpWidth)
#define DECODE_OPERAND_SREG_8(RegClass, OpWidth)
#define DECODE_SDWA(DecName)
#define GET_FIELD(MASK)
#define PRINT_DIRECTIVE(DIRECTIVE, MASK)
#define PRINT_PSEUDO_DIRECTIVE_COMMENT(DIRECTIVE, MASK)
#define CHECK_RESERVED_BITS_IMPL(MASK, DESC, MSG)
#define CHECK_RESERVED_BITS(MASK)
#define CHECK_RESERVED_BITS_MSG(MASK, MSG)
#define CHECK_RESERVED_BITS_DESC(MASK, DESC)
#define CHECK_RESERVED_BITS_DESC_MSG(MASK, DESC, MSG)
#define PRINT_DIRECTIVE(DIRECTIVE, MASK)

Typedefs

using DecodeStatus = llvm::MCDisassembler::DecodeStatus

Functions

static int64_t getInlineImmValF16 (unsigned Imm)
static int64_t getInlineImmValBF16 (unsigned Imm)
static int64_t getInlineImmVal32 (unsigned Imm)
static int64_t getInlineImmVal64 (unsigned Imm)
static MCDisassembler::DecodeStatus addOperand (MCInst &Inst, const MCOperand &Opnd)
static int insertNamedMCOperand (MCInst &MI, const MCOperand &Op, AMDGPU::OpName Name)
static DecodeStatus decodeSOPPBrTarget (MCInst &Inst, unsigned Imm, uint64_t Addr, const MCDisassembler *Decoder)
static DecodeStatus decodeSMEMOffset (MCInst &Inst, unsigned Imm, uint64_t Addr, const MCDisassembler *Decoder)
static DecodeStatus decodeBoolReg (MCInst &Inst, unsigned Val, uint64_t Addr, const MCDisassembler *Decoder)
static DecodeStatus decodeSplitBarrier (MCInst &Inst, unsigned Val, uint64_t Addr, const MCDisassembler *Decoder)
static DecodeStatus decodeDpp8FI (MCInst &Inst, unsigned Val, uint64_t Addr, const MCDisassembler *Decoder)
static DecodeStatus decodeSrcOp (MCInst &Inst, unsigned EncSize, unsigned OpWidth, unsigned Imm, unsigned EncImm, const MCDisassembler *Decoder)
template<unsigned OpWidth>
static DecodeStatus decodeAV10 (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
template<unsigned OpWidth>
static DecodeStatus decodeSrcReg9 (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
template<unsigned OpWidth>
static DecodeStatus decodeSrcA9 (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
template<unsigned OpWidth>
static DecodeStatus decodeSrcAV10 (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
template<unsigned OpWidth>
static DecodeStatus decodeSrcRegOrImm9 (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
template<unsigned OpWidth>
static DecodeStatus decodeSrcRegOrImmA9 (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
static DecodeStatus DecodeVGPR_16RegisterClass (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
static DecodeStatus DecodeVGPR_16_Lo128RegisterClass (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
template<unsigned OpWidth>
static DecodeStatus decodeOperand_VSrcT16_Lo128 (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
template<unsigned OpWidth>
static DecodeStatus decodeOperand_VSrcT16 (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
static DecodeStatus decodeOperand_VGPR_16 (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
static DecodeStatus decodeOperand_KImmFP (MCInst &Inst, unsigned Imm, uint64_t Addr, const MCDisassembler *Decoder)
static DecodeStatus decodeOperand_KImmFP64 (MCInst &Inst, uint64_t Imm, uint64_t Addr, const MCDisassembler *Decoder)
static DecodeStatus decodeOperandVOPDDstY (MCInst &Inst, unsigned Val, uint64_t Addr, const void *Decoder)
static DecodeStatus decodeAVLdSt (MCInst &Inst, unsigned Imm, unsigned Opw, const MCDisassembler *Decoder)
template<unsigned Opw>
static DecodeStatus decodeAVLdSt (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
static DecodeStatus decodeOperand_VSrc_f64 (MCInst &Inst, unsigned Imm, uint64_t Addr, const MCDisassembler *Decoder)
static DecodeStatus decodeVersionImm (MCInst &Inst, unsigned Imm, uint64_t, const MCDisassembler *Decoder)
template<typename T>
static T eatBytes (ArrayRef< uint8_t > &Bytes)
static std::bitset< 96 > eat12Bytes (ArrayRef< uint8_t > &Bytes)
static std::bitset< 128 > eat16Bytes (ArrayRef< uint8_t > &Bytes)
static void adjustMFMA_F8F6F4OpRegClass (const MCRegisterInfo &MRI, MCOperand &MO, uint8_t NumRegs)
 Adjust the register values used by V_MFMA_F8F6F4_f8_f8 instructions to the appropriate subregister for the used format width.
static VOPModifiers collectVOPModifiers (const MCInst &MI, bool IsVOP3P=false)
static unsigned CheckVGPROverflow (unsigned Reg, const MCRegisterClass &RC, const MCRegisterInfo &MRI)
static SmallString< 32 > getBitRangeFromMask (uint32_t Mask, unsigned BaseBytes)
 Print a string describing the reserved bit range specified by Mask with offset BaseBytes for use in error comments.
static Error createReservedKDBitsError (uint32_t Mask, unsigned BaseBytes, const char *Msg="")
 Create an error object to return from onSymbolStart for reserved kernel descriptor bits being set.
static Error createReservedKDBytesError (unsigned BaseInBytes, unsigned WidthInBytes)
 Create an error object to return from onSymbolStart for reserved kernel descriptor bytes being set.
static MCSymbolizercreateAMDGPUSymbolizer (const Triple &, LLVMOpInfoCallback, LLVMSymbolLookupCallback, void *DisInfo, MCContext *Ctx, std::unique_ptr< MCRelocationInfo > &&RelInfo)
static MCDisassemblercreateAMDGPUDisassembler (const Target &T, const MCSubtargetInfo &STI, MCContext &Ctx)
LLVM_ABI LLVM_EXTERNAL_VISIBILITY void LLVMInitializeAMDGPUDisassembler ()

Detailed Description

This file contains definition for AMDGPU ISA disassembler.

Definition in file AMDGPUDisassembler.cpp.

Macro Definition Documentation

◆ CHECK_RESERVED_BITS

#define CHECK_RESERVED_BITS ( MASK)
Value:
CHECK_RESERVED_BITS_IMPL(MASK, #MASK, "")
#define CHECK_RESERVED_BITS_IMPL(MASK, DESC, MSG)

Definition at line 2246 of file AMDGPUDisassembler.cpp.

Referenced by llvm::AMDGPUDisassembler::decodeCOMPUTE_PGM_RSRC1(), and llvm::AMDGPUDisassembler::decodeCOMPUTE_PGM_RSRC2().

◆ CHECK_RESERVED_BITS_DESC

#define CHECK_RESERVED_BITS_DESC ( MASK,
DESC )

◆ CHECK_RESERVED_BITS_DESC_MSG

#define CHECK_RESERVED_BITS_DESC_MSG ( MASK,
DESC,
MSG )

◆ CHECK_RESERVED_BITS_IMPL

#define CHECK_RESERVED_BITS_IMPL ( MASK,
DESC,
MSG )
Value:
do { \
if (FourByteBuffer & (MASK)) { \
return createStringError(std::errc::invalid_argument, \
"kernel descriptor " DESC \
" reserved %s set" MSG, \
getBitRangeFromMask((MASK), 0).c_str()); \
} \
} while (0)
static SmallString< 32 > getBitRangeFromMask(uint32_t Mask, unsigned BaseBytes)
Print a string describing the reserved bit range specified by Mask with offset BaseBytes for use in e...
SmallVectorImpl< T >::const_pointer c_str(SmallVectorImpl< T > &str)
Error createStringError(std::error_code EC, char const *Fmt, const Ts &... Vals)
Create formatted StringError object.
Definition Error.h:1305

Definition at line 2236 of file AMDGPUDisassembler.cpp.

◆ CHECK_RESERVED_BITS_MSG

#define CHECK_RESERVED_BITS_MSG ( MASK,
MSG )
Value:
CHECK_RESERVED_BITS_IMPL(MASK, #MASK, ", " MSG)

Definition at line 2247 of file AMDGPUDisassembler.cpp.

Referenced by llvm::AMDGPUDisassembler::decodeCOMPUTE_PGM_RSRC1().

◆ DEBUG_TYPE

#define DEBUG_TYPE   "amdgpu-disassembler"

Definition at line 44 of file AMDGPUDisassembler.cpp.

◆ DECODE_OPERAND

#define DECODE_OPERAND ( StaticDecoderName,
DecoderName )
Value:
static DecodeStatus StaticDecoderName(MCInst &Inst, unsigned Imm, \
uint64_t /*Addr*/, \
const MCDisassembler *Decoder) { \
auto DAsm = static_cast<const AMDGPUDisassembler *>(Decoder); \
return addOperand(Inst, DAsm->DecoderName(Imm)); \
}
MCDisassembler::DecodeStatus DecodeStatus
static MCDisassembler::DecodeStatus addOperand(MCInst &Inst, const MCOperand &Opnd)
Superclass for all disassemblers.
Instances of this class represent a single low-level machine instruction.
Definition MCInst.h:188

Definition at line 143 of file AMDGPUDisassembler.cpp.

◆ DECODE_OPERAND_REG_8

#define DECODE_OPERAND_REG_8 ( RegClass)
Value:
static DecodeStatus Decode##RegClass##RegisterClass( \
MCInst &Inst, unsigned Imm, uint64_t /*Addr*/, \
const MCDisassembler *Decoder) { \
assert(Imm < (1 << 8) && "8-bit encoding"); \
auto DAsm = static_cast<const AMDGPUDisassembler *>(Decoder); \
return addOperand( \
Inst, DAsm->createRegOperand(AMDGPU::RegClass##RegClassID, Imm)); \
}

Definition at line 153 of file AMDGPUDisassembler.cpp.

◆ DECODE_OPERAND_SREG_7

#define DECODE_OPERAND_SREG_7 ( RegClass,
OpWidth )
Value:
DECODE_SrcOp(Decode##RegClass##RegisterClass, 7, OpWidth, Imm)
#define DECODE_SrcOp(Name, EncSize, OpWidth, EncImm)

Definition at line 181 of file AMDGPUDisassembler.cpp.

◆ DECODE_OPERAND_SREG_8

#define DECODE_OPERAND_SREG_8 ( RegClass,
OpWidth )
Value:
DECODE_SrcOp(Decode##RegClass##RegisterClass, 8, OpWidth, Imm)

Definition at line 184 of file AMDGPUDisassembler.cpp.

◆ DECODE_SDWA

#define DECODE_SDWA ( DecName)
Value:
DECODE_OPERAND(decodeSDWA##DecName, decodeSDWA##DecName)
#define DECODE_OPERAND(StaticDecoderName, DecoderName)

Definition at line 393 of file AMDGPUDisassembler.cpp.

◆ DECODE_SrcOp

#define DECODE_SrcOp ( Name,
EncSize,
OpWidth,
EncImm )
Value:
static DecodeStatus Name(MCInst &Inst, unsigned Imm, uint64_t /*Addr*/, \
const MCDisassembler *Decoder) { \
assert(Imm < (1 << EncSize) && #EncSize "-bit encoding"); \
auto DAsm = static_cast<const AMDGPUDisassembler *>(Decoder); \
return addOperand(Inst, DAsm->decodeSrcOp(Inst, OpWidth, EncImm)); \
}

Definition at line 163 of file AMDGPUDisassembler.cpp.

◆ GET_FIELD

#define GET_FIELD ( MASK)
Value:
(AMDHSA_BITS_GET(FourByteBuffer, MASK))
#define AMDHSA_BITS_GET(SRC, MSK)

Definition at line 2225 of file AMDGPUDisassembler.cpp.

Referenced by llvm::AMDGPUDisassembler::decodeCOMPUTE_PGM_RSRC1(), and llvm::AMDGPUDisassembler::decodeCOMPUTE_PGM_RSRC3().

◆ PRINT_DIRECTIVE [1/2]

#define PRINT_DIRECTIVE ( DIRECTIVE,
MASK )

◆ PRINT_DIRECTIVE [2/2]

#define PRINT_DIRECTIVE ( DIRECTIVE,
MASK )
Value:
do { \
KdStream << Indent << DIRECTIVE " " \
<< ((TwoByteBuffer & MASK) >> (MASK##_SHIFT)) << '\n'; \
} while (0)

Definition at line 2226 of file AMDGPUDisassembler.cpp.

◆ PRINT_PSEUDO_DIRECTIVE_COMMENT

#define PRINT_PSEUDO_DIRECTIVE_COMMENT ( DIRECTIVE,
MASK )
Value:
do { \
KdStream << Indent << MAI.getCommentString() << ' ' << DIRECTIVE " " \
<< GET_FIELD(MASK) << '\n'; \
} while (0)

Definition at line 2230 of file AMDGPUDisassembler.cpp.

Referenced by llvm::AMDGPUDisassembler::decodeCOMPUTE_PGM_RSRC1(), and llvm::AMDGPUDisassembler::decodeCOMPUTE_PGM_RSRC3().

◆ SGPR_MAX

Typedef Documentation

◆ DecodeStatus

Function Documentation

◆ addOperand()

◆ adjustMFMA_F8F6F4OpRegClass()

void adjustMFMA_F8F6F4OpRegClass ( const MCRegisterInfo & MRI,
MCOperand & MO,
uint8_t NumRegs )
static

Adjust the register values used by V_MFMA_F8F6F4_f8_f8 instructions to the appropriate subregister for the used format width.

Definition at line 957 of file AMDGPUDisassembler.cpp.

References llvm::MCOperand::getReg(), llvm_unreachable, MRI, and llvm::MCOperand::setReg().

Referenced by llvm::AMDGPUDisassembler::convertMAIInst(), and llvm::AMDGPUDisassembler::convertWMMAInst().

◆ CheckVGPROverflow()

unsigned CheckVGPROverflow ( unsigned Reg,
const MCRegisterClass & RC,
const MCRegisterInfo & MRI )
static

◆ collectVOPModifiers()

◆ createAMDGPUDisassembler()

MCDisassembler * createAMDGPUDisassembler ( const Target & T,
const MCSubtargetInfo & STI,
MCContext & Ctx )
static

Definition at line 2857 of file AMDGPUDisassembler.cpp.

References T.

Referenced by LLVMInitializeAMDGPUDisassembler().

◆ createAMDGPUSymbolizer()

MCSymbolizer * createAMDGPUSymbolizer ( const Triple & ,
LLVMOpInfoCallback ,
LLVMSymbolLookupCallback ,
void * DisInfo,
MCContext * Ctx,
std::unique_ptr< MCRelocationInfo > && RelInfo )
static

Definition at line 2848 of file AMDGPUDisassembler.cpp.

Referenced by LLVMInitializeAMDGPUDisassembler().

◆ createReservedKDBitsError()

Error createReservedKDBitsError ( uint32_t Mask,
unsigned BaseBytes,
const char * Msg = "" )
static

Create an error object to return from onSymbolStart for reserved kernel descriptor bits being set.

Definition at line 2536 of file AMDGPUDisassembler.cpp.

References llvm::c_str(), llvm::createStringError(), and getBitRangeFromMask().

Referenced by llvm::AMDGPUDisassembler::decodeKernelDescriptorDirective().

◆ createReservedKDBytesError()

Error createReservedKDBytesError ( unsigned BaseInBytes,
unsigned WidthInBytes )
static

Create an error object to return from onSymbolStart for reserved kernel descriptor bytes being set.

Definition at line 2545 of file AMDGPUDisassembler.cpp.

References llvm::createStringError().

Referenced by llvm::AMDGPUDisassembler::decodeKernelDescriptorDirective().

◆ decodeAV10()

template<unsigned OpWidth>
DecodeStatus decodeAV10 ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

Definition at line 192 of file AMDGPUDisassembler.cpp.

References decodeSrcOp(), and llvm::AMDGPU::EncValues::IS_VGPR.

◆ decodeAVLdSt() [1/2]

template<unsigned Opw>
DecodeStatus decodeAVLdSt ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

Definition at line 379 of file AMDGPUDisassembler.cpp.

References decodeAVLdSt().

◆ decodeAVLdSt() [2/2]

DecodeStatus decodeAVLdSt ( MCInst & Inst,
unsigned Imm,
unsigned Opw,
const MCDisassembler * Decoder )
static

Definition at line 372 of file AMDGPUDisassembler.cpp.

References addOperand().

Referenced by decodeAVLdSt().

◆ decodeBoolReg()

DecodeStatus decodeBoolReg ( MCInst & Inst,
unsigned Val,
uint64_t Addr,
const MCDisassembler * Decoder )
static

Definition at line 124 of file AMDGPUDisassembler.cpp.

References addOperand().

◆ decodeDpp8FI()

DecodeStatus decodeDpp8FI ( MCInst & Inst,
unsigned Val,
uint64_t Addr,
const MCDisassembler * Decoder )
static

Definition at line 137 of file AMDGPUDisassembler.cpp.

References addOperand().

◆ decodeOperand_KImmFP()

DecodeStatus decodeOperand_KImmFP ( MCInst & Inst,
unsigned Imm,
uint64_t Addr,
const MCDisassembler * Decoder )
static

Definition at line 352 of file AMDGPUDisassembler.cpp.

References addOperand().

◆ decodeOperand_KImmFP64()

DecodeStatus decodeOperand_KImmFP64 ( MCInst & Inst,
uint64_t Imm,
uint64_t Addr,
const MCDisassembler * Decoder )
static

Definition at line 359 of file AMDGPUDisassembler.cpp.

References addOperand().

◆ decodeOperand_VGPR_16()

DecodeStatus decodeOperand_VGPR_16 ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

◆ decodeOperand_VSrc_f64()

DecodeStatus decodeOperand_VSrc_f64 ( MCInst & Inst,
unsigned Imm,
uint64_t Addr,
const MCDisassembler * Decoder )
static

Definition at line 385 of file AMDGPUDisassembler.cpp.

References addOperand(), and assert().

◆ decodeOperand_VSrcT16()

template<unsigned OpWidth>
DecodeStatus decodeOperand_VSrcT16 ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

◆ decodeOperand_VSrcT16_Lo128()

template<unsigned OpWidth>
DecodeStatus decodeOperand_VSrcT16_Lo128 ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

◆ decodeOperandVOPDDstY()

DecodeStatus decodeOperandVOPDDstY ( MCInst & Inst,
unsigned Val,
uint64_t Addr,
const void * Decoder )
static

Definition at line 366 of file AMDGPUDisassembler.cpp.

References addOperand().

◆ decodeSMEMOffset()

DecodeStatus decodeSMEMOffset ( MCInst & Inst,
unsigned Imm,
uint64_t Addr,
const MCDisassembler * Decoder )
static

◆ decodeSOPPBrTarget()

DecodeStatus decodeSOPPBrTarget ( MCInst & Inst,
unsigned Imm,
uint64_t Addr,
const MCDisassembler * Decoder )
static

◆ decodeSplitBarrier()

DecodeStatus decodeSplitBarrier ( MCInst & Inst,
unsigned Val,
uint64_t Addr,
const MCDisassembler * Decoder )
static

Definition at line 130 of file AMDGPUDisassembler.cpp.

References addOperand().

◆ decodeSrcA9()

template<unsigned OpWidth>
DecodeStatus decodeSrcA9 ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

Definition at line 210 of file AMDGPUDisassembler.cpp.

References decodeSrcOp().

◆ decodeSrcAV10()

template<unsigned OpWidth>
DecodeStatus decodeSrcAV10 ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

Definition at line 218 of file AMDGPUDisassembler.cpp.

References decodeSrcOp().

◆ decodeSrcOp()

DecodeStatus decodeSrcOp ( MCInst & Inst,
unsigned EncSize,
unsigned OpWidth,
unsigned Imm,
unsigned EncImm,
const MCDisassembler * Decoder )
static

◆ decodeSrcReg9()

template<unsigned OpWidth>
DecodeStatus decodeSrcReg9 ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

Definition at line 200 of file AMDGPUDisassembler.cpp.

References decodeSrcOp().

◆ decodeSrcRegOrImm9()

template<unsigned OpWidth>
DecodeStatus decodeSrcRegOrImm9 ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

Definition at line 230 of file AMDGPUDisassembler.cpp.

References decodeSrcOp().

◆ decodeSrcRegOrImmA9()

template<unsigned OpWidth>
DecodeStatus decodeSrcRegOrImmA9 ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

Definition at line 239 of file AMDGPUDisassembler.cpp.

References decodeSrcOp().

◆ decodeVersionImm()

DecodeStatus decodeVersionImm ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

Definition at line 400 of file AMDGPUDisassembler.cpp.

References addOperand(), const, and decodeVersionImm().

Referenced by decodeVersionImm().

◆ DecodeVGPR_16_Lo128RegisterClass()

DecodeStatus DecodeVGPR_16_Lo128RegisterClass ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

Definition at line 299 of file AMDGPUDisassembler.cpp.

References addOperand(), assert(), and llvm::isUInt().

◆ DecodeVGPR_16RegisterClass()

DecodeStatus DecodeVGPR_16RegisterClass ( MCInst & Inst,
unsigned Imm,
uint64_t ,
const MCDisassembler * Decoder )
static

◆ eat12Bytes()

◆ eat16Bytes()

◆ eatBytes()

◆ getBitRangeFromMask()

SmallString< 32 > getBitRangeFromMask ( uint32_t Mask,
unsigned BaseBytes )
static

Print a string describing the reserved bit range specified by Mask with offset BaseBytes for use in error comments.

Mask is a single continuous range of 1s surrounded by zeros. The format here is meant to align with the tables that describe these bits in llvm.org/docs/AMDGPUUsage.html.

Definition at line 2207 of file AMDGPUDisassembler.cpp.

References llvm::countr_zero(), and llvm::popcount().

Referenced by createReservedKDBitsError().

◆ getInlineImmVal32()

int64_t getInlineImmVal32 ( unsigned Imm)
static

Definition at line 1634 of file AMDGPUDisassembler.cpp.

References llvm::bit_cast(), and llvm_unreachable.

◆ getInlineImmVal64()

int64_t getInlineImmVal64 ( unsigned Imm)
static

Definition at line 1659 of file AMDGPUDisassembler.cpp.

References llvm::bit_cast(), and llvm_unreachable.

◆ getInlineImmValBF16()

int64_t getInlineImmValBF16 ( unsigned Imm)
static

Definition at line 1709 of file AMDGPUDisassembler.cpp.

References llvm_unreachable.

◆ getInlineImmValF16()

int64_t getInlineImmValF16 ( unsigned Imm)
static

Definition at line 1684 of file AMDGPUDisassembler.cpp.

References llvm_unreachable.

◆ insertNamedMCOperand()

◆ LLVMInitializeAMDGPUDisassembler()