parseinstr: Simplify opcode naming scheme
This commit is contained in:
6
encode.c
6
encode.c
@@ -204,7 +204,8 @@ typedef enum {
|
||||
ENC_INVALID = 0,
|
||||
ENC_NP,
|
||||
ENC_M, ENC_M1, ENC_MI, ENC_MC, ENC_MR, ENC_RM, ENC_RMA, ENC_MRI, ENC_RMI, ENC_MRC,
|
||||
ENC_I, ENC_IA, ENC_O, ENC_OI, ENC_OA, ENC_AO, ENC_A, ENC_D, ENC_FD, ENC_TD,
|
||||
ENC_AM, ENC_MA,
|
||||
ENC_I, ENC_IA, ENC_O, ENC_OI, ENC_OA, ENC_A, ENC_D, ENC_FD, ENC_TD,
|
||||
ENC_RVM, ENC_RVMI, ENC_RVMR, ENC_RMV, ENC_VM, ENC_VMI, ENC_MVR,
|
||||
ENC_MAX
|
||||
} Encoding;
|
||||
@@ -232,12 +233,13 @@ const struct EncodingInfo encoding_infos[ENC_MAX] = {
|
||||
[ENC_MRI] = { .modrm = 0^3, .modreg = 1^3, .immctl = 4, .immidx = 2 },
|
||||
[ENC_RMI] = { .modrm = 1^3, .modreg = 0^3, .immctl = 4, .immidx = 2 },
|
||||
[ENC_MRC] = { .modrm = 0^3, .modreg = 1^3, .zregidx = 2^3, .zregval = 1 },
|
||||
[ENC_AM] = { .modrm = 1^3, .zregidx = 0^3, .zregval = 0 },
|
||||
[ENC_MA] = { .modrm = 0^3, .zregidx = 1^3, .zregval = 0 },
|
||||
[ENC_I] = { .immctl = 4, .immidx = 0 },
|
||||
[ENC_IA] = { .zregidx = 0^3, .zregval = 0, .immctl = 4, .immidx = 1 },
|
||||
[ENC_O] = { .modreg = 0^3 },
|
||||
[ENC_OI] = { .modreg = 0^3, .immctl = 4, .immidx = 1 },
|
||||
[ENC_OA] = { .modreg = 0^3, .zregidx = 1^3, .zregval = 0 },
|
||||
[ENC_AO] = { .modreg = 1^3, .zregidx = 0^3, .zregval = 0 },
|
||||
[ENC_A] = { .zregidx = 0^3, .zregval = 0 },
|
||||
[ENC_D] = { .immctl = 6, .immidx = 0 },
|
||||
[ENC_FD] = { .immctl = 2, .immidx = 1 },
|
||||
|
||||
Reference in New Issue
Block a user