/* Note for the shift functions: Shifts are done modulo 32, so all shift
* routines are marked to use only the A register. The remainder is ignored
* anyway.
- */
+ */
static const FuncInfo FuncInfoTable[] = {
{ "addeq0sp", REG_AX, REG_AXY },
{ "addeqysp", REG_AXY, REG_AXY },
{ "aslax2", REG_AX, REG_AX | REG_TMP1 },
{ "aslax3", REG_AX, REG_AX | REG_TMP1 },
{ "aslax4", REG_AX, REG_AX | REG_TMP1 },
+ { "asleax1", REG_EAX, REG_EAX | REG_TMP1 },
+ { "asleax2", REG_EAX, REG_EAX | REG_TMP1 },
+ { "asleax3", REG_EAX, REG_EAX | REG_TMP1 },
+ { "asleax4", REG_EAX, REG_EAX | REG_TMP1 },
{ "asrax1", REG_AX, REG_AX | REG_TMP1 },
{ "asrax2", REG_AX, REG_AX | REG_TMP1 },
{ "asrax3", REG_AX, REG_AX | REG_TMP1 },
{ "asrax4", REG_AX, REG_AX | REG_TMP1 },
+ { "asreax1", REG_EAX, REG_EAX | REG_TMP1 },
+ { "asreax2", REG_EAX, REG_EAX | REG_TMP1 },
+ { "asreax3", REG_EAX, REG_EAX | REG_TMP1 },
+ { "asreax4", REG_EAX, REG_EAX | REG_TMP1 },
{ "bnega", REG_A, REG_AX },
{ "bnegax", REG_AX, REG_AX },
{ "bnegeax", REG_EAX, REG_EAX },
{ "shlax2", REG_AX, REG_AX | REG_TMP1 },
{ "shlax3", REG_AX, REG_AX | REG_TMP1 },
{ "shlax4", REG_AX, REG_AX | REG_TMP1 },
+ { "shleax1", REG_EAX, REG_EAX | REG_TMP1 },
+ { "shleax2", REG_EAX, REG_EAX | REG_TMP1 },
+ { "shleax3", REG_EAX, REG_EAX | REG_TMP1 },
+ { "shleax4", REG_EAX, REG_EAX | 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 },
+ { "shreax1", REG_EAX, REG_EAX | REG_TMP1 },
+ { "shreax2", REG_EAX, REG_EAX | REG_TMP1 },
+ { "shreax3", REG_EAX, REG_EAX | REG_TMP1 },
+ { "shreax4", REG_EAX, REG_EAX | REG_TMP1 },
{ "staspidx", REG_A | REG_Y, REG_Y | REG_TMP1 | REG_PTR1 },
{ "stax0sp", REG_AX, REG_Y },
{ "staxspidx", REG_AXY, REG_TMP1 | REG_PTR1 },