// Basic instruction class constructor template.
def template BasicConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
{
%(constructor)s;
}};
def template LoadStoreConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
{
%(constructor)s;
}};
def template BasicConstructor64 {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst) : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst) : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
{
%(constructor)s;
}
}};
def template BranchImmConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
int32_t _imm)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _imm)
{
}};
def template BranchImmCondConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
int32_t _imm,
ConditionCode _condCode)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template BranchRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _op1)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _op1)
{
}};
def template BranchRegCondConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _op1,
ConditionCode _condCode)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template BranchRegRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _op1,
IntRegIndex _op2)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _op1, _op2)
// Only used by CBNZ, CBZ which is conditional based on
// a register value even though the instruction is always unconditional.
def template BranchImmRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
int32_t _imm,
IntRegIndex _op1)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _imm, _op1)
}};
def template BranchImm64Constructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
int64_t _imm)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _imm)
{
}};
def template BranchImmCond64Constructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
int64_t _imm,
ConditionCode _condCode)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template BranchReg64Constructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _op1)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _op1)
{
}};
def template BranchImmReg64Constructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
int64_t _imm,
IntRegIndex _op1)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _imm, _op1)
}};
def template BranchImmImmReg64Constructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
int64_t _imm1, int64_t _imm2,
IntRegIndex _op1)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template DataXImmConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
uint64_t _imm)
}};
def template DataXSRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
}};
def template DataXERegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
}};
def template DataX1RegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _dest, _op1)
}};
def template DataX2RegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2)
}};
def template DataX2RegImmConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
}};
def template DataX3RegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
}};
def template DataXCondCompImmConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _op1,
uint64_t _imm,
ConditionCode _condCode,
}};
def template DataXCondCompRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _op1,
IntRegIndex _op2,
ConditionCode _condCode,
}};
def template DataXCondSelConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
}};
def template RfeConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t _base, int _mode, bool _wb)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
(IntRegIndex)_base, (AddrMode)_mode, _wb)
}};
def template SrsConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t _regMode, int _mode, bool _wb)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
(OperatingMode)_regMode, (AddrMode)_mode, _wb)
}};
def template SwapConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t _dest, uint32_t _op1, uint32_t _base)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
(IntRegIndex)_dest, (IntRegIndex)_op1, (IntRegIndex)_base)
}};
def template LoadStoreDImmConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t _dest, uint32_t _dest2,
uint32_t _base, bool _add, int32_t _imm)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template StoreExDImmConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t _result, uint32_t _dest, uint32_t _dest2,
uint32_t _base, bool _add, int32_t _imm)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template LoadStoreImmConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t _dest, uint32_t _base, bool _add, int32_t _imm)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
(IntRegIndex)_dest, (IntRegIndex)_base, _add, _imm)
}};
def template StoreExImmConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t _result, uint32_t _dest, uint32_t _base,
bool _add, int32_t _imm)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template StoreDRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t _dest, uint32_t _dest2, uint32_t _base, bool _add,
int32_t _shiftAmt, uint32_t _shiftType, uint32_t _index)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template StoreRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t _dest, uint32_t _base, bool _add,
int32_t _shiftAmt, uint32_t _shiftType, uint32_t _index)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template LoadDRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t _dest, uint32_t _dest2, uint32_t _base, bool _add,
int32_t _shiftAmt, uint32_t _shiftType, uint32_t _index)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template LoadRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t _dest, uint32_t _base, bool _add,
int32_t _shiftAmt, uint32_t _shiftType, uint32_t _index)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template LoadImmConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t _dest, uint32_t _base, bool _add, int32_t _imm)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
(IntRegIndex)_dest, (IntRegIndex)_base, _add, _imm)
}};
def template StoreImmDEx64Constructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _result, IntRegIndex _dest, IntRegIndex _dest2,
IntRegIndex _base, int64_t _imm)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template MrsConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _dest)
{
}};
def template MrsBankedRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
uint8_t _sysM,
bool _r)
}};
def template MsrBankedRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _op1,
uint8_t _sysM,
bool _r)
}};
def template MsrRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _op1,
uint8_t mask)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _op1, mask)
}};
def template MsrImmConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
uint32_t imm,
uint8_t mask)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, imm, mask)
}};
def template MrrcOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex op1,
IntRegIndex dest,
IntRegIndex dest2,
}};
def template McrrOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex op1,
IntRegIndex op2,
IntRegIndex dest,
}};
def template ImmOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst, uint64_t _imm)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst, uint64_t _imm)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _imm)
{
%(constructor)s;
}};
def template RegImmOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest, uint64_t _imm)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _dest, _imm)
{
}};
def template RegRegOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest, IntRegIndex _op1)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _dest, _op1)
{
}};
def template RegRegRegImmOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
}};
def template RegRegRegRegOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
}};
def template RegRegRegOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2)
}};
def template RegRegImmOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
uint64_t _imm)
}};
def template RegImmImmOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
uint64_t _imm1,
uint64_t _imm2)
}};
def template RegRegImmImmOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
uint64_t _imm1,
}};
def template RegImmRegOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
uint64_t _imm,
IntRegIndex _op1)
}};
def template RegImmRegShiftOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
uint64_t _imm,
IntRegIndex _op1,
}};
def template RegRegImmImmOp64Constructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
uint64_t _imm1,
}};
def template RegRegRegImmOp64Constructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
}};
def template Mult3Constructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _reg0,
IntRegIndex _reg1,
IntRegIndex _reg2)
}};
def template Mult4Constructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _reg0,
IntRegIndex _reg1,
IntRegIndex _reg2,
}};
def template DataImmConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
uint32_t _imm,
}};
def template DataRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
}};
def template DataRegRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
}};
def template FpRegRegOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest, IntRegIndex _op1,
VfpMicroMode mode)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template FpRegImmOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest, uint64_t _imm, VfpMicroMode mode)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
_dest, _imm, mode)
}};
def template FpRegRegImmOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
uint64_t _imm,
}};
def template FpRegRegRegOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
// Authors: Thomas Grocutt
def template AA64FpRegRegOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest, IntRegIndex _op1,
VfpMicroMode mode)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
}};
def template AA64FpRegImmOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest, uint64_t _imm, VfpMicroMode mode)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s,
_dest, _imm, mode)
}};
def template AA64FpRegRegImmOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
uint64_t _imm,
}};
def template AA64FpRegRegRegOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
}};
def template AA64FpRegRegRegRegOpConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst,
+ %(class_name)s::%(class_name)s(ExtMachInst machInst,
IntRegIndex _dest,
IntRegIndex _op1,
IntRegIndex _op2,
// Basic instruction class constructor template.
def template BasicConstructor {{
- inline %(class_name)s::%(class_name)s(MachInst machInst) : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
+ %(class_name)s::%(class_name)s(MachInst machInst) : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
{
%(constructor)s;
}
}};
def template LoadStoreConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
{
%(constructor)s;
// Basic instruction class constructor template.
def template BasicConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst) : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst) : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
{
%(constructor)s;
}
// Instruction class constructor template when Rc is set.
def template IntRcConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst) : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst) : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
{
%(constructor)s;
rcSet = true;
// Instruction class constructor template when OE is set.
def template IntOeConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst) : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst) : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
{
%(constructor)s;
oeSet = true;
// Instruction class constructor template when both Rc and OE are set.
def template IntRcOeConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst) : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst) : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
{
%(constructor)s;
rcSet = true;
def template LoadStoreConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
{
%(constructor)s;
// Basic instruction class constructor template.
def template BasicConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
{
%(constructor)s;
// Basic instruction class constructor template.
def template BasicConstructorWithMnemonic {{
- inline %(class_name)s::%(class_name)s(const char * mnemonic,
+ %(class_name)s::%(class_name)s(const char * mnemonic,
ExtMachInst machInst)
: %(base_class)s(mnemonic, machInst, %(op_class)s)
{
// Basic instruction class constructor template.
def template BlockMemConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst)
: %(base_class)s("%(mnemonic)s", machInst)
{
%(constructor)s;
}};
def template BlockMemMicroConstructor {{
- inline %(class_name)s::
+ %(class_name)s::
%(class_name)s_%(micro_pc)s::
%(class_name)s_%(micro_pc)s(ExtMachInst machInst) :
%(base_class)sMicro("%(mnemonic)s[%(micro_pc)s]",
}};
def template ControlRegConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst)
: %(base_class)s("%(mnemonic)s", machInst,
%(op_class)s, "%(reg_name)s")
{
// Basic instruction class constructor template.
def template BasicConstructor {{
- inline %(class_name)s::%(class_name)s(ExtMachInst machInst)
+ %(class_name)s::%(class_name)s(ExtMachInst machInst)
: %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
{
%(constructor)s;
// Basic instruction class constructor template.
def template MacroConstructor {{
- inline X86Macroop::%(class_name)s::%(class_name)s(
+ X86Macroop::%(class_name)s::%(class_name)s(
ExtMachInst machInst, EmulEnv _env)
: %(base_class)s("%(mnemonic)s", machInst, %(num_microops)s, _env)
{
}};
def template MicroFpOpConstructor {{
- inline %(class_name)s::%(class_name)s(
+ %(class_name)s::%(class_name)s(
ExtMachInst machInst, const char * instMnem, uint64_t setFlags,
InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest,
uint8_t _dataSize, int8_t _spm) :
}};
def template MicroLdStOpConstructor {{
- inline %(class_name)s::%(class_name)s(
+ %(class_name)s::%(class_name)s(
ExtMachInst machInst, const char * instMnem, uint64_t setFlags,
uint8_t _scale, InstRegIndex _index, InstRegIndex _base,
uint64_t _disp, InstRegIndex _segment,
}};
def template MicroLimmOpConstructor {{
- inline %(class_name)s::%(class_name)s(
+ %(class_name)s::%(class_name)s(
ExtMachInst machInst, const char * instMnem, uint64_t setFlags,
InstRegIndex _dest, uint64_t _imm, uint8_t _dataSize) :
%(base_class)s(machInst, "%(mnemonic)s", instMnem,
}};
def template MediaOpRegConstructor {{
- inline %(class_name)s::%(class_name)s(
+ %(class_name)s::%(class_name)s(
ExtMachInst machInst, const char * instMnem, uint64_t setFlags,
InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest,
uint8_t _srcSize, uint8_t _destSize, uint16_t _ext) :
}};
def template MediaOpImmConstructor {{
- inline %(class_name)s::%(class_name)s(
+ %(class_name)s::%(class_name)s(
ExtMachInst machInst, const char * instMnem, uint64_t setFlags,
InstRegIndex _src1, uint16_t _imm8, InstRegIndex _dest,
uint8_t _srcSize, uint8_t _destSize, uint16_t _ext) :
}};
def template MicroRegOpConstructor {{
- inline %(class_name)s::%(class_name)s(
+ %(class_name)s::%(class_name)s(
ExtMachInst machInst, const char * instMnem, uint64_t setFlags,
InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest,
uint8_t _dataSize, uint16_t _ext) :
}};
def template MicroRegOpImmConstructor {{
- inline %(class_name)s::%(class_name)s(
+ %(class_name)s::%(class_name)s(
ExtMachInst machInst, const char * instMnem, uint64_t setFlags,
InstRegIndex _src1, uint8_t _imm8, InstRegIndex _dest,
uint8_t _dataSize, uint16_t _ext) :
}};
output decoder {{
- inline SeqOpBase::SeqOpBase(
+ SeqOpBase::SeqOpBase(
ExtMachInst machInst, const char * mnemonic, const char * instMnem,
uint64_t setFlags, uint16_t _target, uint8_t _cc) :
X86MicroopBase(machInst, mnemonic, instMnem, setFlags, No_OpClass),
}};
def template SeqOpConstructor {{
- inline %(class_name)s::%(class_name)s(
+ %(class_name)s::%(class_name)s(
ExtMachInst machInst, const char * instMnem,
uint64_t setFlags, uint16_t _target, uint8_t _cc) :
%(base_class)s(machInst, "%(mnemonic)s", instMnem,
}};
output decoder {{
- inline MicroFaultBase::MicroFaultBase(
+ MicroFaultBase::MicroFaultBase(
ExtMachInst machInst, const char * instMnem,
uint64_t setFlags, Fault _fault, uint8_t _cc) :
X86MicroopBase(machInst, "fault", instMnem, setFlags, No_OpClass),
}};
def template MicroFaultConstructor {{
- inline %(class_name)s::%(class_name)s(
+ %(class_name)s::%(class_name)s(
ExtMachInst machInst, const char * instMnem, uint64_t setFlags,
Fault _fault, uint8_t _cc) :
%(base_class)s(machInst, instMnem, setFlags, _fault, _cc)
}};
def template MicroFenceOpConstructor {{
- inline %(class_name)s::%(class_name)s(
+ %(class_name)s::%(class_name)s(
ExtMachInst machInst, const char * instMnem, uint64_t setFlags) :
%(base_class)s(machInst, "%(mnemonic)s", instMnem,
setFlags, %(op_class)s)