LLVM 22.0.0git
M68kDisassembler.cpp File Reference

Go to the source code of this file.

Classes

struct  M68kDisassembler
 A disassembler class for M68k. More...

Macros

#define DEBUG_TYPE   "m68k-disassembler"
#define DecodeFPDR32RegisterClass   DecodeFPDRRegisterClass
#define DecodeFPDR64RegisterClass   DecodeFPDRRegisterClass
#define DecodeFPDR80RegisterClass   DecodeFPDRRegisterClass
#define DecodeFPICRegisterClass   DecodeFPCSCRegisterClass

Functions

static DecodeStatus DecodeRegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
static DecodeStatus DecodeDR32RegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
static DecodeStatus DecodeDR16RegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
static DecodeStatus DecodeDR8RegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
static DecodeStatus DecodeAR32RegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
static DecodeStatus DecodeAR16RegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
static DecodeStatus DecodeXR32RegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
static DecodeStatus DecodeXR16RegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
static DecodeStatus DecodeFPDRRegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
static DecodeStatus DecodeFPCSCRegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
static DecodeStatus DecodeCCRCRegisterClass (MCInst &Inst, const MCDisassembler *Decoder)
static DecodeStatus DecodeSRCRegisterClass (MCInst &Inst, const MCDisassembler *Decoder)
static DecodeStatus DecodeImm32 (MCInst &Inst, uint64_t Imm, uint64_t Address, const void *Decoder)
static MCDisassemblercreateM68kDisassembler (const Target &T, const MCSubtargetInfo &STI, MCContext &Ctx)
LLVM_EXTERNAL_VISIBILITY void LLVMInitializeM68kDisassembler ()

Variables

static const unsigned RegisterDecode []

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "m68k-disassembler"

Definition at line 33 of file M68kDisassembler.cpp.

◆ DecodeFPDR32RegisterClass

#define DecodeFPDR32RegisterClass   DecodeFPDRRegisterClass

Definition at line 99 of file M68kDisassembler.cpp.

◆ DecodeFPDR64RegisterClass

#define DecodeFPDR64RegisterClass   DecodeFPDRRegisterClass

Definition at line 100 of file M68kDisassembler.cpp.

◆ DecodeFPDR80RegisterClass

#define DecodeFPDR80RegisterClass   DecodeFPDRRegisterClass

Definition at line 101 of file M68kDisassembler.cpp.

◆ DecodeFPICRegisterClass

#define DecodeFPICRegisterClass   DecodeFPCSCRegisterClass

Definition at line 108 of file M68kDisassembler.cpp.

Function Documentation

◆ createM68kDisassembler()

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

Definition at line 173 of file M68kDisassembler.cpp.

References T.

Referenced by LLVMInitializeM68kDisassembler().

◆ DecodeAR16RegisterClass()

DecodeStatus DecodeAR16RegisterClass ( MCInst & Inst,
uint64_t RegNo,
uint64_t Address,
const void * Decoder )
static

Definition at line 76 of file M68kDisassembler.cpp.

References DecodeRegisterClass().

◆ DecodeAR32RegisterClass()

DecodeStatus DecodeAR32RegisterClass ( MCInst & Inst,
uint64_t RegNo,
uint64_t Address,
const void * Decoder )
static

Definition at line 70 of file M68kDisassembler.cpp.

References DecodeRegisterClass().

◆ DecodeCCRCRegisterClass()

DecodeStatus DecodeCCRCRegisterClass ( MCInst & Inst,
const MCDisassembler * Decoder )
static

◆ DecodeDR16RegisterClass()

DecodeStatus DecodeDR16RegisterClass ( MCInst & Inst,
uint64_t RegNo,
uint64_t Address,
const void * Decoder )
static

Definition at line 58 of file M68kDisassembler.cpp.

References DecodeRegisterClass().

◆ DecodeDR32RegisterClass()

DecodeStatus DecodeDR32RegisterClass ( MCInst & Inst,
uint64_t RegNo,
uint64_t Address,
const void * Decoder )
static

Definition at line 52 of file M68kDisassembler.cpp.

References DecodeRegisterClass().

◆ DecodeDR8RegisterClass()

DecodeStatus DecodeDR8RegisterClass ( MCInst & Inst,
uint64_t RegNo,
uint64_t Address,
const void * Decoder )
static

Definition at line 64 of file M68kDisassembler.cpp.

References DecodeRegisterClass().

◆ DecodeFPCSCRegisterClass()

DecodeStatus DecodeFPCSCRegisterClass ( MCInst & Inst,
uint64_t RegNo,
uint64_t Address,
const void * Decoder )
static

Definition at line 103 of file M68kDisassembler.cpp.

References DecodeRegisterClass().

◆ DecodeFPDRRegisterClass()

DecodeStatus DecodeFPDRRegisterClass ( MCInst & Inst,
uint64_t RegNo,
uint64_t Address,
const void * Decoder )
static

Definition at line 94 of file M68kDisassembler.cpp.

References DecodeRegisterClass().

◆ DecodeImm32()

DecodeStatus DecodeImm32 ( MCInst & Inst,
uint64_t Imm,
uint64_t Address,
const void * Decoder )
static

◆ DecodeRegisterClass()

◆ DecodeSRCRegisterClass()

DecodeStatus DecodeSRCRegisterClass ( MCInst & Inst,
const MCDisassembler * Decoder )
static

◆ DecodeXR16RegisterClass()

DecodeStatus DecodeXR16RegisterClass ( MCInst & Inst,
uint64_t RegNo,
uint64_t Address,
const void * Decoder )
static

Definition at line 88 of file M68kDisassembler.cpp.

References DecodeRegisterClass().

◆ DecodeXR32RegisterClass()

DecodeStatus DecodeXR32RegisterClass ( MCInst & Inst,
uint64_t RegNo,
uint64_t Address,
const void * Decoder )
static

Definition at line 82 of file M68kDisassembler.cpp.

References DecodeRegisterClass().

◆ LLVMInitializeM68kDisassembler()

Variable Documentation

◆ RegisterDecode

const unsigned RegisterDecode[]
static
Initial value:
= {
M68k::D0, M68k::D1, M68k::D2, M68k::D3, M68k::D4, M68k::D5,
M68k::D6, M68k::D7, M68k::A0, M68k::A1, M68k::A2, M68k::A3,
M68k::A4, M68k::A5, M68k::A6, M68k::SP, M68k::FP0, M68k::FP1,
M68k::FP2, M68k::FP3, M68k::FP4, M68k::FP5, M68k::FP6, M68k::FP7,
M68k::FPIAR, M68k::FPS, M68k::FPC}

Definition at line 37 of file M68kDisassembler.cpp.

Referenced by DecodeRegisterClass().