LLVM 17.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 1264 of file AMDGPUAsmParser.cpp.
#define GET_MATCHER_IMPLEMENTATION |
Definition at line 9110 of file AMDGPUAsmParser.cpp.
#define GET_MNEMONIC_CHECKER |
Definition at line 9112 of file AMDGPUAsmParser.cpp.
#define GET_MNEMONIC_SPELL_CHECKER |
Definition at line 9111 of file AMDGPUAsmParser.cpp.
#define GET_REGISTER_MATCHER |
Definition at line 9109 of file AMDGPUAsmParser.cpp.
using OperandIndices = SmallVector<int16_t, MAX_SRC_OPERANDS_NUM> |
Definition at line 3436 of file AMDGPUAsmParser.cpp.
|
static |
Definition at line 6091 of file AMDGPUAsmParser.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createImm(), Default, Idx, and Operands.
|
static |
|
static |
|
static |
Definition at line 1899 of file AMDGPUAsmParser.cpp.
References llvm::APFloat::convert(), and getFltSemantics().
|
static |
Definition at line 8011 of file AMDGPUAsmParser.cpp.
|
static |
Definition at line 8003 of file AMDGPUAsmParser.cpp.
References Mul.
void cvtVOP3DstOpSelOnly | ( | MCInst & | Inst | ) |
Definition at line 8068 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 7364 of file AMDGPUAsmParser.cpp.
|
static |
Definition at line 6541 of file AMDGPUAsmParser.cpp.
References decode(), llvm::encode(), and llvm::Failed().
Definition at line 3288 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 1850 of file AMDGPUAsmParser.cpp.
References getFltSemantics(), and llvm::MVT::getSizeInBits().
|
static |
Definition at line 1837 of file AMDGPUAsmParser.cpp.
References llvm_unreachable, and Size.
Referenced by canLosslesslyConvertToFPType(), and getFltSemantics().
|
static |
Definition at line 1854 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 2332 of file AMDGPUAsmParser.cpp.
Definition at line 2598 of file AMDGPUAsmParser.cpp.
Definition at line 2591 of file AMDGPUAsmParser.cpp.
References RegularRegisters.
Definition at line 2445 of file AMDGPUAsmParser.cpp.
References llvm::StringSwitch< T, R >::Case(), llvm::StringSwitch< T, R >::Default(), and RegName.
|
static |
Definition at line 3440 of file AMDGPUAsmParser.cpp.
References llvm::AMDGPU::getNamedOperandIdx(), and llvm::AMDGPU::isVOPD().
|
static |
Definition at line 4355 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 1921 of file AMDGPUAsmParser.cpp.
References llvm::MVT::getScalarType(), llvm::AMDGPU::isInlinableIntLiteral(), and llvm::AMDGPU::isInlinableLiteral16().
|
static |
Definition at line 4796 of file AMDGPUAsmParser.cpp.
Definition at line 3782 of file AMDGPUAsmParser.cpp.
|
static |
Definition at line 8104 of file AMDGPUAsmParser.cpp.
References llvm::MCInstrDesc::getOperandConstraint(), llvm::MCInstrDesc::NumOperands, llvm::AMDGPU::OPERAND_INPUT_MODS, and llvm::MCInstrDesc::operands().
|
static |
Definition at line 2584 of file AMDGPUAsmParser.cpp.
Definition at line 3952 of file AMDGPUAsmParser.cpp.
Definition at line 1917 of file AMDGPUAsmParser.cpp.
References llvm::isIntN(), llvm::isUIntN(), and Size.
LLVM_EXTERNAL_VISIBILITY void LLVMInitializeAMDGPUAsmParser | ( | ) |
Force static initialization.
Definition at line 9104 of file AMDGPUAsmParser.cpp.
References A, B, llvm::getTheAMDGPUTarget(), and llvm::getTheGCNTarget().
|
constexpr |
Definition at line 3435 of file AMDGPUAsmParser.cpp.
|
staticconstexpr |
Definition at line 2576 of file AMDGPUAsmParser.cpp.
Referenced by getRegularRegInfo().