LLVM 20.0.0git
|
#include "MCTargetDesc/VEMCTargetDesc.h"
#include "TargetInfo/VETargetInfo.h"
#include "VE.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCDecoderOps.h"
#include "llvm/MC/MCDisassembler/MCDisassembler.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/TargetRegistry.h"
#include "VEGenDisassemblerTables.inc"
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "ve-disassembler" |
#define | BCm_kind(NAME) |
#define | BCRm_kind(NAME) |
Typedefs | |
typedef MCDisassembler::DecodeStatus | DecodeStatus |
typedef DecodeStatus(* | DecodeFunc) (MCInst &MI, unsigned RegNo, uint64_t Address, const MCDisassembler *Decoder) |
Variables | |
static const unsigned | I32RegDecoderTable [] |
static const unsigned | I64RegDecoderTable [] |
static const unsigned | F32RegDecoderTable [] |
static const unsigned | F128RegDecoderTable [] |
static const unsigned | V64RegDecoderTable [] |
static const unsigned | VMRegDecoderTable [] |
static const unsigned | VM512RegDecoderTable [] |
static const unsigned | MiscRegDecoderTable [] |
#define BCm_kind | ( | NAME | ) |
#define BCRm_kind | ( | NAME | ) |
#define DEBUG_TYPE "ve-disassembler" |
Definition at line 25 of file VEDisassembler.cpp.
typedef DecodeStatus(* DecodeFunc) (MCInst &MI, unsigned RegNo, uint64_t Address, const MCDisassembler *Decoder) |
Definition at line 313 of file VEDisassembler.cpp.
Definition at line 27 of file VEDisassembler.cpp.
|
static |
Definition at line 44 of file VEDisassembler.cpp.
Referenced by LLVMInitializeVEDisassembler().
|
static |
Definition at line 349 of file VEDisassembler.cpp.
References llvm::MCOperand::createImm(), DecodeI64RegisterClass(), MI, and llvm::MCDisassembler::Success.
Referenced by DecodeBranchCondition(), DecodeBranchConditionAlways(), DecodeCAS(), and DecodeMemAS().
|
static |
Definition at line 316 of file VEDisassembler.cpp.
References llvm::MCOperand::createImm(), DecodeI64RegisterClass(), MI, and llvm::MCDisassembler::Success.
Referenced by DecodeMem().
|
static |
Definition at line 598 of file VEDisassembler.cpp.
References llvm::MCOperand::createImm(), DecodeAS(), DecodeI64RegisterClass(), isIntegerBCKind(), MI, llvm::MCDisassembler::Success, and llvm::VEValToCondCode().
|
static |
Definition at line 622 of file VEDisassembler.cpp.
References DecodeAS(), and MI.
|
static |
Definition at line 528 of file VEDisassembler.cpp.
References DecodeI64RegisterClass(), and DecodeMem().
|
static |
Definition at line 466 of file VEDisassembler.cpp.
References llvm::MCOperand::createImm(), DecodeAS(), MI, and llvm::MCDisassembler::Success.
Referenced by DecodeCASI32(), DecodeCASI64(), DecodeTS1AMI32(), and DecodeTS1AMI64().
|
static |
Definition at line 522 of file VEDisassembler.cpp.
References DecodeCAS(), DecodeI32RegisterClass(), and MI.
|
static |
Definition at line 516 of file VEDisassembler.cpp.
References DecodeCAS(), DecodeI64RegisterClass(), and MI.
|
static |
Definition at line 584 of file VEDisassembler.cpp.
References llvm::MCOperand::createImm(), isIntegerBCKind(), MI, llvm::MCDisassembler::Success, and llvm::VEValToCondCode().
|
static |
Definition at line 157 of file VEDisassembler.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createReg(), F128RegDecoderTable, llvm::MCDisassembler::Fail, and llvm::MCDisassembler::Success.
|
static |
Definition at line 147 of file VEDisassembler.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createReg(), F32RegDecoderTable, llvm::MCDisassembler::Fail, and llvm::MCDisassembler::Success.
Referenced by DecodeLoadF32(), and DecodeStoreF32().
|
static |
Definition at line 127 of file VEDisassembler.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createReg(), llvm::MCDisassembler::Fail, I32RegDecoderTable, and llvm::MCDisassembler::Success.
Referenced by DecodeCASI32(), DecodeLoadI32(), DecodeStoreI32(), and DecodeTS1AMI32().
|
static |
Definition at line 137 of file VEDisassembler.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createReg(), llvm::MCDisassembler::Fail, I64RegDecoderTable, and llvm::MCDisassembler::Success.
Referenced by DecodeAS(), DecodeASX(), DecodeBranchCondition(), DecodeCall(), DecodeCASI64(), DecodeLoadASI64(), DecodeLoadI64(), DecodeStoreASI64(), DecodeStoreI64(), and DecodeTS1AMI64().
|
static |
Definition at line 452 of file VEDisassembler.cpp.
References DecodeI64RegisterClass(), and DecodeMemAS().
|
static |
Definition at line 441 of file VEDisassembler.cpp.
References DecodeF32RegisterClass(), and DecodeMem().
|
static |
Definition at line 419 of file VEDisassembler.cpp.
References DecodeI32RegisterClass(), and DecodeMem().
|
static |
Definition at line 430 of file VEDisassembler.cpp.
References DecodeI64RegisterClass(), and DecodeMem().
|
static |
Definition at line 371 of file VEDisassembler.cpp.
References DecodeASX(), isLoad(), MI, and llvm::MCDisassembler::Success.
Referenced by DecodeCall(), DecodeLoadF32(), DecodeLoadI32(), DecodeLoadI64(), DecodeStoreF32(), DecodeStoreI32(), and DecodeStoreI64().
|
static |
Definition at line 395 of file VEDisassembler.cpp.
References DecodeAS(), isLoad(), MI, and llvm::MCDisassembler::Success.
Referenced by DecodeLoadASI64(), and DecodeStoreASI64().
|
static |
Definition at line 201 of file VEDisassembler.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createReg(), llvm::MCDisassembler::Fail, MiscRegDecoderTable, and llvm::MCDisassembler::Success.
|
static |
Definition at line 591 of file VEDisassembler.cpp.
References llvm::MCOperand::createImm(), MI, llvm::MCDisassembler::Success, and llvm::VEValToRD().
|
static |
Definition at line 540 of file VEDisassembler.cpp.
References llvm::MCOperand::createImm(), MI, and llvm::MCDisassembler::Success.
|
static |
Definition at line 533 of file VEDisassembler.cpp.
References llvm::MCOperand::createImm(), MI, and llvm::MCDisassembler::Success.
|
static |
Definition at line 459 of file VEDisassembler.cpp.
References DecodeI64RegisterClass(), and DecodeMemAS().
|
static |
Definition at line 446 of file VEDisassembler.cpp.
References DecodeF32RegisterClass(), and DecodeMem().
|
static |
Definition at line 424 of file VEDisassembler.cpp.
References DecodeI32RegisterClass(), and DecodeMem().
|
static |
Definition at line 435 of file VEDisassembler.cpp.
References DecodeI64RegisterClass(), and DecodeMem().
|
static |
Definition at line 510 of file VEDisassembler.cpp.
References DecodeCAS(), DecodeI32RegisterClass(), and MI.
|
static |
Definition at line 504 of file VEDisassembler.cpp.
References DecodeCAS(), DecodeI64RegisterClass(), and MI.
|
static |
Definition at line 167 of file VEDisassembler.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createReg(), llvm::MCDisassembler::Fail, llvm::MCDisassembler::Success, and V64RegDecoderTable.
|
static |
Definition at line 191 of file VEDisassembler.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createReg(), llvm::MCDisassembler::Fail, llvm::MCDisassembler::Success, and VM512RegDecoderTable.
|
static |
Definition at line 181 of file VEDisassembler.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createReg(), llvm::MCDisassembler::Fail, llvm::MCDisassembler::Success, and VMRegDecoderTable.
Definition at line 547 of file VEDisassembler.cpp.
References BCm_kind, BCRm_kind, and MI.
Referenced by DecodeBranchCondition(), and DecodeCCOperand().
LLVM_EXTERNAL_VISIBILITY void LLVMInitializeVEDisassembler | ( | ) |
Definition at line 50 of file VEDisassembler.cpp.
References createVEDisassembler(), llvm::getTheVETarget(), and llvm::TargetRegistry::RegisterMCDisassembler().
|
static |
Read four bytes from the ArrayRef and return 32 bit word.
Definition at line 268 of file VEDisassembler.cpp.
References llvm::MCDisassembler::Fail, Insn, llvm::ArrayRef< T >::size(), Size, and llvm::MCDisassembler::Success.
Definition at line 92 of file VEDisassembler.cpp.
Referenced by DecodeF128RegisterClass().
Definition at line 80 of file VEDisassembler.cpp.
Referenced by DecodeF32RegisterClass().
Definition at line 56 of file VEDisassembler.cpp.
Referenced by DecodeI32RegisterClass().
Definition at line 68 of file VEDisassembler.cpp.
Referenced by DecodeI64RegisterClass().
Definition at line 117 of file VEDisassembler.cpp.
Referenced by DecodeMISCRegisterClass().
Definition at line 98 of file VEDisassembler.cpp.
Referenced by DecodeV64RegisterClass().
Definition at line 113 of file VEDisassembler.cpp.
Referenced by DecodeVM512RegisterClass().
Definition at line 108 of file VEDisassembler.cpp.
Referenced by DecodeVMRegisterClass().