LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Typedefs | Functions
SystemZDisassembler.cpp File Reference
#include "SystemZ.h"
#include "llvm/MC/MCDisassembler.h"
#include "llvm/MC/MCFixedLenDisassembler.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCSubtargetInfo.h"
#include "llvm/Support/MemoryObject.h"
#include "llvm/Support/TargetRegistry.h"
#include "SystemZGenDisassemblerTables.inc"
Include dependency graph for SystemZDisassembler.cpp:

Go to the source code of this file.

Typedefs

typedef
MCDisassembler::DecodeStatus 
DecodeStatus
 

Functions

static MCDisassemblercreateSystemZDisassembler (const Target &T, const MCSubtargetInfo &STI)
 
void LLVMInitializeSystemZDisassembler ()
 
static DecodeStatus decodeRegisterClass (MCInst &Inst, uint64_t RegNo, const unsigned *Regs)
 
static DecodeStatus DecodeGR32BitRegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
 
static DecodeStatus DecodeGRH32BitRegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
 
static DecodeStatus DecodeGR64BitRegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
 
static DecodeStatus DecodeGR128BitRegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
 
static DecodeStatus DecodeADDR64BitRegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
 
static DecodeStatus DecodeFP32BitRegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
 
static DecodeStatus DecodeFP64BitRegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
 
static DecodeStatus DecodeFP128BitRegisterClass (MCInst &Inst, uint64_t RegNo, uint64_t Address, const void *Decoder)
 
template<unsigned N>
static DecodeStatus decodeUImmOperand (MCInst &Inst, uint64_t Imm)
 
template<unsigned N>
static DecodeStatus decodeSImmOperand (MCInst &Inst, uint64_t Imm)
 
