LLVM 18.0.0git
|
#include "AMDKernelCodeT.h"
#include "MCTargetDesc/AMDGPUMCTargetDesc.h"
#include "MCTargetDesc/AMDGPUTargetStreamer.h"
#include "SIDefines.h"
#include "SIInstrInfo.h"
#include "SIRegisterInfo.h"
#include "TargetInfo/AMDGPUTargetInfo.h"
#include "Utils/AMDGPUAsmUtils.h"
#include "Utils/AMDGPUBaseInfo.h"
#include "Utils/AMDKernelCodeTUtils.h"
#include "llvm/ADT/APFloat.h"
#include "llvm/ADT/SmallBitVector.h"
#include "llvm/ADT/StringSet.h"
#include "llvm/ADT/Twine.h"
#include "llvm/BinaryFormat/ELF.h"
#include "llvm/CodeGen/MachineValueType.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCInstrDesc.h"
#include "llvm/MC/MCParser/MCAsmLexer.h"
#include "llvm/MC/MCParser/MCAsmParser.h"
#include "llvm/MC/MCParser/MCParsedAsmOperand.h"
#include "llvm/MC/MCParser/MCTargetAsmParser.h"
#include "llvm/MC/MCSymbol.h"
#include "llvm/MC/TargetRegistry.h"
#include "llvm/Support/AMDGPUMetadata.h"
#include "llvm/Support/AMDHSAKernelDescriptor.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/TargetParser/TargetParser.h"
#include <optional>
#include "AMDGPUGenAsmMatcher.inc"
Go to the source code of this file.
Classes | |
struct | RegInfo |
Macros | |
#define | PARSE_BITS_ENTRY(FIELD, ENTRY, VALUE, RANGE) |
#define | GET_REGISTER_MATCHER |
#define | GET_MATCHER_IMPLEMENTATION |
#define | GET_MNEMONIC_SPELL_CHECKER |
#define | GET_MNEMONIC_CHECKER |
Auto-generated Match Functions | |
{ | |
#define | GET_ASSEMBLER_HEADER |
Typedefs | |
using | OperandIndices = SmallVector< int16_t, MAX_SRC_OPERANDS_NUM > |
Variables | |
static constexpr RegInfo | RegularRegisters [] |
constexpr unsigned | MAX_SRC_OPERANDS_NUM = 6 |
#define GET_ASSEMBLER_HEADER |
Definition at line 1267 of file AMDGPUAsmParser.cpp.
#define GET_MATCHER_IMPLEMENTATION |
Definition at line 8806 of file AMDGPUAsmParser.cpp.
#define GET_MNEMONIC_CHECKER |
Definition at line 8808 of file AMDGPUAsmParser.cpp.
#define GET_MNEMONIC_SPELL_CHECKER |
Definition at line 8807 of file AMDGPUAsmParser.cpp.
#define GET_REGISTER_MATCHER |
Definition at line 8805 of file AMDGPUAsmParser.cpp.
using OperandIndices = SmallVector<int16_t, MAX_SRC_OPERANDS_NUM> |
Definition at line 3422 of file AMDGPUAsmParser.cpp.
|
static |
Definition at line 6132 of file AMDGPUAsmParser.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createImm(), Default, Idx, and Operands.
|
static |
|
static |
|
static |
Definition at line 1882 of file AMDGPUAsmParser.cpp.
References llvm::APFloat::convert(), and getFltSemantics().
|
static |
Definition at line 7759 of file AMDGPUAsmParser.cpp.
|
static |
Definition at line 7751 of file AMDGPUAsmParser.cpp.
References Mul.
void cvtVOP3DstOpSelOnly | ( | MCInst & | Inst | ) |
Definition at line 7816 of file AMDGPUAsmParser.cpp.
References assert(), llvm::SISrcMods::DST_OP_SEL, llvm::MCOperand::getImm(), llvm::AMDGPU::getNamedOperandIdx(), llvm::MCInst::getOpcode(), llvm::MCInst::getOperand(), llvm::AMDGPU::hasNamedOperand(), and llvm::MCOperand::setImm().
|
static |
Definition at line 7298 of file AMDGPUAsmParser.cpp.
|
static |
Definition at line 6495 of file AMDGPUAsmParser.cpp.
References decode(), llvm::encode(), and llvm::Failed().
Definition at line 3274 of file AMDGPUAsmParser.cpp.
References llvm::AMDGPUAsmVariants::DEFAULT, llvm::AMDGPUAsmVariants::DPP, llvm::AMDGPUAsmVariants::SDWA, llvm::AMDGPUAsmVariants::SDWA9, llvm::AMDGPUAsmVariants::VOP3, and llvm::AMDGPUAsmVariants::VOP3_DPP.
|
static |
Definition at line 1833 of file AMDGPUAsmParser.cpp.
References getFltSemantics(), and llvm::MVT::getSizeInBits().
|
static |
Definition at line 1820 of file AMDGPUAsmParser.cpp.
References llvm_unreachable, and Size.
Referenced by canLosslesslyConvertToFPType(), and getFltSemantics().
|
static |
Definition at line 1837 of file AMDGPUAsmParser.cpp.
References llvm_unreachable, llvm::AMDGPU::OPERAND_KIMM16, llvm::AMDGPU::OPERAND_KIMM32, llvm::AMDGPU::OPERAND_REG_IMM_FP16, llvm::AMDGPU::OPERAND_REG_IMM_FP16_DEFERRED, llvm::AMDGPU::OPERAND_REG_IMM_FP32, llvm::AMDGPU::OPERAND_REG_IMM_FP32_DEFERRED, llvm::AMDGPU::OPERAND_REG_IMM_FP64, llvm::AMDGPU::OPERAND_REG_IMM_INT16, llvm::AMDGPU::OPERAND_REG_IMM_INT32, llvm::AMDGPU::OPERAND_REG_IMM_INT64, llvm::AMDGPU::OPERAND_REG_IMM_V2FP16, llvm::AMDGPU::OPERAND_REG_IMM_V2FP32, llvm::AMDGPU::OPERAND_REG_IMM_V2INT16, llvm::AMDGPU::OPERAND_REG_IMM_V2INT32, llvm::AMDGPU::OPERAND_REG_INLINE_AC_FP16, llvm::AMDGPU::OPERAND_REG_INLINE_AC_FP32, llvm::AMDGPU::OPERAND_REG_INLINE_AC_FP64, llvm::AMDGPU::OPERAND_REG_INLINE_AC_INT16, llvm::AMDGPU::OPERAND_REG_INLINE_AC_INT32, llvm::AMDGPU::OPERAND_REG_INLINE_AC_V2FP16, llvm::AMDGPU::OPERAND_REG_INLINE_AC_V2INT16, llvm::AMDGPU::OPERAND_REG_INLINE_C_FP16, llvm::AMDGPU::OPERAND_REG_INLINE_C_FP32, llvm::AMDGPU::OPERAND_REG_INLINE_C_FP64, llvm::AMDGPU::OPERAND_REG_INLINE_C_INT16, llvm::AMDGPU::OPERAND_REG_INLINE_C_INT32, llvm::AMDGPU::OPERAND_REG_INLINE_C_INT64, llvm::AMDGPU::OPERAND_REG_INLINE_C_V2FP16, llvm::AMDGPU::OPERAND_REG_INLINE_C_V2FP32, llvm::AMDGPU::OPERAND_REG_INLINE_C_V2INT16, and llvm::AMDGPU::OPERAND_REG_INLINE_C_V2INT32.
|
static |
Definition at line 2306 of file AMDGPUAsmParser.cpp.
Definition at line 2570 of file AMDGPUAsmParser.cpp.
Definition at line 2563 of file AMDGPUAsmParser.cpp.
References RegularRegisters.
Definition at line 2419 of file AMDGPUAsmParser.cpp.
References llvm::StringSwitch< T, R >::Case(), llvm::StringSwitch< T, R >::Default(), and RegName.
|
static |
Definition at line 3426 of file AMDGPUAsmParser.cpp.
References llvm::AMDGPU::getNamedOperandIdx(), llvm::AMDGPU::isVOPD(), and Opcode.
|
static |
Definition at line 4376 of file AMDGPUAsmParser.cpp.
References llvm::MCRegisterClass::contains(), llvm::AMDGPU::getNamedOperandIdx(), llvm::MCInst::getOpcode(), llvm::MCInst::getOperand(), and MRI.
Referenced by decodeOperand_AVLdSt_Any().
Definition at line 1904 of file AMDGPUAsmParser.cpp.
References llvm::MVT::getScalarType(), llvm::AMDGPU::isInlinableIntLiteral(), and llvm::AMDGPU::isInlinableLiteral16().
|
static |
Definition at line 4843 of file AMDGPUAsmParser.cpp.
Definition at line 3777 of file AMDGPUAsmParser.cpp.
References Opcode.
|
static |
Definition at line 7852 of file AMDGPUAsmParser.cpp.
References llvm::AMDGPU::OPERAND_INPUT_MODS.
|
static |
Definition at line 2556 of file AMDGPUAsmParser.cpp.
Definition at line 3947 of file AMDGPUAsmParser.cpp.
References Opcode.
Definition at line 1900 of file AMDGPUAsmParser.cpp.
References llvm::isIntN(), llvm::isUIntN(), and Size.
LLVM_EXTERNAL_VISIBILITY void LLVMInitializeAMDGPUAsmParser | ( | ) |
Force static initialization.
Definition at line 8800 of file AMDGPUAsmParser.cpp.
References A, B, llvm::getTheGCNTarget(), and llvm::getTheR600Target().
|
constexpr |
Definition at line 3421 of file AMDGPUAsmParser.cpp.
|
staticconstexpr |
Definition at line 2548 of file AMDGPUAsmParser.cpp.
Referenced by getRegularRegInfo().