1*16182Sralph static char *sccsid ="@(#)table.c 1.2 (Berkeley) 03/14/84"; 29705Slinton # include "mfile2" 39705Slinton 49705Slinton # define WPTR TPTRTO|TINT|TLONG|TFLOAT|TDOUBLE|TPOINT|TUNSIGNED|TULONG 59705Slinton # define AWD SNAME|SOREG|SCON|STARNM|STARREG 69705Slinton /* tbl */ 79705Slinton # define ANYSIGNED TPOINT|TINT|TLONG|TSHORT|TCHAR 89705Slinton # define ANYUSIGNED TUNSIGNED|TULONG|TUSHORT|TUCHAR 99705Slinton # define ANYFIXED ANYSIGNED|ANYUSIGNED 109705Slinton # define TWORD TINT|TUNSIGNED|TPOINT|TLONG|TULONG 119705Slinton # define NIAWD SNAME|SCON|STARNM 129705Slinton /* tbl */ 139705Slinton 149705Slinton struct optab table[] = { 159705Slinton 169705Slinton PCONV, INAREG|INTAREG, 179705Slinton SAREG|AWD, TCHAR|TSHORT, 189705Slinton SANY, TPOINT, 199705Slinton NAREG|NASL, RESC1, 209705Slinton " cvtZLl AL,A1\n", 219705Slinton 229705Slinton PCONV, INAREG|INTAREG, 239705Slinton SAREG|AWD, TUCHAR|TUSHORT, 249705Slinton SANY, TPOINT, 259705Slinton NAREG|NASL, RESC1, 269705Slinton " movzZLl AL,A1\n", 279705Slinton 289705Slinton /* the following entry is to fix a problem with 299705Slinton the manner that the first pass handles the 309705Slinton type of a shift expression */ 319705Slinton PCONV, INAREG|INTAREG, 329705Slinton SAREG|AWD, TINT|TUNSIGNED, 339705Slinton SANY, TPOINT, 349705Slinton NAREG|NASL, RLEFT, 359705Slinton "", 369705Slinton 37*16182Sralph #ifdef FORT 389705Slinton SCONV, INTAREG|FORCC, 39*16182Sralph SAREG|AWD, TDOUBLE, 40*16182Sralph SANY, TFLOAT, 41*16182Sralph NAREG|NASL, RESC1|RESCC, 42*16182Sralph " cvtdf AL,A1\n", 439705Slinton 449705Slinton SCONV, INTAREG|FORCC, 459705Slinton SAREG|AWD, ANYSIGNED|TUNSIGNED|TULONG|TFLOAT, 469705Slinton SANY, TFLOAT, 479705Slinton NAREG|NASL, RESC1|RESCC, 489705Slinton " cvtZLf AL,TA1\n", 499705Slinton 509705Slinton SCONV, INTAREG|FORCC, 519705Slinton SAREG|AWD, TUCHAR|TUSHORT, 529705Slinton SANY, TFLOAT, 539705Slinton NAREG|NASL, RESC1|RESCC, 549705Slinton " movzZLl AL,A1\n cvtlf A1,TA1\n", 559705Slinton #endif 569705Slinton 579705Slinton SCONV, INTAREG|FORCC, 589705Slinton SAREG|AWD, TUCHAR|TUSHORT, 599705Slinton SANY, TFLOAT|TDOUBLE, 609705Slinton NAREG|NASL, RESC1|RESCC, 619705Slinton " movzZLl AL,A1\n cvtld A1,A1\n", 629705Slinton 639705Slinton SCONV, INTAREG|FORCC, 64*16182Sralph SAREG|AWD, TANY, 659705Slinton SANY, TANY, 669705Slinton NAREG|NASL, RESC1|RESCC, 67*16182Sralph " ZA\n", 689705Slinton 699705Slinton 709705Slinton INIT, FOREFF, 719705Slinton SCON, TANY, 729705Slinton SANY, TWORD, 739705Slinton 0, RNOP, 749705Slinton " .long CL\n", 759705Slinton 769705Slinton INIT, FOREFF, 779705Slinton SCON, TANY, 789705Slinton SANY, TSHORT|TUSHORT, 799705Slinton 0, RNOP, 809705Slinton " .word CL\n", 819705Slinton 829705Slinton INIT, FOREFF, 839705Slinton SCON, TANY, 849705Slinton SANY, TCHAR|TUCHAR, 859705Slinton 0, RNOP, 869705Slinton " .byte CL\n", 879705Slinton 889705Slinton /* for the use of fortran only */ 899705Slinton 909705Slinton GOTO, FOREFF, 919705Slinton SCON, TANY, 929705Slinton SANY, TANY, 939705Slinton 0, RNOP, 949705Slinton " jbr CL\n", 959705Slinton 969705Slinton GOTO, FOREFF, 979705Slinton AWD, TANY, 989705Slinton SANY, TANY, 999705Slinton 0, RNOP, 1009705Slinton " jmp *AL\n", 1019705Slinton 1029705Slinton GOTO, FOREFF, 1039705Slinton SAREG, TANY, 1049705Slinton SANY, TANY, 1059705Slinton 0, RNOP, 1069705Slinton " jmp (AL)\n", 1079705Slinton 1089705Slinton STARG, FORARG, 1099705Slinton SCON|SOREG, TANY, 1109705Slinton SANY, TANY, 1119705Slinton NTEMP+2*NAREG, RESC3, 1129705Slinton "ZS", 1139705Slinton 1149705Slinton STASG, FORARG, 1159705Slinton SNAME|SOREG, TANY, 1169705Slinton SCON|SAREG, TANY, 1179705Slinton 0, RNULL, 1189705Slinton " subl2 ZT,sp\nZS", 1199705Slinton 1209705Slinton STASG, FOREFF, 1219705Slinton SNAME|SOREG, TANY, 1229705Slinton SCON|SAREG, TANY, 1239705Slinton 0, RNOP, 1249705Slinton "ZS", 1259705Slinton 1269705Slinton STASG, INAREG, 1279705Slinton SNAME|SOREG, TANY, 1289705Slinton SCON, TANY, 1299705Slinton NAREG, RESC1, 1309705Slinton "ZS movl AR,A1\n", 1319705Slinton 1329705Slinton STASG, INAREG, 1339705Slinton SNAME|SOREG, TANY, 1349705Slinton SAREG, TANY, 1359705Slinton 0, RRIGHT, 1369705Slinton " pushl AR\nZS movl (sp)+,AR\n", 1379705Slinton 1389705Slinton FLD, INAREG|INTAREG, 1399705Slinton SANY, TANY, 1409705Slinton SFLD, ANYSIGNED, 1419705Slinton NAREG|NASR, RESC1, 1429705Slinton " extv $H,$S,AR,A1\n", 1439705Slinton 1449705Slinton FLD, INAREG|INTAREG, 1459705Slinton SANY, TANY, 1469705Slinton SFLD, ANYUSIGNED, 1479705Slinton NAREG|NASR, RESC1, 1489705Slinton " extzv $H,$S,AR,A1\n", 1499705Slinton 1509705Slinton FLD, FORARG, 1519705Slinton SANY, TANY, 1529705Slinton SFLD, ANYSIGNED, 1539705Slinton 0, RNULL, 1549705Slinton " extv $H,$S,AR,-(sp)\n", 1559705Slinton 1569705Slinton FLD, FORARG, 1579705Slinton SANY, TANY, 1589705Slinton SFLD, ANYUSIGNED, 1599705Slinton 0, RNULL, 1609705Slinton " extzv $H,$S,AR,-(sp)\n", 1619705Slinton 1629705Slinton OPLOG, FORCC, 1639705Slinton SAREG|AWD, TWORD, 1649705Slinton SAREG|AWD, TWORD, 1659705Slinton 0, RESCC, 1669705Slinton " cmpl AL,AR\nZP", 1679705Slinton 1689705Slinton OPLOG, FORCC, 1699705Slinton SAREG|AWD, TSHORT|TUSHORT, 1709705Slinton SAREG|AWD, TSHORT|TUSHORT, 1719705Slinton 0, RESCC, 1729705Slinton " cmpw AL,AR\nZP", 1739705Slinton 1749705Slinton OPLOG, FORCC, 1759705Slinton SAREG|AWD, TCHAR|TUCHAR, 1769705Slinton SAREG|AWD, TCHAR|TUCHAR, 1779705Slinton 0, RESCC, 1789705Slinton " cmpb AL,AR\nZP", 1799705Slinton 1809705Slinton OPLOG, FORCC, 1819705Slinton SAREG|AWD, TSHORT|TUSHORT, 1829705Slinton SSCON, TANY, 1839705Slinton 0, RESCC, 1849705Slinton " cmpw AL,AR\nZP", 1859705Slinton 1869705Slinton OPLOG, FORCC, 1879705Slinton SAREG|AWD, TCHAR|TUCHAR, 1889705Slinton SCCON, TANY, 1899705Slinton 0, RESCC, 1909705Slinton " cmpb AL,AR\nZP", 1919705Slinton 1929705Slinton OPLOG, FORCC, 1939705Slinton SAREG|AWD, TDOUBLE, 1949705Slinton SAREG|AWD, TDOUBLE, 1959705Slinton 0, RESCC, 1969705Slinton " cmpd AL,AR\nZP", 1979705Slinton 1989705Slinton OPLOG, FORCC, 1999705Slinton SAREG|AWD, TDOUBLE, 2009705Slinton SAREG|AWD, TFLOAT, 201*16182Sralph NAREG, RESCC, 2029705Slinton " cvtfd AR,A1\n cmpd AL,A1\nZP", 2039705Slinton 2049705Slinton OPLOG, FORCC, 2059705Slinton SAREG|AWD, TFLOAT, 2069705Slinton SAREG|AWD, TDOUBLE, 207*16182Sralph NAREG, RESCC, 2089705Slinton " cvtfd AL,A1\n cmpd A1,AR\nZP", 2099705Slinton 2109705Slinton OPLOG, FORCC, 2119705Slinton SAREG|AWD, TFLOAT, 2129705Slinton SAREG|AWD, TFLOAT, 2139705Slinton 0, RESCC, 2149705Slinton " cmpf AL,AR\nZP", 2159705Slinton 2169705Slinton CCODES, INAREG|INTAREG, 2179705Slinton SANY, TANY, 2189705Slinton SANY, TANY, 2199705Slinton NAREG, RESC1, 2209705Slinton " movl $1,A1\nZN", 2219705Slinton 222*16182Sralph #ifdef FORT 2239705Slinton UNARY CALL, INTAREG, 2249705Slinton SCON, TANY, 225*16182Sralph SANY, TFLOAT, 226*16182Sralph NAREG|NASL, RESC1, 227*16182Sralph " calls ZC,CL\n", 228*16182Sralph 229*16182Sralph UNARY CALL, INTAREG, 230*16182Sralph SCON, TANY, 231*16182Sralph SANY, TWORD|TCHAR|TUCHAR|TSHORT|TUSHORT|TDOUBLE, 2329705Slinton NAREG|NASL, RESC1, /* should be register 0 */ 2339705Slinton " calls ZC,CL\n", 2349705Slinton 235*16182Sralph #else 236*16182Sralph 2379705Slinton UNARY CALL, INTAREG, 238*16182Sralph SCON, TANY, 239*16182Sralph SANY, TWORD|TCHAR|TUCHAR|TSHORT|TUSHORT|TFLOAT|TDOUBLE, 240*16182Sralph NAREG|NASL, RESC1, 241*16182Sralph " calls ZC,CL\n", 242*16182Sralph #endif 243*16182Sralph 244*16182Sralph UNARY CALL, INTAREG, 2459705Slinton SAREG, TANY, 2469705Slinton SANY, TWORD|TCHAR|TUCHAR|TSHORT|TUSHORT|TFLOAT|TDOUBLE, 2479705Slinton NAREG|NASL, RESC1, /* should be 0 */ 2489705Slinton " calls ZC,(AL)\n", 2499705Slinton 2509705Slinton UNARY CALL, INAREG|INTAREG, 2519705Slinton SNAME, TANY, 2529705Slinton SANY, TANY, 2539705Slinton NAREG|NASL, RESC1, /* really reg 0 */ 2549705Slinton " calls ZC,*AL\n", 2559705Slinton 2569705Slinton UNARY CALL, INAREG|INTAREG, 2579705Slinton SSOREG, TANY, 2589705Slinton SANY, TANY, 2599705Slinton NAREG|NASL, RESC1, /* really reg 0 */ 2609705Slinton " calls ZC,*AL\n", 2619705Slinton 2629705Slinton ASG RS, INAREG|FOREFF|FORCC, 2639705Slinton SAREG, TWORD, 2649705Slinton SCON, TINT, 2659705Slinton 0, RLEFT|RESCC, 2669705Slinton " extzv AR,ZU,AL,AL\n", 2679705Slinton 2689705Slinton ASG RS, INAREG|FOREFF|FORCC, 2699705Slinton SAREG, TWORD, 2709705Slinton SAREG, ANYFIXED, 2719705Slinton NAREG, RLEFT|RESCC, 2729705Slinton " subl3 AR,$32,A1\n extzv AR,A1,AL,AL\n", 2739705Slinton 2749705Slinton ASG RS, INAREG|FOREFF|FORCC, 2759705Slinton SAREG, TWORD, 2769705Slinton SAREG|AWD, TWORD, 2779705Slinton NAREG, RLEFT|RESCC, 2789705Slinton " subl3 AR,$32,A1\n extzv AR,A1,AL,AL\n", 2799705Slinton 2809705Slinton RS, INAREG|INTAREG|FORCC, 2819705Slinton SAREG, TWORD, 2829705Slinton SCON, TINT, 2839705Slinton NAREG|NASL, RESC1|RESCC, 2849705Slinton " extzv AR,ZU,AL,A1\n", 2859705Slinton 2869705Slinton ASG LS, INAREG|FOREFF|FORCC, 2879705Slinton SAREG|AWD, TWORD, 2889705Slinton SAREG|NIAWD, ANYSIGNED|ANYUSIGNED, 2899705Slinton 0, RLEFT|RESCC, 2909705Slinton " ashl AR,AL,AL\n", 2919705Slinton 2929705Slinton ASG LS, INAREG|FOREFF|FORCC, 2939705Slinton SAREG|AWD, TWORD, 2949705Slinton SSOREG, ANYSIGNED|ANYUSIGNED, 2959705Slinton 0, RLEFT|RESCC, 2969705Slinton " ashl AR,AL,AL\n", 2979705Slinton 2989705Slinton ASG LS, INAREG|FOREFF|FORCC, 2999705Slinton SAREG|AWD, TWORD, 3009705Slinton SOREG, ANYSIGNED|ANYUSIGNED, 3019705Slinton NAREG, RLEFT|RESCC, 3029705Slinton " ZB AR,A1\n ashl A1,AL,AL\n", 3039705Slinton 3049705Slinton LS, INAREG|INTAREG|FORCC, 3059705Slinton SAREG|AWD, TWORD, 3069705Slinton SAREG|NIAWD, ANYSIGNED|ANYUSIGNED, 3079705Slinton NAREG|NASL|NASR, RESC1|RESCC, 3089705Slinton " ashl AR,AL,A1\n", 3099705Slinton 3109705Slinton LS, INAREG|INTAREG|FORCC, 3119705Slinton SAREG|AWD, TWORD, 3129705Slinton SSOREG, ANYSIGNED|ANYUSIGNED, 3139705Slinton NAREG|NASL|NASR, RESC1|RESCC, 3149705Slinton " ashl AR,AL,A1\n", 3159705Slinton 3169705Slinton LS, INAREG|INTAREG|FORCC, 3179705Slinton SAREG|AWD, TWORD, 3189705Slinton SOREG, ANYSIGNED|ANYUSIGNED, 3199705Slinton NAREG|NASR, RESC1|RESCC, 3209705Slinton " ZB AR,A1\n ashl A1,AL,A1\n", 3219705Slinton 3229705Slinton INCR, FOREFF, 3239705Slinton AWD, TANY, 3249705Slinton SCON, TANY, 3259705Slinton 0, RLEFT, 3269705Slinton " ZE\n", 3279705Slinton 3289705Slinton DECR, FOREFF, 3299705Slinton AWD, TANY, 3309705Slinton SCON, TANY, 3319705Slinton 0, RLEFT, 3329705Slinton " ZE\n", 3339705Slinton 3349705Slinton INCR, FOREFF, 3359705Slinton SAREG, TWORD, 3369705Slinton SCON, TANY, 3379705Slinton 0, RLEFT, 3389705Slinton " ZE\n", 3399705Slinton 3409705Slinton DECR, FOREFF, 3419705Slinton SAREG, TWORD, 3429705Slinton SCON, TANY, 3439705Slinton 0, RLEFT, 3449705Slinton " ZE\n", 3459705Slinton 3469705Slinton /* jwf INCR and DECR for SAREG TCHAR|TSHORT matched by ASG PLUS etc */ 3479705Slinton 3489705Slinton INCR, INAREG|INTAREG, 3499705Slinton AWD, TANY, 3509705Slinton SCON, TANY, 3519705Slinton NAREG, RESC1, 3529705Slinton " ZD\n", 3539705Slinton 3549705Slinton DECR, INAREG|INTAREG, 3559705Slinton AWD, TANY, 3569705Slinton SCON, TANY, 3579705Slinton NAREG, RESC1, 3589705Slinton " ZD\n", 3599705Slinton 3609705Slinton INCR, INAREG|INTAREG, 3619705Slinton SAREG, TWORD, 3629705Slinton SCON, TANY, 3639705Slinton NAREG, RESC1, 3649705Slinton " ZD\n", 3659705Slinton 3669705Slinton DECR, INAREG|INTAREG, 3679705Slinton SAREG, TWORD, 3689705Slinton SCON, TANY, 3699705Slinton NAREG, RESC1, 3709705Slinton " ZD\n", 3719705Slinton 3729705Slinton ASSIGN, INAREG|FOREFF|FORCC, 373*16182Sralph SAREG|AWD, TDOUBLE, 374*16182Sralph SAREG|AWD, TUCHAR|TUSHORT, 375*16182Sralph NAREG|NASR, RLEFT|RESCC, 376*16182Sralph " movzZRl AR,A1\n cvtld A1,AL\n", 377*16182Sralph 378*16182Sralph ASSIGN, INAREG|FOREFF|FORCC, 379*16182Sralph SAREG|AWD, TFLOAT, 380*16182Sralph SAREG|AWD, TUCHAR|TUSHORT, 381*16182Sralph NAREG|NASR, RLEFT|RESCC, 382*16182Sralph " movzZRl AR,A1\n cvtlf A1,AL\n", 383*16182Sralph 384*16182Sralph ASSIGN, INAREG|FOREFF|FORCC, 3859705Slinton SAREG|AWD, TANY, 3869705Slinton SAREG|AWD, TANY, 3879705Slinton 0, RLEFT|RRIGHT|RESCC, 3889705Slinton " ZA\n", 3899705Slinton 3909705Slinton ASSIGN, INAREG|FOREFF, 3919705Slinton SFLD, TANY, 3929705Slinton SAREG|AWD, TWORD, 3939705Slinton 0, RRIGHT, 3949705Slinton " insv AR,$H,$S,AL\n", 3959705Slinton 3969705Slinton ASSIGN, INAREG|FOREFF|FORCC, 3979705Slinton SAREG|AWD, TWORD, 3989705Slinton SFLD, ANYSIGNED, 3999705Slinton 0, RLEFT|RESCC, 4009705Slinton " extv $H,$S,AR,AL\n", 4019705Slinton 4029705Slinton ASSIGN, INAREG|FOREFF|FORCC, 4039705Slinton SAREG|AWD, TWORD, 4049705Slinton SFLD, ANYUSIGNED, 4059705Slinton 0, RLEFT|RESCC, 4069705Slinton " extzv $H,$S,AR,AL\n", 4079705Slinton 4089705Slinton /* dummy UNARY MUL entry to get U* to possibly match OPLTYPE */ 4099705Slinton UNARY MUL, FOREFF, 4109705Slinton SCC, TANY, 4119705Slinton SCC, TANY, 4129705Slinton 0, RNULL, 4139705Slinton " HELP HELP HELP\n", 4149705Slinton 4159705Slinton REG, INTEMP, 4169705Slinton SANY, TANY, 4179705Slinton SAREG, TDOUBLE, 4189705Slinton 2*NTEMP, RESC1, 4199705Slinton " movd AR,A1\n", 4209705Slinton 4219705Slinton REG, INTEMP, 4229705Slinton SANY, TANY, 4239705Slinton SAREG, TANY, 4249705Slinton NTEMP, RESC1, 4259705Slinton " movZF AR,A1\n", 4269705Slinton 4279705Slinton #ifdef FORT 4289705Slinton REG, FORARG, 4299705Slinton SANY, TANY, 4309705Slinton SAREG, TFLOAT, 4319705Slinton 0, RNULL, 4329705Slinton " cvtfd AR,-(sp)\n", 4339705Slinton 4349705Slinton REG, FORARG, 4359705Slinton SANY, TANY, 4369705Slinton SAREG, TDOUBLE, 4379705Slinton 0, RNULL, 4389705Slinton " movZR AR,-(sp)\n", 4399705Slinton #endif 4409705Slinton 4419705Slinton OPLEAF, FOREFF, 4429705Slinton SANY, TANY, 4439705Slinton SAREG|AWD, TANY, 4449705Slinton 0, RLEFT, 4459705Slinton "", 4469705Slinton 4479705Slinton OPLTYPE, INAREG|INTAREG, 4489705Slinton SANY, TANY, 4499705Slinton SANY, TANY, 4509705Slinton NAREG|NASR, RESC1, 4519705Slinton " ZA\n", 4529705Slinton 4539705Slinton OPLTYPE, FORCC, 4549705Slinton SANY, TANY, 4559705Slinton SANY, TANY, 4569705Slinton 0, RESCC, 4579705Slinton " tstZR AR\n", 4589705Slinton 4599705Slinton OPLTYPE, FORARG, 4609705Slinton SANY, TANY, 4619705Slinton SANY, TWORD, 4629705Slinton 0, RNULL, 4639705Slinton " pushl AR\n", 4649705Slinton 4659705Slinton OPLTYPE, FORARG, 4669705Slinton SANY, TANY, 4679705Slinton SANY, TCHAR|TSHORT, 4689705Slinton 0, RNULL, 4699705Slinton " cvtZRl AR,-(sp)\n", 4709705Slinton 4719705Slinton OPLTYPE, FORARG, 4729705Slinton SANY, TANY, 4739705Slinton SANY, TUCHAR|TUSHORT, 4749705Slinton 0, RNULL, 4759705Slinton " movzZRl AR,-(sp)\n", 4769705Slinton 4779705Slinton OPLTYPE, FORARG, 4789705Slinton SANY, TANY, 4799705Slinton SANY, TDOUBLE, 4809705Slinton 0, RNULL, 4819705Slinton " movd AR,-(sp)\n", 4829705Slinton 4839705Slinton OPLTYPE, FORARG, 4849705Slinton SANY, TANY, 4859705Slinton SANY, TFLOAT, 4869705Slinton 0, RNULL, 4879705Slinton " cvtfd AR,-(sp)\n", 4889705Slinton 489*16182Sralph #ifdef FORT 4909705Slinton UNARY MINUS, INTAREG|FORCC, 491*16182Sralph SAREG|AWD, TINT|TUNSIGNED|TLONG|TULONG|TFLOAT|TDOUBLE, 492*16182Sralph SANY, TANY, 493*16182Sralph NAREG|NASL, RESC1|RESCC, 494*16182Sralph " mnegZL TAL,A1\n", 495*16182Sralph 496*16182Sralph #else 497*16182Sralph 498*16182Sralph UNARY MINUS, INTAREG|FORCC, 4999705Slinton SAREG|AWD, TINT|TUNSIGNED|TLONG|TULONG|TDOUBLE, 5009705Slinton SANY, TANY, 5019705Slinton NAREG|NASL, RESC1|RESCC, 5029705Slinton " mnegZL AL,A1\n", 503*16182Sralph #endif 5049705Slinton 5059705Slinton COMPL, INTAREG|FORCC, 5069705Slinton SAREG|AWD, TINT|TUNSIGNED, 5079705Slinton SANY, TANY, 5089705Slinton NAREG|NASL, RESC1|RESCC, 5099705Slinton " mcomZL AL,A1\n", 5109705Slinton 5119705Slinton COMPL, INTAREG|FORCC, 5129705Slinton SAREG|AWD, ANYSIGNED|ANYUSIGNED, 5139705Slinton SANY, TANY, 5149705Slinton NAREG|NASL, RESC1|RESCC, 5159705Slinton " cvtZLl AL,A1\n mcoml A1,A1\n", 5169705Slinton 5179705Slinton AND, FORCC, 5189705Slinton SAREG|AWD, TWORD, 5199705Slinton SCON, TWORD, 5209705Slinton 0, RESCC, 5219705Slinton " bitl ZZ,AL\n", 5229705Slinton 5239705Slinton AND, FORCC, 5249705Slinton SAREG|AWD, TSHORT|TUSHORT, 5259705Slinton SSCON, TWORD, 5269705Slinton 0, RESCC, 5279705Slinton " bitw ZZ,AL\n", 5289705Slinton 5299705Slinton AND, FORCC, 5309705Slinton SAREG|AWD, TCHAR|TUCHAR, 5319705Slinton SCCON, TWORD, 5329705Slinton 0, RESCC, 5339705Slinton " bitb ZZ,AL\n", 5349705Slinton 5359705Slinton ASG AND, INAREG|FOREFF|FORCC, 5369705Slinton SAREG, TWORD, 5379705Slinton SCON, TWORD, 5389705Slinton 0, RLEFT|RESCC, 5399705Slinton " bicl2 AR,AL\n", 5409705Slinton 5419705Slinton ASG OPMUL, INAREG|FOREFF|FORCC, 5429705Slinton SAREG|AWD, TINT|TUNSIGNED|TLONG|TULONG, 5439705Slinton SAREG|AWD, TINT|TUNSIGNED|TLONG|TULONG, 5449705Slinton 0, RLEFT|RESCC, 5459705Slinton " OL2 AR,AL\n", 5469705Slinton 5479705Slinton OPMUL, INAREG|INTAREG|FORCC, 5489705Slinton STAREG, TINT|TUNSIGNED|TLONG|TULONG, 5499705Slinton SAREG|AWD, TINT|TUNSIGNED|TLONG|TULONG, 5509705Slinton 0, RLEFT|RESCC, 5519705Slinton " OL2 AR,AL\n", 5529705Slinton 5539705Slinton OPMUL, INAREG|INTAREG|FORCC, 5549705Slinton SAREG|AWD, TINT|TUNSIGNED|TLONG|TULONG, 5559705Slinton SAREG|AWD, TINT|TUNSIGNED|TLONG|TULONG, 5569705Slinton NAREG|NASL|NASR, RESC1|RESCC, 5579705Slinton " OL3 AR,AL,A1\n", 5589705Slinton 5599705Slinton ASG MOD, INAREG|INTAREG|FOREFF|FORCC, 5609705Slinton SAREG, TINT|TUNSIGNED|TLONG|TULONG, 5619705Slinton SAREG|AWD, TINT|TUNSIGNED|TLONG|TULONG, 5629705Slinton NAREG, RLEFT|RESCC, 5639705Slinton " divl3 AR,AL,A1\n mull2 AR,A1\n subl2 A1,AL\n", 5649705Slinton 5659705Slinton MOD, INAREG|INTAREG, 5669705Slinton SAREG|AWD, TINT|TUNSIGNED|TLONG|TULONG, 5679705Slinton SAREG|AWD, TINT|TUNSIGNED|TLONG|TULONG, 5689705Slinton NAREG, RESC1, 5699705Slinton " divl3 AR,AL,A1\n mull2 AR,A1\n subl3 A1,AL,A1\n", 5709705Slinton 5719705Slinton ASG PLUS, INAREG|FOREFF|FORCC, 5729705Slinton SAREG, TPOINT|TINT|TLONG|TUNSIGNED|TULONG, 5739705Slinton SONE, TINT|TLONG, 5749705Slinton 0, RLEFT|RESCC, 5759705Slinton " incZL AL\n", 5769705Slinton 5779705Slinton ASG PLUS, INAREG|FOREFF|FORCC, 5789705Slinton AWD, ANYSIGNED|ANYUSIGNED, 5799705Slinton SONE, TINT|TLONG, 5809705Slinton 0, RLEFT|RESCC, 5819705Slinton " incZL AL\n", 5829705Slinton 5839705Slinton ASG PLUS, INAREG|FOREFF|FORCC, 5849705Slinton SAREG, TSHORT|TCHAR, 5859705Slinton SONE, TINT|TLONG, 5869705Slinton 0, RLEFT|RESCC, 5879705Slinton " incZL AL\n cvtZLl AL,AL\n", 5889705Slinton 5899705Slinton ASG PLUS, INAREG|FOREFF|FORCC, 5909705Slinton SAREG, TUSHORT|TUCHAR, 5919705Slinton SONE, TINT|TLONG, 5929705Slinton 0, RLEFT|RESCC, 5939705Slinton " incZL AL\n movzZLl AL,AL\n", 5949705Slinton 5959705Slinton ASG MINUS, INAREG|FOREFF|FORCC, 5969705Slinton SAREG, TPOINT|TINT|TLONG|TUNSIGNED|TULONG, 5979705Slinton SONE, TINT|TLONG, 5989705Slinton 0, RLEFT|RESCC, 5999705Slinton " decZL AL\n", 6009705Slinton 6019705Slinton ASG MINUS, INAREG|FOREFF|FORCC, 6029705Slinton AWD, ANYSIGNED|ANYUSIGNED, 6039705Slinton SONE, TINT|TLONG, 6049705Slinton 0, RLEFT|RESCC, 6059705Slinton " decZL AL\n", 6069705Slinton 6079705Slinton ASG MINUS, INAREG|FOREFF|FORCC, 6089705Slinton SAREG, TSHORT|TCHAR, 6099705Slinton SONE, TINT|TLONG, 6109705Slinton 0, RLEFT|RESCC, 6119705Slinton " decZL AL\n cvtZLl AL,AL\n", 6129705Slinton 6139705Slinton ASG MINUS, INAREG|FOREFF|FORCC, 6149705Slinton SAREG, TUSHORT|TUCHAR, 6159705Slinton SONE, TINT|TLONG, 6169705Slinton 0, RLEFT|RESCC, 6179705Slinton " decZL AL\n movzZLl AL,AL\n", 6189705Slinton 6199705Slinton PLUS, INAREG|INTAREG|FORCC, 6209705Slinton STAREG, TWORD, 6219705Slinton SONE, TWORD, 6229705Slinton 0, RLEFT|RESCC, 6239705Slinton " incZL AL\n", 6249705Slinton 6259705Slinton PLUS, INAREG|INTAREG|FORCC, 6269705Slinton STAREG, TSHORT|TCHAR, 6279705Slinton SONE, TWORD, 6289705Slinton 0, RLEFT|RESCC, 6299705Slinton " incZL AL\n cvtZLl AL,AL\n", 6309705Slinton 6319705Slinton PLUS, INAREG|INTAREG|FORCC, 6329705Slinton STAREG, TUSHORT|TUCHAR, 6339705Slinton SONE, TWORD, 6349705Slinton 0, RLEFT|RESCC, 6359705Slinton " incZL AL\n movzZLl AL,AL\n", 6369705Slinton 6379705Slinton MINUS, INAREG|INTAREG|FORCC, 6389705Slinton STAREG, TWORD, 6399705Slinton SONE, TWORD, 6409705Slinton 0, RLEFT|RESCC, 6419705Slinton " decZL AL\n", 6429705Slinton 6439705Slinton MINUS, INAREG|INTAREG|FORCC, 6449705Slinton STAREG, TSHORT|TCHAR, 6459705Slinton SONE, TWORD, 6469705Slinton 0, RLEFT|RESCC, 6479705Slinton " decZL AL\n cvtZLl AL,AL\n", 6489705Slinton 6499705Slinton MINUS, INAREG|INTAREG|FORCC, 6509705Slinton STAREG, TUSHORT|TUCHAR, 6519705Slinton SONE, TWORD, 6529705Slinton 0, RLEFT|RESCC, 6539705Slinton " decZL AL\n movzZLl AL,AL\n", 6549705Slinton 6559705Slinton ASG OPSIMP, INAREG|FOREFF|FORCC, 6569705Slinton SAREG|AWD, TWORD, 6579705Slinton SAREG|AWD, TWORD, 6589705Slinton 0, RLEFT|RESCC, 6599705Slinton " OL2 AR,AL\n", 6609705Slinton 6619705Slinton ASG OPSIMP, INAREG|FOREFF|FORCC, 6629705Slinton SAREG, TWORD, 6639705Slinton SAREG, TSHORT|TUSHORT|TCHAR|TUCHAR, 6649705Slinton 0, RLEFT|RESCC, 6659705Slinton " OL2 AR,AL\n", 6669705Slinton 6679705Slinton ASG OPSIMP, INAREG|FOREFF|FORCC, 6689705Slinton AWD, TSHORT|TUSHORT, 6699705Slinton SAREG|AWD, TSHORT|TUSHORT, 6709705Slinton 0, RLEFT|RESCC, 6719705Slinton " OW2 AR,AL\n", 6729705Slinton 6739705Slinton ASG OPSIMP, INAREG|FOREFF|FORCC, 6749705Slinton AWD, TSHORT|TUSHORT, 6759705Slinton SSCON, TWORD, 6769705Slinton 0, RLEFT|RESCC, 6779705Slinton " OW2 AR,AL\n", 6789705Slinton 6799705Slinton ASG OPSIMP, INAREG|FOREFF|FORCC, 6809705Slinton AWD, TCHAR|TUCHAR, 6819705Slinton SAREG|AWD, TCHAR|TUCHAR, 6829705Slinton 0, RLEFT|RESCC, 6839705Slinton " OB2 AR,AL\n", 6849705Slinton 6859705Slinton ASG OPSIMP, INAREG|FOREFF|FORCC, 6869705Slinton AWD, TCHAR|TUCHAR, 6879705Slinton SCCON, TWORD, 6889705Slinton 0, RLEFT|RESCC, 6899705Slinton " OB2 AR,AL\n", 6909705Slinton 6919705Slinton ASG OPSIMP, INAREG|FOREFF|FORCC, 6929705Slinton SAREG, TSHORT, 6939705Slinton SAREG|AWD, ANYFIXED, 6949705Slinton 0, RLEFT|RESCC, 6959705Slinton " OW2 AR,AL\n cvtZLl AL,AL\n", 6969705Slinton 6979705Slinton ASG OPSIMP, INAREG|FOREFF|FORCC, 6989705Slinton SAREG, TUSHORT, 6999705Slinton SAREG|AWD, ANYFIXED, 7009705Slinton 0, RLEFT|RESCC, 7019705Slinton " OW2 AR,AL\n movzZLl AL,AL\n", 7029705Slinton 7039705Slinton ASG OPSIMP, INAREG|FOREFF|FORCC, 7049705Slinton SAREG, TCHAR, 7059705Slinton SAREG|AWD, ANYFIXED, 7069705Slinton 0, RLEFT|RESCC, 7079705Slinton " OB2 AR,AL\n cvtZLl AL,AL\n", 7089705Slinton 7099705Slinton ASG OPSIMP, INAREG|FOREFF|FORCC, 7109705Slinton SAREG, TUCHAR, 7119705Slinton SAREG|AWD, ANYFIXED, 7129705Slinton 0, RLEFT|RESCC, 7139705Slinton " OB2 AR,AL\n movzZLl AL,AL\n", 7149705Slinton 7159705Slinton OPSIMP, INAREG|INTAREG|FORCC, 7169705Slinton STAREG, ANYFIXED, 7179705Slinton SAREG|AWD, TWORD, 7189705Slinton 0, RLEFT|RESCC, 7199705Slinton " OL2 AR,AL\n", 7209705Slinton 7219705Slinton OPSIMP, INAREG|INTAREG|FORCC, 7229705Slinton SAREG|AWD, TWORD, 7239705Slinton SAREG|AWD, TWORD, 7249705Slinton NAREG|NASL|NASR, RESC1|RESCC, 7259705Slinton " OL3 AR,AL,A1\n", 7269705Slinton 7279705Slinton ASG OPFLOAT, INAREG|FOREFF|FORCC, 7289705Slinton SAREG|AWD, TDOUBLE, 7299705Slinton SAREG|AWD, TDOUBLE, 7309705Slinton 0, RLEFT|RESCC, 7319705Slinton " OD2 AR,AL\n", 7329705Slinton 7339705Slinton ASG OPFLOAT, INAREG|FOREFF|FORCC, 7349705Slinton SAREG|AWD, TFLOAT, 7359705Slinton SAREG|AWD, TFLOAT, 7369705Slinton 0, RLEFT|RESCC, 7379705Slinton " OF2 AR,AL\n", 7389705Slinton 7399705Slinton ASG OPFLOAT, INAREG|FOREFF|FORCC, 7409705Slinton SAREG|AWD, TDOUBLE, 7419705Slinton SAREG|AWD, TFLOAT, 7429705Slinton NAREG|NASR, RLEFT|RESCC, 7439705Slinton " cvtfd AR,A1\n OD2 A1,AL\n", 7449705Slinton 7459705Slinton ASG OPFLOAT, INAREG|INTAREG|FOREFF|FORCC, 7469705Slinton SAREG|AWD, TFLOAT, 7479705Slinton SAREG|AWD, TDOUBLE, 7489705Slinton NAREG, RLEFT|RESC1|RESCC, 7499705Slinton " cvtfd AL,A1\n OD2 AR,A1\n cvtdf A1,AL\n", 7509705Slinton 7519705Slinton OPFLOAT, INAREG|INTAREG|FORCC, 7529705Slinton STAREG, TDOUBLE, 7539705Slinton SAREG|AWD, TDOUBLE, 7549705Slinton 0, RLEFT|RESCC, 7559705Slinton " OD2 AR,AL\n", 7569705Slinton 7579705Slinton OPFLOAT, INAREG|INTAREG|FORCC, 7589705Slinton SAREG|AWD, TDOUBLE, 7599705Slinton SAREG|AWD, TDOUBLE, 7609705Slinton NAREG|NASL|NASR, RESC1|RESCC, 7619705Slinton " OD3 AR,AL,A1\n", 7629705Slinton 7639705Slinton OPFLOAT, INAREG|INTAREG|FORCC, 7649705Slinton SAREG|AWD, TFLOAT, 7659705Slinton SAREG|AWD, TDOUBLE, 7669705Slinton NAREG|NASL, RESC1|RESCC, 7679705Slinton " cvtfd AL,A1\n OD2 AR,A1\n", 7689705Slinton 7699705Slinton OPFLOAT, INAREG|INTAREG|FORCC, 7709705Slinton SAREG|AWD, TDOUBLE, 7719705Slinton SAREG|AWD, TFLOAT, 7729705Slinton NAREG|NASR, RESC1|RESCC, 7739705Slinton " cvtfd AR,A1\n OD3 A1,AL,A1\n", 7749705Slinton 7759705Slinton #ifdef FORT 7769705Slinton OPFLOAT, INAREG|INTAREG|FORCC, 7779705Slinton STAREG, TFLOAT, 7789705Slinton SAREG|AWD, TFLOAT, 7799705Slinton 0, RLEFT|RESCC, 7809705Slinton " OF2 TAR,AL\n", 7819705Slinton 7829705Slinton OPFLOAT, INAREG|INTAREG|FORCC, 7839705Slinton SAREG|AWD, TFLOAT, 7849705Slinton SAREG|AWD, TFLOAT, 7859705Slinton NAREG|NASL|NASR, RESC1|RESCC, 7869705Slinton " OF3 AR,AL,TA1\n", 7879705Slinton 7889705Slinton #else 7899705Slinton OPFLOAT, INAREG|INTAREG|FORCC, 7909705Slinton SAREG|AWD, TFLOAT, 7919705Slinton SAREG|AWD, TFLOAT, 7929705Slinton NAREG|NASL|NASR, RESC1|RESCC, 7939705Slinton " OF3 AR,AL,A1\n cvtfd A1,A1\n", 7949705Slinton #endif 7959705Slinton 7969705Slinton /* Default actions for hard trees ... */ 7979705Slinton 7989705Slinton # define DF(x) FORREW,SANY,TANY,SANY,TANY,REWRITE,x,"" 7999705Slinton 8009705Slinton UNARY MUL, DF( UNARY MUL ), 8019705Slinton 8029705Slinton INCR, DF(INCR), 8039705Slinton 8049705Slinton DECR, DF(INCR), 8059705Slinton 8069705Slinton ASSIGN, DF(ASSIGN), 8079705Slinton 8089705Slinton STASG, DF(STASG), 8099705Slinton 8109705Slinton FLD, DF(FLD), 8119705Slinton 8129705Slinton OPLEAF, DF(NAME), 8139705Slinton 8149705Slinton OPLOG, FORCC, 8159705Slinton SANY, TANY, 8169705Slinton SANY, TANY, 8179705Slinton REWRITE, BITYPE, 8189705Slinton "", 8199705Slinton 8209705Slinton OPLOG, DF(NOT), 8219705Slinton 8229705Slinton COMOP, DF(COMOP), 8239705Slinton 8249705Slinton INIT, DF(INIT), 8259705Slinton 8269705Slinton OPUNARY, DF(UNARY MINUS), 8279705Slinton 8289705Slinton 8299705Slinton ASG OPANY, DF(ASG PLUS), 8309705Slinton 8319705Slinton OPANY, DF(BITYPE), 8329705Slinton 8339705Slinton FREE, FREE, FREE, FREE, FREE, FREE, FREE, FREE, "help; I'm in trouble\n" }; 834