- { "addysp", REG_Y, REG_NONE },
- { "booleq", REG_NONE, REG_AX },
- { "boolge", REG_NONE, REG_AX },
- { "boolgt", REG_NONE, REG_AX },
- { "boolle", REG_NONE, REG_AX },
- { "boollt", REG_NONE, REG_AX },
- { "boolne", REG_NONE, REG_AX },
- { "booluge", REG_NONE, REG_AX },
- { "boolugt", REG_NONE, REG_AX },
- { "boolule", REG_NONE, REG_AX },
- { "boolult", REG_NONE, REG_AX },
- { "decax1", REG_AX, REG_AX },
- { "decax2", REG_AX, REG_AX },
- { "decax3", REG_AX, REG_AX },
- { "decax4", REG_AX, REG_AX },
- { "decax5", REG_AX, REG_AX },
- { "decax6", REG_AX, REG_AX },
- { "decax7", REG_AX, REG_AX },
- { "decax8", REG_AX, REG_AX },
- { "decaxy", REG_AXY, REG_AX },
- { "decsp2", REG_NONE, REG_A },
- { "decsp3", REG_NONE, REG_A },
- { "decsp4", REG_NONE, REG_A },
- { "decsp5", REG_NONE, REG_A },
- { "decsp6", REG_NONE, REG_A },
- { "decsp7", REG_NONE, REG_A },
- { "decsp8", REG_NONE, REG_A },
- { "incsp1", REG_NONE, REG_NONE },
- { "incsp2", REG_NONE, REG_Y },
- { "incsp3", REG_NONE, REG_Y },
- { "incsp4", REG_NONE, REG_Y },
- { "incsp5", REG_NONE, REG_Y },
- { "incsp6", REG_NONE, REG_Y },
- { "incsp7", REG_NONE, REG_Y },
- { "incsp8", REG_NONE, REG_Y },
- { "ldax0sp", REG_Y, REG_AX },
- { "ldaxysp", REG_Y, REG_AX },
- { "pusha", REG_A, REG_Y },
- { "pusha0", REG_A, REG_XY },
- { "pushax", REG_AX, REG_Y },
- { "pushw0sp", REG_NONE, REG_AXY },
- { "pushwysp", REG_Y, REG_AXY },
- { "tosicmp", REG_AX, REG_AXY },
+ { "addeq0sp", REG_AX, REG_AXY },
+ { "addeqysp", REG_AXY, REG_AXY },
+ { "addysp", REG_Y, REG_NONE },
+ { "aslax1", REG_AX, REG_AX | REG_TMP1 },
+ { "aslax2", REG_AX, REG_AX | REG_TMP1 },
+ { "aslax3", REG_AX, REG_AX | REG_TMP1 },
+ { "aslax4", REG_AX, REG_AX | REG_TMP1 },
+ { "bnega", REG_A, REG_AX },
+ { "bnegax", REG_AX, REG_AX },
+ { "bnegeax", REG_EAX, REG_EAX },
+ { "booleq", REG_NONE, REG_AX },
+ { "boolge", REG_NONE, REG_AX },
+ { "boolgt", REG_NONE, REG_AX },
+ { "boolle", REG_NONE, REG_AX },
+ { "boollt", REG_NONE, REG_AX },
+ { "boolne", REG_NONE, REG_AX },
+ { "booluge", REG_NONE, REG_AX },
+ { "boolugt", REG_NONE, REG_AX },
+ { "boolule", REG_NONE, REG_AX },
+ { "boolult", REG_NONE, REG_AX },
+ { "complax", REG_AX, REG_AX },
+ { "decax1", REG_AX, REG_AX },
+ { "decax2", REG_AX, REG_AX },
+ { "decax3", REG_AX, REG_AX },
+ { "decax4", REG_AX, REG_AX },
+ { "decax5", REG_AX, REG_AX },
+ { "decax6", REG_AX, REG_AX },
+ { "decax7", REG_AX, REG_AX },
+ { "decax8", REG_AX, REG_AX },
+ { "decaxy", REG_AXY, REG_AX | REG_TMP1 },
+ { "deceaxy", REG_EAXY, REG_EAX },
+ { "decsp1", REG_NONE, REG_Y },
+ { "decsp2", REG_NONE, REG_A },
+ { "decsp3", REG_NONE, REG_A },
+ { "decsp4", REG_NONE, REG_A },
+ { "decsp5", REG_NONE, REG_A },
+ { "decsp6", REG_NONE, REG_A },
+ { "decsp7", REG_NONE, REG_A },
+ { "decsp8", REG_NONE, REG_A },
+ { "incax1", REG_AX, REG_AX },
+ { "incax2", REG_AX, REG_AX },
+ { "incsp1", REG_NONE, REG_NONE },
+ { "incsp2", REG_NONE, REG_Y },
+ { "incsp3", REG_NONE, REG_Y },
+ { "incsp4", REG_NONE, REG_Y },
+ { "incsp5", REG_NONE, REG_Y },
+ { "incsp6", REG_NONE, REG_Y },
+ { "incsp7", REG_NONE, REG_Y },
+ { "incsp8", REG_NONE, REG_Y },
+ { "laddeq", REG_EAXY|REG_PTR1_LO, REG_EAXY | REG_PTR1_HI },
+ { "laddeq1", REG_Y | REG_PTR1_LO, REG_EAXY | REG_PTR1_HI },
+ { "laddeqa", REG_AY | REG_PTR1_LO, REG_EAXY | REG_PTR1_HI },
+ { "laddeq0sp", REG_EAX, REG_EAXY },
+ { "laddeqysp", REG_EAXY, REG_EAXY },
+ { "ldaidx", REG_AXY, REG_AX | REG_PTR1 },
+ { "ldauidx", REG_AXY, REG_AX | REG_PTR1 },
+ { "ldax0sp", REG_NONE, REG_AXY },
+ { "ldaxi", REG_AX, REG_AXY | REG_PTR1 },
+ { "ldaxidx", REG_AXY, REG_AXY | REG_PTR1 },
+ { "ldaxysp", REG_Y, REG_AXY },
+ { "ldeax0sp", REG_NONE, REG_EAXY },
+ { "ldeaxi", REG_AX, REG_EAXY | REG_PTR1 },
+ { "ldeaxidx", REG_AXY, REG_EAXY | REG_PTR1 },
+ { "ldeaxysp", REG_Y, REG_EAXY },
+ { "leaasp", REG_A, REG_AX },
+ { "lsubeq", REG_EAXY|REG_PTR1_LO, REG_EAXY | REG_PTR1_HI },
+ { "lsubeq0sp", REG_EAX, REG_EAXY },
+ { "lsubeq1", REG_Y | REG_PTR1_LO, REG_EAXY | REG_PTR1_HI },
+ { "lsubeqa", REG_AY | REG_PTR1_LO, REG_EAXY | REG_PTR1_HI },
+ { "lsubeqysp", REG_EAXY, REG_EAXY },
+ { "lsubeq0sp", REG_EAX, REG_EAXY },
+ { "negax", REG_AX, REG_AX },
+ { "push0", REG_NONE, REG_AXY },
+ { "push1", REG_NONE, REG_AXY },
+ { "push2", REG_NONE, REG_AXY },
+ { "push3", REG_NONE, REG_AXY },
+ { "push4", REG_NONE, REG_AXY },
+ { "push5", REG_NONE, REG_AXY },
+ { "push6", REG_NONE, REG_AXY },
+ { "push7", REG_NONE, REG_AXY },
+ { "pusha", REG_A, REG_Y },
+ { "pusha0", REG_A, REG_XY },
+ { "pusha0sp", REG_NONE, REG_AY },
+ { "pushax", REG_AX, REG_Y },
+ { "pushaysp", REG_Y, REG_AY },
+ { "pushc0", REG_NONE, REG_A | REG_Y },
+ { "pushc1", REG_NONE, REG_A | REG_Y },
+ { "pushc2", REG_NONE, REG_A | REG_Y },
+ { "pusheax", REG_EAX, REG_Y },
+ { "pushw", REG_AX, REG_AXY | REG_PTR1 },
+ { "pushw0sp", REG_NONE, REG_AXY },
+ { "pushwidx", REG_AXY, REG_AXY | REG_PTR1 },
+ { "pushwysp", REG_Y, REG_AXY },
+ { "regswap", REG_AXY, REG_AXY | REG_TMP1 },
+ { "regswap1", REG_XY, REG_A },
+ { "regswap2", REG_XY, REG_A | REG_Y },
+ { "shlax1", REG_AX, REG_AX | REG_TMP1 },
+ { "shlax2", REG_AX, REG_AX | REG_TMP1 },
+ { "shlax3", REG_AX, REG_AX | REG_TMP1 },
+ { "shlax4", REG_AX, REG_AX | REG_TMP1 },
+ { "shrax1", REG_AX, REG_AX | REG_TMP1 },
+ { "shrax2", REG_AX, REG_AX | REG_TMP1 },
+ { "shrax3", REG_AX, REG_AX | REG_TMP1 },
+ { "shrax4", REG_AX, REG_AX | REG_TMP1 },
+ { "shreax1", REG_EAX, REG_AX | REG_TMP1 },
+ { "shreax2", REG_EAX, REG_AX | REG_TMP1 },
+ { "shreax3", REG_EAX, REG_AX | REG_TMP1 },
+ { "shreax4", REG_EAX, REG_AX | REG_TMP1 },
+ { "staspidx", REG_A | REG_Y, REG_Y | REG_TMP1 | REG_PTR1 },
+ { "stax0sp", REG_AX, REG_Y },
+ { "staxysp", REG_AXY, REG_Y },
+ { "steax0sp", REG_EAX, REG_Y },
+ { "steaxysp", REG_EAXY, REG_Y },
+ { "subeq0sp", REG_AX, REG_AXY },
+ { "subeqysp", REG_AXY, REG_AXY },
+ { "tosadda0", REG_A, REG_AXY },
+ { "tosaddax", REG_AX, REG_AXY },
+ { "tosanda0", REG_A, REG_AXY },
+ { "tosandax", REG_AX, REG_AXY },
+ { "tosdiva0", REG_AY, REG_ALL },
+ { "tosdivax", REG_AXY, REG_ALL },
+ { "tosdiveax", REG_EAXY, REG_ALL },
+ { "toseqeax", REG_EAX, REG_AXY | REG_PTR1 },
+ { "tosgeeax", REG_EAX, REG_AXY | REG_PTR1 },
+ { "tosgteax", REG_EAX, REG_AXY | REG_PTR1 },
+ { "tosicmp", REG_AX, REG_AXY | REG_SREG },
+ { "toslcmp", REG_EAX, REG_A | REG_Y | REG_PTR1 },
+ { "tosleeax", REG_EAX, REG_AXY | REG_PTR1 },
+ { "toslteax", REG_EAX, REG_AXY | REG_PTR1 },
+ { "tosmula0", REG_AX, REG_ALL },
+ { "tosmulax", REG_AX, REG_ALL },
+ { "tosmuleax", REG_EAX, REG_ALL },
+ { "tosneeax", REG_EAX, REG_AXY | REG_PTR1 },
+ { "tosshreax", REG_EAX, REG_EAXY | REG_PTR1 | REG_PTR2 },
+ { "tossuba0", REG_A, REG_AXY },
+ { "tossubax", REG_AX, REG_AXY },
+ { "tossubeax", REG_EAX, REG_EAXY },
+ { "tosugeeax", REG_EAX, REG_AXY | REG_PTR1 },
+ { "tosugteax", REG_EAX, REG_AXY | REG_PTR1 },
+ { "tosuleeax", REG_EAX, REG_AXY | REG_PTR1 },
+ { "tosulteax", REG_EAX, REG_AXY | REG_PTR1 },
+ { "tosumula0", REG_AX, REG_ALL },
+ { "tosumulax", REG_AX, REG_ALL },
+ { "tosumuleax", REG_EAX, REG_ALL },
+ { "tsteax", REG_EAX, REG_Y },
+ { "utsteax", REG_EAX, REG_Y },