Skip to content

Commit

Permalink
alias of eax, ecx, ... are defined in Xbyak::util
Browse files Browse the repository at this point in the history
  • Loading branch information
herumi committed Nov 17, 2012
1 parent dfd7ae4 commit 914de0e
Showing 1 changed file with 150 additions and 123 deletions.
273 changes: 150 additions & 123 deletions xbyak/xbyak.h
Expand Up @@ -854,6 +854,8 @@ class Label {
}
};

namespace inner {

template<int dummy = 0>
class CodeGeneratorT : public CodeArray {
public:
Expand Down Expand Up @@ -1601,133 +1603,158 @@ class CodeGeneratorT : public CodeArray {
#endif
};

} // inner

// static member instance to avoid *.cpp
template<int d> const Mmx CodeGeneratorT<d>::mm0(0);
template<int d> const Mmx CodeGeneratorT<d>::mm1(1);
template<int d> const Mmx CodeGeneratorT<d>::mm2(2);
template<int d> const Mmx CodeGeneratorT<d>::mm3(3);
template<int d> const Mmx CodeGeneratorT<d>::mm4(4);
template<int d> const Mmx CodeGeneratorT<d>::mm5(5);
template<int d> const Mmx CodeGeneratorT<d>::mm6(6);
template<int d> const Mmx CodeGeneratorT<d>::mm7(7);
template<int d> const Xmm CodeGeneratorT<d>::xmm0(0);
template<int d> const Xmm CodeGeneratorT<d>::xmm1(1);
template<int d> const Xmm CodeGeneratorT<d>::xmm2(2);
template<int d> const Xmm CodeGeneratorT<d>::xmm3(3);
template<int d> const Xmm CodeGeneratorT<d>::xmm4(4);
template<int d> const Xmm CodeGeneratorT<d>::xmm5(5);
template<int d> const Xmm CodeGeneratorT<d>::xmm6(6);
template<int d> const Xmm CodeGeneratorT<d>::xmm7(7);
template<int d> const Ymm CodeGeneratorT<d>::ymm0(0);
template<int d> const Ymm CodeGeneratorT<d>::ymm1(1);
template<int d> const Ymm CodeGeneratorT<d>::ymm2(2);
template<int d> const Ymm CodeGeneratorT<d>::ymm3(3);
template<int d> const Ymm CodeGeneratorT<d>::ymm4(4);
template<int d> const Ymm CodeGeneratorT<d>::ymm5(5);
template<int d> const Ymm CodeGeneratorT<d>::ymm6(6);
template<int d> const Ymm CodeGeneratorT<d>::ymm7(7);
template<int d> const Reg32 CodeGeneratorT<d>::eax(Operand::EAX);
template<int d> const Reg32 CodeGeneratorT<d>::ecx(Operand::ECX);
template<int d> const Reg32 CodeGeneratorT<d>::edx(Operand::EDX);
template<int d> const Reg32 CodeGeneratorT<d>::ebx(Operand::EBX);
template<int d> const Reg32 CodeGeneratorT<d>::esp(Operand::ESP);
template<int d> const Reg32 CodeGeneratorT<d>::ebp(Operand::EBP);
template<int d> const Reg32 CodeGeneratorT<d>::esi(Operand::ESI);
template<int d> const Reg32 CodeGeneratorT<d>::edi(Operand::EDI);
template<int d> const Reg16 CodeGeneratorT<d>::ax(Operand::EAX);
template<int d> const Reg16 CodeGeneratorT<d>::cx(Operand::ECX);
template<int d> const Reg16 CodeGeneratorT<d>::dx(Operand::EDX);
template<int d> const Reg16 CodeGeneratorT<d>::bx(Operand::EBX);
template<int d> const Reg16 CodeGeneratorT<d>::sp(Operand::ESP);
template<int d> const Reg16 CodeGeneratorT<d>::bp(Operand::EBP);
template<int d> const Reg16 CodeGeneratorT<d>::si(Operand::ESI);
template<int d> const Reg16 CodeGeneratorT<d>::di(Operand::EDI);
template<int d> const Reg8 CodeGeneratorT<d>::al(Operand::AL);
template<int d> const Reg8 CodeGeneratorT<d>::cl(Operand::CL);
template<int d> const Reg8 CodeGeneratorT<d>::dl(Operand::DL);
template<int d> const Reg8 CodeGeneratorT<d>::bl(Operand::BL);
template<int d> const Reg8 CodeGeneratorT<d>::ah(Operand::AH);
template<int d> const Reg8 CodeGeneratorT<d>::ch(Operand::CH);
template<int d> const Reg8 CodeGeneratorT<d>::dh(Operand::DH);
template<int d> const Reg8 CodeGeneratorT<d>::bh(Operand::BH);
template<int d> const AddressFrame CodeGeneratorT<d>::ptr(0);
template<int d> const AddressFrame CodeGeneratorT<d>::byte(8);
template<int d> const AddressFrame CodeGeneratorT<d>::word(16);
template<int d> const AddressFrame CodeGeneratorT<d>::dword(32);
template<int d> const AddressFrame CodeGeneratorT<d>::qword(64);
template<int d> const Fpu CodeGeneratorT<d>::st0(0);
template<int d> const Fpu CodeGeneratorT<d>::st1(1);
template<int d> const Fpu CodeGeneratorT<d>::st2(2);
template<int d> const Fpu CodeGeneratorT<d>::st3(3);
template<int d> const Fpu CodeGeneratorT<d>::st4(4);
template<int d> const Fpu CodeGeneratorT<d>::st5(5);
template<int d> const Fpu CodeGeneratorT<d>::st6(6);
template<int d> const Fpu CodeGeneratorT<d>::st7(7);
template<int d> const Mmx inner::CodeGeneratorT<d>::mm0(0);
template<int d> const Mmx inner::CodeGeneratorT<d>::mm1(1);
template<int d> const Mmx inner::CodeGeneratorT<d>::mm2(2);
template<int d> const Mmx inner::CodeGeneratorT<d>::mm3(3);
template<int d> const Mmx inner::CodeGeneratorT<d>::mm4(4);
template<int d> const Mmx inner::CodeGeneratorT<d>::mm5(5);
template<int d> const Mmx inner::CodeGeneratorT<d>::mm6(6);
template<int d> const Mmx inner::CodeGeneratorT<d>::mm7(7);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm0(0);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm1(1);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm2(2);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm3(3);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm4(4);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm5(5);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm6(6);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm7(7);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm0(0);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm1(1);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm2(2);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm3(3);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm4(4);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm5(5);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm6(6);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm7(7);
template<int d> const Reg32 inner::CodeGeneratorT<d>::eax(Operand::EAX);
template<int d> const Reg32 inner::CodeGeneratorT<d>::ecx(Operand::ECX);
template<int d> const Reg32 inner::CodeGeneratorT<d>::edx(Operand::EDX);
template<int d> const Reg32 inner::CodeGeneratorT<d>::ebx(Operand::EBX);
template<int d> const Reg32 inner::CodeGeneratorT<d>::esp(Operand::ESP);
template<int d> const Reg32 inner::CodeGeneratorT<d>::ebp(Operand::EBP);
template<int d> const Reg32 inner::CodeGeneratorT<d>::esi(Operand::ESI);
template<int d> const Reg32 inner::CodeGeneratorT<d>::edi(Operand::EDI);
template<int d> const Reg16 inner::CodeGeneratorT<d>::ax(Operand::EAX);
template<int d> const Reg16 inner::CodeGeneratorT<d>::cx(Operand::ECX);
template<int d> const Reg16 inner::CodeGeneratorT<d>::dx(Operand::EDX);
template<int d> const Reg16 inner::CodeGeneratorT<d>::bx(Operand::EBX);
template<int d> const Reg16 inner::CodeGeneratorT<d>::sp(Operand::ESP);
template<int d> const Reg16 inner::CodeGeneratorT<d>::bp(Operand::EBP);
template<int d> const Reg16 inner::CodeGeneratorT<d>::si(Operand::ESI);
template<int d> const Reg16 inner::CodeGeneratorT<d>::di(Operand::EDI);
template<int d> const Reg8 inner::CodeGeneratorT<d>::al(Operand::AL);
template<int d> const Reg8 inner::CodeGeneratorT<d>::cl(Operand::CL);
template<int d> const Reg8 inner::CodeGeneratorT<d>::dl(Operand::DL);
template<int d> const Reg8 inner::CodeGeneratorT<d>::bl(Operand::BL);
template<int d> const Reg8 inner::CodeGeneratorT<d>::ah(Operand::AH);
template<int d> const Reg8 inner::CodeGeneratorT<d>::ch(Operand::CH);
template<int d> const Reg8 inner::CodeGeneratorT<d>::dh(Operand::DH);
template<int d> const Reg8 inner::CodeGeneratorT<d>::bh(Operand::BH);
template<int d> const AddressFrame inner::CodeGeneratorT<d>::ptr(0);
template<int d> const AddressFrame inner::CodeGeneratorT<d>::byte(8);
template<int d> const AddressFrame inner::CodeGeneratorT<d>::word(16);
template<int d> const AddressFrame inner::CodeGeneratorT<d>::dword(32);
template<int d> const AddressFrame inner::CodeGeneratorT<d>::qword(64);
template<int d> const Fpu inner::CodeGeneratorT<d>::st0(0);
template<int d> const Fpu inner::CodeGeneratorT<d>::st1(1);
template<int d> const Fpu inner::CodeGeneratorT<d>::st2(2);
template<int d> const Fpu inner::CodeGeneratorT<d>::st3(3);
template<int d> const Fpu inner::CodeGeneratorT<d>::st4(4);
template<int d> const Fpu inner::CodeGeneratorT<d>::st5(5);
template<int d> const Fpu inner::CodeGeneratorT<d>::st6(6);
template<int d> const Fpu inner::CodeGeneratorT<d>::st7(7);
#ifdef XBYAK64
template<int d> const Reg64 inner::CodeGeneratorT<d>::rax(Operand::RAX);
template<int d> const Reg64 inner::CodeGeneratorT<d>::rcx(Operand::RCX);
template<int d> const Reg64 inner::CodeGeneratorT<d>::rdx(Operand::RDX);
template<int d> const Reg64 inner::CodeGeneratorT<d>::rbx(Operand::RBX);
template<int d> const Reg64 inner::CodeGeneratorT<d>::rsp(Operand::RSP);
template<int d> const Reg64 inner::CodeGeneratorT<d>::rbp(Operand::RBP);
template<int d> const Reg64 inner::CodeGeneratorT<d>::rsi(Operand::RSI);
template<int d> const Reg64 inner::CodeGeneratorT<d>::rdi(Operand::RDI);
template<int d> const Reg64 inner::CodeGeneratorT<d>::r8(Operand::R8);
template<int d> const Reg64 inner::CodeGeneratorT<d>::r9(Operand::R9);
template<int d> const Reg64 inner::CodeGeneratorT<d>::r10(Operand::R10);
template<int d> const Reg64 inner::CodeGeneratorT<d>::r11(Operand::R11);
template<int d> const Reg64 inner::CodeGeneratorT<d>::r12(Operand::R12);
template<int d> const Reg64 inner::CodeGeneratorT<d>::r13(Operand::R13);
template<int d> const Reg64 inner::CodeGeneratorT<d>::r14(Operand::R14);
template<int d> const Reg64 inner::CodeGeneratorT<d>::r15(Operand::R15);
template<int d> const Reg32 inner::CodeGeneratorT<d>::r8d(Operand::R8D);
template<int d> const Reg32 inner::CodeGeneratorT<d>::r9d(Operand::R9D);
template<int d> const Reg32 inner::CodeGeneratorT<d>::r10d(Operand::R10D);
template<int d> const Reg32 inner::CodeGeneratorT<d>::r11d(Operand::R11D);
template<int d> const Reg32 inner::CodeGeneratorT<d>::r12d(Operand::R12D);
template<int d> const Reg32 inner::CodeGeneratorT<d>::r13d(Operand::R13D);
template<int d> const Reg32 inner::CodeGeneratorT<d>::r14d(Operand::R14D);
template<int d> const Reg32 inner::CodeGeneratorT<d>::r15d(Operand::R15D);
template<int d> const Reg16 inner::CodeGeneratorT<d>::r8w(Operand::R8W);
template<int d> const Reg16 inner::CodeGeneratorT<d>::r9w(Operand::R9W);
template<int d> const Reg16 inner::CodeGeneratorT<d>::r10w(Operand::R10W);
template<int d> const Reg16 inner::CodeGeneratorT<d>::r11w(Operand::R11W);
template<int d> const Reg16 inner::CodeGeneratorT<d>::r12w(Operand::R12W);
template<int d> const Reg16 inner::CodeGeneratorT<d>::r13w(Operand::R13W);
template<int d> const Reg16 inner::CodeGeneratorT<d>::r14w(Operand::R14W);
template<int d> const Reg16 inner::CodeGeneratorT<d>::r15w(Operand::R15W);
template<int d> const Reg8 inner::CodeGeneratorT<d>::r8b(Operand::R8B);
template<int d> const Reg8 inner::CodeGeneratorT<d>::r9b(Operand::R9B);
template<int d> const Reg8 inner::CodeGeneratorT<d>::r10b(Operand::R10B);
template<int d> const Reg8 inner::CodeGeneratorT<d>::r11b(Operand::R11B);
template<int d> const Reg8 inner::CodeGeneratorT<d>::r12b(Operand::R12B);
template<int d> const Reg8 inner::CodeGeneratorT<d>::r13b(Operand::R13B);
template<int d> const Reg8 inner::CodeGeneratorT<d>::r14b(Operand::R14B);
template<int d> const Reg8 inner::CodeGeneratorT<d>::r15b(Operand::R15B);
template<int d> const Reg8 inner::CodeGeneratorT<d>::spl(Operand::SPL, 1);
template<int d> const Reg8 inner::CodeGeneratorT<d>::bpl(Operand::BPL, 1);
template<int d> const Reg8 inner::CodeGeneratorT<d>::sil(Operand::SIL, 1);
template<int d> const Reg8 inner::CodeGeneratorT<d>::dil(Operand::DIL, 1);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm8(8);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm9(9);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm10(10);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm11(11);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm12(12);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm13(13);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm14(14);
template<int d> const Xmm inner::CodeGeneratorT<d>::xmm15(15);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm8(8);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm9(9);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm10(10);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm11(11);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm12(12);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm13(13);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm14(14);
template<int d> const Ymm inner::CodeGeneratorT<d>::ymm15(15);
template<int d> const RegRip inner::CodeGeneratorT<d>::rip;
#endif

typedef inner::CodeGeneratorT<0> CodeGenerator;

namespace util {

static const Mmx &mm0(CodeGenerator::mm0), &mm1(CodeGenerator::mm1), &mm2(CodeGenerator::mm2), &mm3(CodeGenerator::mm3), &mm4(CodeGenerator::mm4), &mm5(CodeGenerator::mm5), &mm6(CodeGenerator::mm6), &mm7(CodeGenerator::mm7);
static const Xmm &xmm0(CodeGenerator::xmm0), &xmm1(CodeGenerator::xmm1), &xmm2(CodeGenerator::xmm2), &xmm3(CodeGenerator::xmm3), &xmm4(CodeGenerator::xmm4), &xmm5(CodeGenerator::xmm5), &xmm6(CodeGenerator::xmm6), &xmm7(CodeGenerator::xmm7);
static const Ymm &ymm0(CodeGenerator::ymm0), &ymm1(CodeGenerator::ymm1), &ymm2(CodeGenerator::ymm2), &ymm3(CodeGenerator::ymm3), &ymm4(CodeGenerator::ymm4), &ymm5(CodeGenerator::ymm5), &ymm6(CodeGenerator::ymm6), &ymm7(CodeGenerator::ymm7);
static const Reg32 &eax(CodeGenerator::eax), &ecx(CodeGenerator::ecx), &edx(CodeGenerator::edx), &ebx(CodeGenerator::ebx), &esp(CodeGenerator::esp), &ebp(CodeGenerator::ebp), &esi(CodeGenerator::esi), &edi(CodeGenerator::edi);
static const Reg16 &ax(CodeGenerator::ax), &cx(CodeGenerator::cx), &dx(CodeGenerator::dx), &bx(CodeGenerator::bx), &sp(CodeGenerator::sp), &bp(CodeGenerator::bp), &si(CodeGenerator::si), &di(CodeGenerator::di);
static const Reg8 &al(CodeGenerator::al), &cl(CodeGenerator::cl), &dl(CodeGenerator::dl), &bl(CodeGenerator::bl), &ah(CodeGenerator::ah), &ch(CodeGenerator::ch), &dh(CodeGenerator::dh), &bh(CodeGenerator::bh);
static const AddressFrame &ptr(CodeGenerator::ptr), &byte(CodeGenerator::ptr), &word(CodeGenerator::word), &dword(CodeGenerator::dword), &qword(CodeGenerator::qword);
static const Fpu &st0(CodeGenerator::st0), &st1(CodeGenerator::st1), &st2(CodeGenerator::st2), &st3(CodeGenerator::st3), &st4(CodeGenerator::st4), &st5(CodeGenerator::st5), &st6(CodeGenerator::st6), &st7(CodeGenerator::st7);
#ifdef XBYAK64
template<int d> const Reg64 CodeGeneratorT<d>::rax(Operand::RAX);
template<int d> const Reg64 CodeGeneratorT<d>::rcx(Operand::RCX);
template<int d> const Reg64 CodeGeneratorT<d>::rdx(Operand::RDX);
template<int d> const Reg64 CodeGeneratorT<d>::rbx(Operand::RBX);
template<int d> const Reg64 CodeGeneratorT<d>::rsp(Operand::RSP);
template<int d> const Reg64 CodeGeneratorT<d>::rbp(Operand::RBP);
template<int d> const Reg64 CodeGeneratorT<d>::rsi(Operand::RSI);
template<int d> const Reg64 CodeGeneratorT<d>::rdi(Operand::RDI);
template<int d> const Reg64 CodeGeneratorT<d>::r8(Operand::R8);
template<int d> const Reg64 CodeGeneratorT<d>::r9(Operand::R9);
template<int d> const Reg64 CodeGeneratorT<d>::r10(Operand::R10);
template<int d> const Reg64 CodeGeneratorT<d>::r11(Operand::R11);
template<int d> const Reg64 CodeGeneratorT<d>::r12(Operand::R12);
template<int d> const Reg64 CodeGeneratorT<d>::r13(Operand::R13);
template<int d> const Reg64 CodeGeneratorT<d>::r14(Operand::R14);
template<int d> const Reg64 CodeGeneratorT<d>::r15(Operand::R15);
template<int d> const Reg32 CodeGeneratorT<d>::r8d(Operand::R8D);
template<int d> const Reg32 CodeGeneratorT<d>::r9d(Operand::R9D);
template<int d> const Reg32 CodeGeneratorT<d>::r10d(Operand::R10D);
template<int d> const Reg32 CodeGeneratorT<d>::r11d(Operand::R11D);
template<int d> const Reg32 CodeGeneratorT<d>::r12d(Operand::R12D);
template<int d> const Reg32 CodeGeneratorT<d>::r13d(Operand::R13D);
template<int d> const Reg32 CodeGeneratorT<d>::r14d(Operand::R14D);
template<int d> const Reg32 CodeGeneratorT<d>::r15d(Operand::R15D);
template<int d> const Reg16 CodeGeneratorT<d>::r8w(Operand::R8W);
template<int d> const Reg16 CodeGeneratorT<d>::r9w(Operand::R9W);
template<int d> const Reg16 CodeGeneratorT<d>::r10w(Operand::R10W);
template<int d> const Reg16 CodeGeneratorT<d>::r11w(Operand::R11W);
template<int d> const Reg16 CodeGeneratorT<d>::r12w(Operand::R12W);
template<int d> const Reg16 CodeGeneratorT<d>::r13w(Operand::R13W);
template<int d> const Reg16 CodeGeneratorT<d>::r14w(Operand::R14W);
template<int d> const Reg16 CodeGeneratorT<d>::r15w(Operand::R15W);
template<int d> const Reg8 CodeGeneratorT<d>::r8b(Operand::R8B);
template<int d> const Reg8 CodeGeneratorT<d>::r9b(Operand::R9B);
template<int d> const Reg8 CodeGeneratorT<d>::r10b(Operand::R10B);
template<int d> const Reg8 CodeGeneratorT<d>::r11b(Operand::R11B);
template<int d> const Reg8 CodeGeneratorT<d>::r12b(Operand::R12B);
template<int d> const Reg8 CodeGeneratorT<d>::r13b(Operand::R13B);
template<int d> const Reg8 CodeGeneratorT<d>::r14b(Operand::R14B);
template<int d> const Reg8 CodeGeneratorT<d>::r15b(Operand::R15B);
template<int d> const Reg8 CodeGeneratorT<d>::spl(Operand::SPL, 1);
template<int d> const Reg8 CodeGeneratorT<d>::bpl(Operand::BPL, 1);
template<int d> const Reg8 CodeGeneratorT<d>::sil(Operand::SIL, 1);
template<int d> const Reg8 CodeGeneratorT<d>::dil(Operand::DIL, 1);
template<int d> const Xmm CodeGeneratorT<d>::xmm8(8);
template<int d> const Xmm CodeGeneratorT<d>::xmm9(9);
template<int d> const Xmm CodeGeneratorT<d>::xmm10(10);
template<int d> const Xmm CodeGeneratorT<d>::xmm11(11);
template<int d> const Xmm CodeGeneratorT<d>::xmm12(12);
template<int d> const Xmm CodeGeneratorT<d>::xmm13(13);
template<int d> const Xmm CodeGeneratorT<d>::xmm14(14);
template<int d> const Xmm CodeGeneratorT<d>::xmm15(15);
template<int d> const Ymm CodeGeneratorT<d>::ymm8(8);
template<int d> const Ymm CodeGeneratorT<d>::ymm9(9);
template<int d> const Ymm CodeGeneratorT<d>::ymm10(10);
template<int d> const Ymm CodeGeneratorT<d>::ymm11(11);
template<int d> const Ymm CodeGeneratorT<d>::ymm12(12);
template<int d> const Ymm CodeGeneratorT<d>::ymm13(13);
template<int d> const Ymm CodeGeneratorT<d>::ymm14(14);
template<int d> const Ymm CodeGeneratorT<d>::ymm15(15);
template<int d> const RegRip CodeGeneratorT<d>::rip;
static const Reg64 &rax(CodeGenerator::rax), &rcx(CodeGenerator::rcx), &ldx(CodeGenerator::rdx), &rbx(CodeGenerator::rbx), &rsp(CodeGenerator::rsp), &rbp(CodeGenerator::rbp), &rsi(CodeGenerator::rsi), &rdi(CodeGenerator::rdi), &r8(CodeGenerator::r8) , &r9(CodeGenerator::r9), &r10(CodeGenerator::r10), &r11(CodeGenerator::r11), &r12(CodeGenerator::r12), &r13(CodeGenerator::r13), &r14(CodeGenerator::r14), &r15(CodeGenerator::r15);
static const Reg32 &r8d(CodeGenerator::r8d), &r9d(CodeGenerator::r9d), &r10d(CodeGenerator::r10d), &r11d(CodeGenerator::r11d), &r12d(CodeGenerator::r12d), &r13d(CodeGenerator::r13d), &r14d(CodeGenerator::r14d), &r15d(CodeGenerator::r15d);
static const Reg16 &r8w(CodeGenerator::r8w), &r9w(CodeGenerator::r9w), &r10w(CodeGenerator::r10w), &r11w(CodeGenerator::r11w), &r12w(CodeGenerator::r12w), &r13w(CodeGenerator::r13w), &r14w(CodeGenerator::r14w), &r15w(CodeGenerator::r15w);
static const Reg8 &r8b(CodeGenerator::r8b), &r9b(CodeGenerator::r9b), &r10b(CodeGenerator::r10b), &r11b(CodeGenerator::r11b), &r12b(CodeGenerator::r12b), &r13b(CodeGenerator::r13b), &r14b(CodeGenerator::r14b), &r15b(CodeGenerator::r15b);
static const Reg8 &spl(CodeGenerator::spl), &bpl(CodeGenerator::bpl), &sil(CodeGenerator::sil), &dil(CodeGenerator::dil);
static const Xmm &xmm8(CodeGenerator::xmm8), &xmm9(CodeGenerator::xmm9), &xmm10(CodeGenerator::xmm10), &xmm11(CodeGenerator::xmm11), &xmm12(CodeGenerator::xmm12), &xmm13(CodeGenerator::xmm13), &xmm14(CodeGenerator::xmm14), &xmm15(CodeGenerator::xmm15);
static const Ymm &ymm8(CodeGenerator::ymm8), &ymm9(CodeGenerator::ymm9), &ymm10(CodeGenerator::ymm10), &ymm11(CodeGenerator::ymm11), &ymm12(CodeGenerator::ymm12), &ymm13(CodeGenerator::ymm13), &ymm14(CodeGenerator::ymm14), &ymm15(CodeGenerator::ymm15);
static const RegRip& rip(CodeGenerator::rip);
#endif

typedef CodeGeneratorT<0> CodeGenerator;
} // util

#ifdef _MSC_VER
#pragma warning(pop)
Expand Down

0 comments on commit 914de0e

Please sign in to comment.