diff --git a/source/eaxhla.l b/source/eaxhla.l index 41ccbd1..12b0091 100644 --- a/source/eaxhla.l +++ b/source/eaxhla.l @@ -91,10 +91,10 @@ rax { return RAX; } rcx { return RCX; } rdx { return RDX; } rbx { return RBX; } +rsp { return RSP; } +rbp { return RBP; } rsi { return RSI; } rdi { return RDI; } -rbp { return RBP; } -rsp { return RSP; } rg8 { return RG8; } rg9 { return RG9; } rg10 { return RG10; } @@ -107,10 +107,10 @@ eax { return EAX; } ecx { return ECX; } edx { return EDX; } ebx { return EBX; } +esp { return ESP; } +ebp { return EBP; } esi { return ESI; } edi { return EDI; } -ebp { return EBP; } -esp { return ESP; } rg8d { return RG8D; } rg9d { return RG9D; } rg10d { return RG10D; } @@ -123,10 +123,10 @@ ax { return AX; } cx { return CX; } dx { return DX; } bx { return BX; } +sp { return SP; } +bp { return BP; } si { return SI; } di { return DI; } -bp { return BP; } -sp { return SP; } r8w { return R8W; } r9w { return R9W; } r10w { return R10W; } @@ -139,10 +139,10 @@ al { return AL; } cl { return CL; } dl { return DL; } bl { return BL; } +spl { return SPL; } +bpl { return BPL; } sil { return SIL; } dil { return DIL; } -bpl { return BPL; } -spl { return SPL; } r8b { return R8B; } r9b { return R9B; } r10b { return R10B; } diff --git a/source/eaxhla.y b/source/eaxhla.y index 2463d7a..86144c0 100644 --- a/source/eaxhla.y +++ b/source/eaxhla.y @@ -76,10 +76,10 @@ %type<regval> register register64s register32s register16s register8s // #placeholder<register_token_list> BEGIN -%token RAX RCX RDX RBX RSI RDI RBP RSP RG8 RG9 RG10 RG11 RG12 RG13 RG14 RG15 -%token EAX ECX EDX EBX ESI EDI EBP ESP RG8D RG9D RG10D RG11D RG12D RG13D RG14D RG15D -%token AX CX DX BX SI DI BP SP R8W R9W R10W R11W R12W R13W R14W R15W -%token AL CL DL BL SIL DIL BPL SPL R8B R9B R10B R11B R12B R13B R14B R15B +%token RAX RCX RDX RBX RSP RBP RSI RDI RG8 RG9 RG10 RG11 RG12 RG13 RG14 RG15 +%token EAX ECX EDX EBX ESP EBP ESI EDI RG8D RG9D RG10D RG11D RG12D RG13D RG14D RG15D +%token AX CX DX BX SP BP SI DI R8W R9W R10W R11W R12W R13W R14W R15W +%token AL CL DL BL SPL BPL SIL DIL R8B R9B R10B R11B R12B R13B R14B R15B // #placeholder<register_token_list> END @@ -301,10 +301,10 @@ register64s: RAX { $$.number = R0; } | RCX { $$.number = R1; } | RDX { $$.number = R2; } | RBX { $$.number = R3; } - | RSI { $$.number = R4; } - | RDI { $$.number = R5; } - | RBP { $$.number = R6; } - | RSP { $$.number = R7; } + | RSP { $$.number = R4; } + | RBP { $$.number = R5; } + | RSI { $$.number = R6; } + | RDI { $$.number = R7; } | RG8 { $$.number = R8; } | RG9 { $$.number = R9; } | RG10 { $$.number = R10; } @@ -319,10 +319,10 @@ register32s: EAX { $$.number = R0; } | ECX { $$.number = R1; } | EDX { $$.number = R2; } | EBX { $$.number = R3; } - | ESI { $$.number = R4; } - | EDI { $$.number = R5; } - | EBP { $$.number = R6; } - | ESP { $$.number = R7; } + | ESP { $$.number = R4; } + | EBP { $$.number = R5; } + | ESI { $$.number = R6; } + | EDI { $$.number = R7; } | RG8D { $$.number = R8; } | RG9D { $$.number = R9; } | RG10D { $$.number = R10; } @@ -337,10 +337,10 @@ register16s: AX { $$.number = R0; } | CX { $$.number = R1; } | DX { $$.number = R2; } | BX { $$.number = R3; } - | SI { $$.number = R4; } - | DI { $$.number = R5; } - | BP { $$.number = R6; } - | SP { $$.number = R7; } + | SP { $$.number = R4; } + | BP { $$.number = R5; } + | SI { $$.number = R6; } + | DI { $$.number = R7; } | R8W { $$.number = R8; } | R9W { $$.number = R9; } | R10W { $$.number = R10; } @@ -355,10 +355,10 @@ register8s: AL { $$.number = R0; } | CL { $$.number = R1; } | DL { $$.number = R2; } | BL { $$.number = R3; } - | SIL { $$.number = R4; } - | DIL { $$.number = R5; } - | BPL { $$.number = R6; } - | SPL { $$.number = R7; } + | SPL { $$.number = R4; } + | BPL { $$.number = R5; } + | SIL { $$.number = R6; } + | DIL { $$.number = R7; } | R8B { $$.number = R8; } | R9B { $$.number = R9; } | R10B { $$.number = R10; } diff --git a/tool/generators/registers.tcl b/tool/generators/registers.tcl index e121831..b1a9f89 100644 --- a/tool/generators/registers.tcl +++ b/tool/generators/registers.tcl @@ -14,10 +14,10 @@ set register64s { rcx rdx rbx + rsp + rbp rsi rdi - rbp - rsp rg8 rg9 rg10 @@ -33,10 +33,10 @@ set register32s { ecx edx ebx + esp + ebp esi edi - ebp - esp rg8d rg9d rg10d @@ -52,10 +52,10 @@ set register16s { cx dx bx + sp + bp si di - bp - sp r8w r9w r10w @@ -71,10 +71,10 @@ set register8ls { cl dl bl + spl + bpl sil dil - bpl - spl r8b r9b r10b