LLVM: llvm::M68k Namespace Reference (original) (raw)

Define some predicates that are used for node matching. More...

Enumerations
enum PartialMappingIdx { PMI_GPR, PMI_Min = PMI_GPR }
enum ValueMappingIdx { InvalidIdx = 0 , GPR3OpsIdx = 1 }
enum CondCode { COND_T = 0 , COND_F = 1 , COND_HI = 2 , COND_LS = 3 , COND_CC = 4 , COND_CS = 5 , COND_NE = 6 , COND_EQ = 7 , COND_VC = 8 , COND_VS = 9 , COND_PL = 10 , COND_MI = 11 , COND_GE = 12 , COND_LT = 13 , COND_GT = 14 , COND_LE = 15 , LAST_VALID_COND = COND_LE , COND_INVALID }
enum { MemDisp = 0 , MemBase = 1 , MemIndex = 2 , MemOuter = 3 }
Enums for memory operand decoding. More...
enum { PCRelDisp = 0 , PCRelIndex = 1 , PCRelOuter = 2 }
Enums for pc-relative memory operand decoding. More...
enum class MemAddrModeKind : unsigned { j = 1 , o, e, p, f, F, g, G, u, U, v, V, b, B, q, k, K, l, L, x, X, y, Y }
enum Specifier { S_None, S_GOT, S_GOTOFF, S_GOTPCREL, S_GOTTPOFF, S_PLT, S_TLSGD, S_TLSLD, S_TLSLDM, S_TPOFF }
Functions
static const MachineInstrBuilder & addOffset (const MachineInstrBuilder &MIB, int Offset)
static const MachineInstrBuilder & addRegIndirectWithDisp (const MachineInstrBuilder &MIB, Register Reg, bool IsKill, int Offset)
addRegIndirectWithDisp - This function is used to add a memory reference of the form (Offset, Base), i.e., one with no scale or index, but with a displacement.
static const MachineInstrBuilder & addFrameReference (const MachineInstrBuilder &MIB, int FI, int Offset=0)
addFrameReference - This function is used to add a reference to the base of an abstract object on the stack frame of the current function.
static const MachineInstrBuilder & addMemOperand (const MachineInstrBuilder &MIB, int FI, int Offset=0)
static M68k::CondCode GetOppositeBranchCondition (M68k::CondCode CC)
static unsigned GetCondBranchFromCond (M68k::CondCode CC)
static M68k::CondCode GetCondFromBranchOpc (unsigned Opcode)
static unsigned IsCMP (unsigned Op)
static bool IsSETCC (unsigned SETCC)
bool isCalleePop (CallingConv::ID CallingConv, bool IsVarArg, bool GuaranteeTCO)
Determines whether the callee is required to pop its own arguments.
template<typename value_t>
value_t swapWord (value_t Val)
const uint8_t * getMCInstrBeads (unsigned)

Define some predicates that are used for node matching.

anonymous enum

Enums for memory operand decoding.

Supports these forms: (d,An) (d,An,Xn) ([bd,An],Xn,od) ([bd,An,Xn],od) TODO Implement scaling other than 1

Enumerator
MemDisp
MemBase
MemIndex
MemOuter

Definition at line 42 of file M68kBaseInfo.h.

anonymous enum

Enums for pc-relative memory operand decoding.

Supports these forms: (d,PC) (d,PC,Xn) ([bd,PC],Xn,od) ([bd,PC,Xn],od)

Enumerator
PCRelDisp
PCRelIndex
PCRelOuter

Definition at line 49 of file M68kBaseInfo.h.

CondCode

Enumerator
COND_T
COND_F
COND_HI
COND_LS
COND_CC
COND_CS
COND_NE
COND_EQ
COND_VC
COND_VS
COND_PL
COND_MI
COND_GE
COND_LT
COND_GT
COND_LE
LAST_VALID_COND
COND_INVALID

Definition at line 34 of file M68kInstrInfo.h.

MemAddrModeKind

Enumerator
j
o
e
p
f
F
g
G
u
U
v
V
b
B
q
k
K
l
L
x
X
y
Y

Definition at line 51 of file M68kBaseInfo.h.

PartialMappingIdx

Specifier