static DecodeStatus decodeAccessRegOperand (MCInst &Inst, uint64_t Imm, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeU4ImmOperand (MCInst &Inst, uint64_t Imm, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeU6ImmOperand (MCInst &Inst, uint64_t Imm, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeU8ImmOperand (MCInst &Inst, uint64_t Imm, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeU16ImmOperand (MCInst &Inst, uint64_t Imm, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeU32ImmOperand (MCInst &Inst, uint64_t Imm, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeS8ImmOperand (MCInst &Inst, uint64_t Imm, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeS16ImmOperand (MCInst &Inst, uint64_t Imm, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeS32ImmOperand (MCInst &Inst, uint64_t Imm, uint64_t Address, const void *Decoder)
 
template<unsigned N>
static DecodeStatus decodePCDBLOperand (MCInst &Inst, uint64_t Imm, uint64_t Address)
 
static DecodeStatus decodePC16DBLOperand (MCInst &Inst, uint64_t Imm, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodePC32DBLOperand (MCInst &Inst, uint64_t Imm, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeBDAddr12Operand (MCInst &Inst, uint64_t Field, const unsigned *Regs)
 
static DecodeStatus decodeBDAddr20Operand (MCInst &Inst, uint64_t Field, const unsigned *Regs)
 
static DecodeStatus decodeBDXAddr12Operand (MCInst &Inst, uint64_t Field, const unsigned *Regs)
 
static DecodeStatus decodeBDXAddr20Operand (MCInst &Inst, uint64_t Field, const unsigned *Regs)
 
static DecodeStatus decodeBDLAddr12Len8Operand (MCInst &Inst, uint64_t Field, const unsigned *Regs)
 
static DecodeStatus decodeBDAddr32Disp12Operand (MCInst &Inst, uint64_t Field, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeBDAddr32Disp20Operand (MCInst &Inst, uint64_t Field, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeBDAddr64Disp12Operand (MCInst &Inst, uint64_t Field, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeBDAddr64Disp20Operand (MCInst &Inst, uint64_t Field, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeBDXAddr64Disp12Operand (MCInst &Inst, uint64_t Field, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeBDXAddr64Disp20Operand (MCInst &Inst, uint64_t Field, uint64_t Address, const void *Decoder)
 
static DecodeStatus decodeBDLAddr64Disp12Len8Operand (MCInst &Inst, uint64_t Field, uint64_t Address, const void *Decoder)
 

Typedef Documentation

Definition at line 20 of file SystemZDisassembler.cpp.

Function Documentation

static MCDisassembler* createSystemZDisassembler ( const Target T,
const MCSubtargetInfo STI 
)
static

Definition at line 39 of file SystemZDisassembler.cpp.

Referenced by LLVMInitializeSystemZDisassembler().

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

Definition at line 122 of file SystemZDisassembler.cpp.

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

Definition at line 84 of file SystemZDisassembler.cpp.

References decodeRegisterClass(), and llvm::SystemZMC::GR64Regs.

static DecodeStatus decodeBDAddr12Operand ( MCInst Inst,
uint64_t  Field,
const unsigned Regs 
)
static
static DecodeStatus decodeBDAddr20Operand ( MCInst Inst,
uint64_t  Field,
const unsigned Regs 
)
static
static DecodeStatus decodeBDAddr32Disp12Operand ( MCInst Inst,
uint64_t  Field,
uint64_t  Address,
const void *  Decoder 
)
static

Definition at line 244 of file SystemZDisassembler.cpp.

References decodeBDAddr12Operand(), and llvm::SystemZMC::GR32Regs.

static DecodeStatus decodeBDAddr32Disp20Operand ( MCInst Inst,
uint64_t  Field,
uint64_t  Address,
const void *  Decoder 
)
static

Definition at line 250 of file SystemZDisassembler.cpp.

References decodeBDAddr20Operand(), and llvm::SystemZMC::GR32Regs.

static DecodeStatus decodeBDAddr64Disp12Operand ( MCInst Inst,
uint64_t  Field,
uint64_t  Address,
const void *  Decoder 
)
static

Definition at line 256 of file SystemZDisassembler.cpp.

References decodeBDAddr12Operand(), and llvm::SystemZMC::GR64Regs.

static DecodeStatus decodeBDAddr64Disp20Operand ( MCInst Inst,
uint64_t  Field,
uint64_t  Address,
const void *  Decoder 
)
static

Definition at line 262 of file SystemZDisassembler.cpp.

References decodeBDAddr20Operand(), and llvm::SystemZMC::GR64Regs.

static DecodeStatus decodeBDLAddr12Len8Operand ( MCInst Inst,
uint64_t  Field,
const unsigned Regs 
)
static
static DecodeStatus decodeBDLAddr64Disp12Len8Operand ( MCInst Inst,
uint64_t  Field,
uint64_t  Address,
const void *  Decoder 
)
static
static DecodeStatus decodeBDXAddr12Operand ( MCInst Inst,
uint64_t  Field,
const unsigned Regs 
)
static
static DecodeStatus decodeBDXAddr20Operand ( MCInst Inst,
uint64_t  Field,
const unsigned Regs 
)
static
static DecodeStatus decodeBDXAddr64Disp12Operand ( MCInst Inst,
uint64_t  Field,
uint64_t  Address,
const void *  Decoder 
)
static

Definition at line 268 of file SystemZDisassembler.cpp.

References decodeBDXAddr12Operand(), and llvm::SystemZMC::GR64Regs.

static DecodeStatus decodeBDXAddr64Disp20Operand ( MCInst Inst,
uint64_t  Field,
uint64_t  Address,
const void *  Decoder 
)
static

Definition at line 274 of file SystemZDisassembler.cpp.

References decodeBDXAddr20Operand(), and llvm::SystemZMC::GR64Regs.

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

Definition at line 102 of file SystemZDisassembler.cpp.

References decodeRegisterClass(), and llvm::SystemZMC::FP128Regs.

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

Definition at line 90 of file SystemZDisassembler.cpp.

References decodeRegisterClass(), and llvm::SystemZMC::FP32Regs.

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

Definition at line 96 of file SystemZDisassembler.cpp.

References decodeRegisterClass(), and llvm::SystemZMC::FP64Regs.

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

Definition at line 78 of file SystemZDisassembler.cpp.

References decodeRegisterClass(), and llvm::SystemZMC::GR128Regs.

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

Definition at line 60 of file SystemZDisassembler.cpp.

References decodeRegisterClass(), and llvm::SystemZMC::GR32Regs.

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

Definition at line 72 of file SystemZDisassembler.cpp.

References decodeRegisterClass(), and llvm::SystemZMC::GR64Regs.

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

Definition at line 66 of file SystemZDisassembler.cpp.

References decodeRegisterClass(), and llvm::SystemZMC::GRH32Regs.

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

Definition at line 176 of file SystemZDisassembler.cpp.

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

Definition at line 182 of file SystemZDisassembler.cpp.

template<unsigned N>
static DecodeStatus decodePCDBLOperand ( MCInst Inst,
uint64_t  Imm,
uint64_t  Address 
)
static
static DecodeStatus decodeRegisterClass ( MCInst Inst,
uint64_t  RegNo,
const unsigned Regs 
)
static
static DecodeStatus decodeS16ImmOperand ( MCInst Inst,
uint64_t  Imm,
uint64_t  Address,
const void *  Decoder 
)
static

Definition at line 158 of file SystemZDisassembler.cpp.

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

Definition at line 163 of file SystemZDisassembler.cpp.

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

Definition at line 153 of file SystemZDisassembler.cpp.

template<unsigned N>
static DecodeStatus decodeSImmOperand ( MCInst Inst,
uint64_t  Imm 
)
static
static DecodeStatus decodeU16ImmOperand ( MCInst Inst,
uint64_t  Imm,
uint64_t  Address,
const void *  Decoder 
)
static

Definition at line 143 of file SystemZDisassembler.cpp.

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

Definition at line 148 of file SystemZDisassembler.cpp.

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

Definition at line 128 of file SystemZDisassembler.cpp.

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

Definition at line 133 of file SystemZDisassembler.cpp.

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

Definition at line 138 of file SystemZDisassembler.cpp.

template<unsigned N>
static DecodeStatus decodeUImmOperand ( MCInst Inst,
uint64_t  Imm 
)
static
void LLVMInitializeSystemZDisassembler ( )