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