Enumerator
S_None
S_GOT
S_GOTOFF
S_GOTPCREL
S_GOTTPOFF
S_PLT
S_TLSGD
S_TLSLD
S_TLSLDM
S_TPOFF

Definition at line 30 of file M68kMCAsmInfo.h.

ValueMappingIdx

addFrameReference()

addFrameReference - This function is used to add a reference to the base of an abstract object on the stack frame of the current function.

This reference has base register as the FrameIndex offset until it is resolved. This allows a constant offset to be specified as well...

Definition at line 59 of file M68kInstrBuilder.h.

References llvm::MachineInstrBuilder::addFrameIndex(), llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addMemOperand(), llvm::MachinePointerInfo::getFixedStack(), llvm::MachineFunction::getFrameInfo(), llvm::MachineFunction::getMachineMemOperand(), llvm::MachineFrameInfo::getObjectAlign(), llvm::MachineFrameInfo::getObjectSize(), MI, llvm::MachineMemOperand::MOLoad, llvm::MachineMemOperand::MONone, llvm::MachineMemOperand::MOStore, and llvm::Offset.

Referenced by llvm::M68kInstrInfo::loadRegFromStackSlot(), llvm::M68kFrameLowering::restoreCalleeSavedRegisters(), llvm::M68kFrameLowering::spillCalleeSavedRegisters(), and llvm::M68kInstrInfo::storeRegToStackSlot().

addMemOperand()

Definition at line 76 of file M68kInstrBuilder.h.

References llvm::MachineInstrBuilder::addMemOperand(), llvm::MachinePointerInfo::getFixedStack(), llvm::MachineFunction::getFrameInfo(), llvm::MachineFunction::getMachineMemOperand(), llvm::MachineFrameInfo::getObjectAlign(), llvm::MachineFrameInfo::getObjectSize(), MI, llvm::MachineMemOperand::MOLoad, llvm::MachineMemOperand::MONone, llvm::MachineMemOperand::MOStore, and llvm::Offset.

Referenced by llvm::M68kFrameLowering::restoreCalleeSavedRegisters(), and llvm::M68kFrameLowering::spillCalleeSavedRegisters().

addOffset()

addRegIndirectWithDisp()

addRegIndirectWithDisp - This function is used to add a memory reference of the form (Offset, Base), i.e., one with no scale or index, but with a displacement.

An example is: (4,D0).

Definition at line 49 of file M68kInstrBuilder.h.

References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), llvm::getKillRegState(), llvm::Offset, and Reg.

Referenced by llvm::M68kFrameLowering::emitEpilogue(), and llvm::M68kFrameLowering::emitPrologue().

GetCondBranchFromCond()

unsigned llvm::M68k::GetCondBranchFromCond ( M68k::CondCode CC) inlinestatic

Definition at line 97 of file M68kInstrInfo.h.

References COND_CC, COND_CS, COND_EQ, COND_GE, COND_GT, COND_HI, COND_LE, COND_LS, COND_LT, COND_MI, COND_NE, COND_PL, COND_VC, COND_VS, and llvm_unreachable.

GetCondFromBranchOpc()

M68k::CondCode llvm::M68k::GetCondFromBranchOpc ( unsigned Opcode) inlinestatic

Definition at line 132 of file M68kInstrInfo.h.

References COND_CC, COND_CS, COND_EQ, COND_GE, COND_GT, COND_HI, COND_INVALID, COND_LE, COND_LS, COND_LT, COND_MI, COND_NE, COND_PL, COND_VC, and COND_VS.

Referenced by llvm::M68kInstrInfo::AnalyzeBranchImpl().

getMCInstrBeads()

GetOppositeBranchCondition()

M68k::CondCode llvm::M68k::GetOppositeBranchCondition ( M68k::CondCode CC) inlinestatic

Definition at line 58 of file M68kInstrInfo.h.

References COND_CC, COND_CS, COND_EQ, COND_F, COND_GE, COND_GT, COND_HI, COND_LE, COND_LS, COND_LT, COND_MI, COND_NE, COND_PL, COND_T, COND_VC, COND_VS, and llvm_unreachable.

isCalleePop()

IsCMP()

IsSETCC()

swapWord()

template<typename value_t>

value_t llvm::M68k::swapWord ( value_t Val )

PartMappings

ValueMappings