Annotation of 42BSD/usr.bin/f77/src/f1/table.c, revision 1.1

1.1     ! root        1: static char *sccsid ="%W% (Berkeley) %G%";
        !             2: # include "mfile2"
        !             3: 
        !             4: # define WPTR TPTRTO|TINT|TLONG|TFLOAT|TDOUBLE|TPOINT|TUNSIGNED|TULONG
        !             5: # define AWD SNAME|SOREG|SCON|STARNM|STARREG
        !             6: /* tbl */
        !             7: # define ANYSIGNED TPOINT|TINT|TLONG|TSHORT|TCHAR
        !             8: # define ANYUSIGNED TUNSIGNED|TULONG|TUSHORT|TUCHAR
        !             9: # define ANYFIXED ANYSIGNED|ANYUSIGNED
        !            10: # define TWORD TINT|TUNSIGNED|TPOINT|TLONG|TULONG
        !            11: # define NIAWD SNAME|SCON|STARNM
        !            12: /* tbl */
        !            13: 
        !            14: struct optab  table[] = {
        !            15: 
        !            16: PCONV, INAREG|INTAREG,
        !            17:        SAREG|AWD,      TCHAR|TSHORT,
        !            18:        SANY,   TPOINT,
        !            19:                NAREG|NASL,     RESC1,
        !            20:                "       cvtZLl  AL,A1\n",
        !            21: 
        !            22: PCONV, INAREG|INTAREG,
        !            23:        SAREG|AWD,      TUCHAR|TUSHORT,
        !            24:        SANY,   TPOINT,
        !            25:                NAREG|NASL,     RESC1,
        !            26:                "       movzZLl AL,A1\n",
        !            27: 
        !            28:        /* the following entry is to fix a problem with
        !            29:           the manner that the first pass handles the
        !            30:           type of a shift expression                 */
        !            31: PCONV, INAREG|INTAREG,
        !            32:        SAREG|AWD,      TINT|TUNSIGNED,
        !            33:        SANY,   TPOINT,
        !            34:                NAREG|NASL,     RLEFT,
        !            35:                "",
        !            36: 
        !            37: SCONV, INTAREG|FORCC,
        !            38:        SAREG,  TDOUBLE,
        !            39:        SANY,   TDOUBLE,
        !            40:                0,      RLEFT,
        !            41:                "",
        !            42: 
        !            43: #ifdef FORT
        !            44: SCONV, INTAREG|FORCC,
        !            45:        SAREG|AWD,      TDOUBLE,
        !            46:        SANY,   TFLOAT,
        !            47:                NAREG|NASL,     RESC1|RESCC,
        !            48:                "       cvtdf   AL,A1\n",
        !            49: 
        !            50: SCONV, INTAREG|FORCC,
        !            51:        SAREG|AWD,      ANYSIGNED|TUNSIGNED|TULONG|TFLOAT,
        !            52:        SANY,   TFLOAT,
        !            53:                NAREG|NASL,     RESC1|RESCC,
        !            54:                "       cvtZLf  AL,TA1\n",
        !            55: 
        !            56: SCONV, INTAREG|FORCC,
        !            57:        SAREG|AWD,      TUCHAR|TUSHORT,
        !            58:        SANY,   TFLOAT,
        !            59:                NAREG|NASL,     RESC1|RESCC,
        !            60:                "       movzZLl AL,A1\n cvtlf   A1,TA1\n",
        !            61: #endif
        !            62: 
        !            63: SCONV, INTAREG|FORCC,
        !            64:        SAREG|AWD,      ANYSIGNED|TUNSIGNED|TULONG|TFLOAT,
        !            65:        SANY,   TFLOAT|TDOUBLE,
        !            66:                NAREG|NASL,     RESC1|RESCC,
        !            67:                "       cvtZLd  AL,A1\n",
        !            68: 
        !            69: SCONV, INTAREG|FORCC,
        !            70:        SAREG|AWD,      TUCHAR|TUSHORT,
        !            71:        SANY,   TFLOAT|TDOUBLE,
        !            72:                NAREG|NASL,     RESC1|RESCC,
        !            73:                "       movzZLl AL,A1\n cvtld   A1,A1\n",
        !            74: 
        !            75: SCONV, INTAREG|FORCC,
        !            76:        SAREG|AWD,      TFLOAT|TDOUBLE,
        !            77:        SANY,   ANYFIXED,
        !            78:                NAREG|NASL,     RESC1|RESCC,
        !            79:                "       cvtZLZF AL,A1\n",
        !            80: 
        !            81: SCONV, INTAREG|FORCC,
        !            82:        SAREG|SNAME|SCON|STARNM,        TANY,
        !            83:        SANY,   ANYUSIGNED,
        !            84:                NAREG|NASL,     RESC1|RESCC,
        !            85:                "       movzZRl AL,A1\n",
        !            86: 
        !            87: SCONV, INTAREG|FORCC,
        !            88:        SSOREG, TANY,
        !            89:        SANY,   ANYUSIGNED,
        !            90:                NAREG|NASL,     RESC1|RESCC,
        !            91:                "       movzZRl AL,A1\n",
        !            92: 
        !            93: SCONV, INTAREG|FORCC,
        !            94:        SAREG|SNAME|SCON|STARNM,        TANY,
        !            95:        SANY,   TANY,
        !            96:                NAREG|NASL,     RESC1|RESCC,
        !            97:                "       cvtZRl  AL,A1\n",
        !            98: 
        !            99: SCONV, INTAREG|FORCC,
        !           100:        SSOREG, TANY,
        !           101:        SANY,   TANY,
        !           102:                NAREG|NASL,     RESC1|RESCC,
        !           103:                "       cvtZRl  AL,A1\n",
        !           104: 
        !           105: 
        !           106: INIT,  FOREFF,
        !           107:        SCON,   TANY,
        !           108:        SANY,   TWORD,
        !           109:                0,      RNOP,
        !           110:                "       .long   CL\n",
        !           111: 
        !           112: INIT,  FOREFF,
        !           113:        SCON,   TANY,
        !           114:        SANY,   TSHORT|TUSHORT,
        !           115:                0,      RNOP,
        !           116:                "       .word   CL\n",
        !           117: 
        !           118: INIT,  FOREFF,
        !           119:        SCON,   TANY,
        !           120:        SANY,   TCHAR|TUCHAR,
        !           121:                0,      RNOP,
        !           122:                "       .byte   CL\n",
        !           123: 
        !           124:        /* for the use of fortran only */
        !           125: 
        !           126: GOTO,  FOREFF,
        !           127:        SCON,   TANY,
        !           128:        SANY,   TANY,
        !           129:                0,      RNOP,
        !           130:                "       jbr     CL\n",
        !           131: 
        !           132: GOTO,  FOREFF,
        !           133:        AWD,    TANY,
        !           134:        SANY,   TANY,
        !           135:                0,      RNOP,
        !           136:                "       jmp     *AL\n",
        !           137: 
        !           138: GOTO,  FOREFF,
        !           139:        SAREG,  TANY,
        !           140:        SANY,   TANY,
        !           141:                0,      RNOP,
        !           142:                "       jmp     (AL)\n",
        !           143: 
        !           144: STARG, FORARG,
        !           145:        SCON|SOREG,     TANY,
        !           146:        SANY,   TANY,
        !           147:                NTEMP+2*NAREG,  RESC3,
        !           148:                "ZS",
        !           149: 
        !           150: STASG, FORARG,
        !           151:        SNAME|SOREG,    TANY,
        !           152:        SCON|SAREG,     TANY,
        !           153:                0,      RNULL,
        !           154:                "       subl2   ZT,sp\nZS",
        !           155: 
        !           156: STASG, FOREFF,
        !           157:        SNAME|SOREG,    TANY,
        !           158:        SCON|SAREG,     TANY,
        !           159:                0,      RNOP,
        !           160:                "ZS",
        !           161: 
        !           162: STASG, INAREG,
        !           163:        SNAME|SOREG,    TANY,
        !           164:        SCON,   TANY,
        !           165:                NAREG,  RESC1,
        !           166:                "ZS     movl    AR,A1\n",
        !           167: 
        !           168: STASG, INAREG,
        !           169:        SNAME|SOREG,    TANY,
        !           170:        SAREG,  TANY,
        !           171:                0,      RRIGHT,
        !           172:                "       pushl   AR\nZS  movl    (sp)+,AR\n",
        !           173: 
        !           174: FLD,   INAREG|INTAREG,
        !           175:        SANY,   TANY,
        !           176:        SFLD,   ANYSIGNED,
        !           177:                NAREG|NASR,     RESC1,
        !           178:                "       extv    $H,$S,AR,A1\n",
        !           179: 
        !           180: FLD,   INAREG|INTAREG,
        !           181:        SANY,   TANY,
        !           182:        SFLD,   ANYUSIGNED,
        !           183:                NAREG|NASR,     RESC1,
        !           184:                "       extzv   $H,$S,AR,A1\n",
        !           185: 
        !           186: FLD,   FORARG,
        !           187:        SANY,   TANY,
        !           188:        SFLD,   ANYSIGNED,
        !           189:                0,      RNULL,
        !           190:                "       extv    $H,$S,AR,-(sp)\n",
        !           191: 
        !           192: FLD,   FORARG,
        !           193:        SANY,   TANY,
        !           194:        SFLD,   ANYUSIGNED,
        !           195:                0,      RNULL,
        !           196:                "       extzv   $H,$S,AR,-(sp)\n",
        !           197: 
        !           198: OPLOG, FORCC,
        !           199:        SAREG|AWD,      TWORD,
        !           200:        SAREG|AWD,      TWORD,
        !           201:                0,      RESCC,
        !           202:                "       cmpl    AL,AR\nZP",
        !           203: 
        !           204: OPLOG, FORCC,
        !           205:        SAREG|AWD,      TSHORT|TUSHORT,
        !           206:        SAREG|AWD,      TSHORT|TUSHORT,
        !           207:                0,      RESCC,
        !           208:                "       cmpw    AL,AR\nZP",
        !           209: 
        !           210: OPLOG, FORCC,
        !           211:        SAREG|AWD,      TCHAR|TUCHAR,
        !           212:        SAREG|AWD,      TCHAR|TUCHAR,
        !           213:                0,      RESCC,
        !           214:                "       cmpb    AL,AR\nZP",
        !           215: 
        !           216: OPLOG, FORCC,
        !           217:        SAREG|AWD,      TSHORT|TUSHORT,
        !           218:        SSCON,  TANY,
        !           219:                0,      RESCC,
        !           220:                "       cmpw    AL,AR\nZP",
        !           221: 
        !           222: OPLOG, FORCC,
        !           223:        SAREG|AWD,      TCHAR|TUCHAR,
        !           224:        SCCON,  TANY,
        !           225:                0,      RESCC,
        !           226:                "       cmpb    AL,AR\nZP",
        !           227: 
        !           228: OPLOG, FORCC,
        !           229:        SAREG|AWD,      TDOUBLE,
        !           230:        SAREG|AWD,      TDOUBLE,
        !           231:                0,      RESCC,
        !           232:                "       cmpd    AL,AR\nZP",
        !           233: 
        !           234: OPLOG, FORCC,
        !           235:        SAREG|AWD,      TDOUBLE,
        !           236:        SAREG|AWD,      TFLOAT,
        !           237:                NAREG|NASR,     RESCC,
        !           238:                "       cvtfd   AR,A1\n cmpd    AL,A1\nZP",
        !           239: 
        !           240: OPLOG, FORCC,
        !           241:        SAREG|AWD,      TFLOAT,
        !           242:        SAREG|AWD,      TDOUBLE,
        !           243:                NAREG|NASL,     RESCC,
        !           244:                "       cvtfd   AL,A1\n cmpd    A1,AR\nZP",
        !           245: 
        !           246: OPLOG, FORCC,
        !           247:        SAREG|AWD,      TFLOAT,
        !           248:        SAREG|AWD,      TFLOAT,
        !           249:                0,      RESCC,
        !           250:                "       cmpf    AL,AR\nZP",
        !           251: 
        !           252: CCODES,        INAREG|INTAREG,
        !           253:        SANY,   TANY,
        !           254:        SANY,   TANY,
        !           255:                NAREG,  RESC1,
        !           256:                "       movl    $1,A1\nZN",
        !           257: 
        !           258: #ifdef FORT
        !           259: UNARY CALL,    INTAREG,
        !           260:        SCON,   TANY,
        !           261:        SANY,   TFLOAT,
        !           262:                NAREG|NASL,     RESC1,
        !           263:                "       calls   ZC,CL\n",
        !           264: 
        !           265: UNARY CALL,    INTAREG,
        !           266:        SCON,   TANY,
        !           267:        SANY,   TWORD|TCHAR|TUCHAR|TSHORT|TUSHORT|TDOUBLE,
        !           268:                NAREG|NASL,     RESC1, /* should be register 0 */
        !           269:                "       calls   ZC,CL\n",
        !           270: 
        !           271: #else
        !           272: 
        !           273: UNARY CALL,    INTAREG,
        !           274:        SCON,   TANY,
        !           275:        SANY,   TWORD|TCHAR|TUCHAR|TSHORT|TUSHORT|TFLOAT|TDOUBLE,
        !           276:                NAREG|NASL,     RESC1,
        !           277:                "       calls   ZC,CL\n",
        !           278: #endif
        !           279: 
        !           280: UNARY CALL,    INTAREG,
        !           281:        SAREG,  TANY,
        !           282:        SANY,   TWORD|TCHAR|TUCHAR|TSHORT|TUSHORT|TFLOAT|TDOUBLE,
        !           283:                NAREG|NASL,     RESC1,  /* should be 0 */
        !           284:                "       calls   ZC,(AL)\n",
        !           285: 
        !           286: UNARY CALL,    INAREG|INTAREG,
        !           287:        SNAME,  TANY,
        !           288:        SANY,   TANY,
        !           289:                NAREG|NASL,     RESC1,  /* really reg 0 */
        !           290:                "       calls   ZC,*AL\n",
        !           291: 
        !           292: UNARY CALL,    INAREG|INTAREG,
        !           293:        SSOREG, TANY,
        !           294:        SANY,   TANY,
        !           295:                NAREG|NASL,     RESC1,  /* really reg 0 */
        !           296:                "       calls   ZC,*AL\n",
        !           297: 
        !           298: ASG RS,        INAREG|FOREFF|FORCC,
        !           299:        SAREG,  TWORD,
        !           300:        SCON,   TINT,
        !           301:                0,      RLEFT|RESCC,
        !           302:                "       extzv   AR,ZU,AL,AL\n",
        !           303: 
        !           304: ASG RS,        INAREG|FOREFF|FORCC,
        !           305:        SAREG,  TWORD,
        !           306:        SAREG,  ANYFIXED,
        !           307:                NAREG,  RLEFT|RESCC,
        !           308:                "       subl3   AR,$32,A1\n     extzv   AR,A1,AL,AL\n",
        !           309: 
        !           310: ASG RS,        INAREG|FOREFF|FORCC,
        !           311:        SAREG,  TWORD,
        !           312:        SAREG|AWD,      TWORD,
        !           313:                NAREG,  RLEFT|RESCC,
        !           314:                "       subl3   AR,$32,A1\n     extzv   AR,A1,AL,AL\n",
        !           315: 
        !           316: RS,    INAREG|INTAREG|FORCC,
        !           317:        SAREG,  TWORD,
        !           318:        SCON,   TINT,
        !           319:                NAREG|NASL,     RESC1|RESCC,
        !           320:                "       extzv   AR,ZU,AL,A1\n",
        !           321: 
        !           322: ASG LS,        INAREG|FOREFF|FORCC,
        !           323:        SAREG|AWD,      TWORD,
        !           324:        SAREG|NIAWD,    ANYSIGNED|ANYUSIGNED,
        !           325:                0,      RLEFT|RESCC,
        !           326:                "       ashl    AR,AL,AL\n",
        !           327: 
        !           328: ASG LS,        INAREG|FOREFF|FORCC,
        !           329:        SAREG|AWD,      TWORD,
        !           330:        SSOREG, ANYSIGNED|ANYUSIGNED,
        !           331:                0,      RLEFT|RESCC,
        !           332:                "       ashl    AR,AL,AL\n",
        !           333: 
        !           334: ASG LS,        INAREG|FOREFF|FORCC,
        !           335:        SAREG|AWD,      TWORD,
        !           336:        SOREG,  ANYSIGNED|ANYUSIGNED,
        !           337:                NAREG,  RLEFT|RESCC,
        !           338:                "       ZB      AR,A1\n ashl    A1,AL,AL\n",
        !           339: 
        !           340: LS,    INAREG|INTAREG|FORCC,
        !           341:        SAREG|AWD,      TWORD,
        !           342:        SAREG|NIAWD,    ANYSIGNED|ANYUSIGNED,
        !           343:                NAREG|NASL|NASR,        RESC1|RESCC,
        !           344:                "       ashl    AR,AL,A1\n",
        !           345: 
        !           346: LS,    INAREG|INTAREG|FORCC,
        !           347:        SAREG|AWD,      TWORD,
        !           348:        SSOREG, ANYSIGNED|ANYUSIGNED,
        !           349:                NAREG|NASL|NASR,        RESC1|RESCC,
        !           350:                "       ashl    AR,AL,A1\n",
        !           351: 
        !           352: LS,    INAREG|INTAREG|FORCC,
        !           353:        SAREG|AWD,      TWORD,
        !           354:        SOREG,  ANYSIGNED|ANYUSIGNED,
        !           355:                NAREG|NASR,     RESC1|RESCC,
        !           356:                "       ZB      AR,A1\n ashl    A1,AL,A1\n",
        !           357: 
        !           358: INCR,  FOREFF,
        !           359:        AWD,    TANY,
        !           360:        SCON,   TANY,
        !           361:                0,      RLEFT,
        !           362:                "       ZE\n",
        !           363: 
        !           364: DECR,  FOREFF,
        !           365:        AWD,    TANY,
        !           366:        SCON,   TANY,
        !           367:                0,      RLEFT,
        !           368:                "       ZE\n",
        !           369: 
        !           370: INCR,  FOREFF,
        !           371:        SAREG,  TWORD,
        !           372:        SCON,   TANY,
        !           373:                0,      RLEFT,
        !           374:                "       ZE\n",
        !           375: 
        !           376: DECR,  FOREFF,
        !           377:        SAREG,  TWORD,
        !           378:        SCON,   TANY,
        !           379:                0,      RLEFT,
        !           380:                "       ZE\n",
        !           381: 
        !           382: /* jwf INCR and DECR for SAREG TCHAR|TSHORT matched by ASG PLUS etc */
        !           383: 
        !           384: INCR,  INAREG|INTAREG,
        !           385:        AWD,    TANY,
        !           386:        SCON,   TANY,
        !           387:                NAREG,  RESC1,
        !           388:                "       ZD\n",
        !           389: 
        !           390: DECR,  INAREG|INTAREG,
        !           391:        AWD,    TANY,
        !           392:        SCON,   TANY,
        !           393:                NAREG,  RESC1,
        !           394:                "       ZD\n",
        !           395: 
        !           396: INCR,  INAREG|INTAREG,
        !           397:        SAREG,  TWORD,
        !           398:        SCON,   TANY,
        !           399:                NAREG,  RESC1,
        !           400:                "       ZD\n",
        !           401: 
        !           402: DECR,  INAREG|INTAREG,
        !           403:        SAREG,  TWORD,
        !           404:        SCON,   TANY,
        !           405:                NAREG,  RESC1,
        !           406:                "       ZD\n",
        !           407: 
        !           408: ASSIGN,        INAREG|FOREFF|FORCC,
        !           409:        SAREG|AWD,      TANY,
        !           410:        SAREG|AWD,      TANY,
        !           411:                0,      RLEFT|RRIGHT|RESCC,
        !           412:                "       ZA\n",
        !           413: 
        !           414: ASSIGN,        INAREG|FOREFF,
        !           415:        SFLD,   TANY,
        !           416:        SAREG|AWD,      TWORD,
        !           417:                0,      RRIGHT,
        !           418:                "       insv    AR,$H,$S,AL\n",
        !           419: 
        !           420: ASSIGN,        INAREG|FOREFF|FORCC,
        !           421:        SAREG|AWD,      TWORD,
        !           422:        SFLD,   ANYSIGNED,
        !           423:                0,      RLEFT|RESCC,
        !           424:                "       extv    $H,$S,AR,AL\n",
        !           425: 
        !           426: ASSIGN,        INAREG|FOREFF|FORCC,
        !           427:        SAREG|AWD,      TWORD,
        !           428:        SFLD,   ANYUSIGNED,
        !           429:                0,      RLEFT|RESCC,
        !           430:                "       extzv   $H,$S,AR,AL\n",
        !           431: 
        !           432: /* dummy UNARY MUL entry to get U* to possibly match OPLTYPE */
        !           433: UNARY MUL,     FOREFF,
        !           434:        SCC,    TANY,
        !           435:        SCC,    TANY,
        !           436:                0,      RNULL,
        !           437:                "       HELP HELP HELP\n",
        !           438: 
        !           439: REG,   INTEMP,
        !           440:        SANY,   TANY,
        !           441:        SAREG,  TDOUBLE,
        !           442:                2*NTEMP,        RESC1,
        !           443:                "       movd    AR,A1\n",
        !           444: 
        !           445: REG,   INTEMP,
        !           446:        SANY,   TANY,
        !           447:        SAREG,  TANY,
        !           448:                NTEMP,  RESC1,
        !           449:                "       movZF   AR,A1\n",
        !           450: 
        !           451: #ifdef FORT
        !           452:  REG,  FORARG,
        !           453:        SANY,   TANY,
        !           454:        SAREG,  TFLOAT,
        !           455:                0,      RNULL,
        !           456:                "       cvtfd   AR,-(sp)\n",
        !           457: 
        !           458: REG,   FORARG,
        !           459:        SANY,   TANY,
        !           460:        SAREG,  TDOUBLE,
        !           461:                0,      RNULL,
        !           462:                "       movZR   AR,-(sp)\n",
        !           463: #endif
        !           464: 
        !           465: OPLEAF,        FOREFF,
        !           466:        SANY,   TANY,
        !           467:        SAREG|AWD,      TANY,
        !           468:                0,      RLEFT,
        !           469:                "",
        !           470: 
        !           471: OPLTYPE,       INAREG|INTAREG,
        !           472:        SANY,   TANY,
        !           473:        SANY,   TFLOAT|TDOUBLE,
        !           474:                2*NAREG|NASR,   RESC1,
        !           475:                "       ZA\n",
        !           476: 
        !           477: OPLTYPE,       INAREG|INTAREG,
        !           478:        SANY,   TANY,
        !           479:        SANY,   TANY,
        !           480:                NAREG|NASR,     RESC1,
        !           481:                "       ZA\n",
        !           482: 
        !           483: OPLTYPE,       FORCC,
        !           484:        SANY,   TANY,
        !           485:        SANY,   TANY,
        !           486:                0,      RESCC,
        !           487:                "       tstZR   AR\n",
        !           488: 
        !           489: OPLTYPE,       FORARG,
        !           490:        SANY,   TANY,
        !           491:        SANY,   TWORD,
        !           492:                0,      RNULL,
        !           493:                "       pushl   AR\n",
        !           494: 
        !           495: OPLTYPE,       FORARG,
        !           496:        SANY,   TANY,
        !           497:        SANY,   TCHAR|TSHORT,
        !           498:                0,      RNULL,
        !           499:                "       cvtZRl  AR,-(sp)\n",
        !           500: 
        !           501: OPLTYPE,       FORARG,
        !           502:        SANY,   TANY,
        !           503:        SANY,   TUCHAR|TUSHORT,
        !           504:                0,      RNULL,
        !           505:                "       movzZRl AR,-(sp)\n",
        !           506: 
        !           507: OPLTYPE,       FORARG,
        !           508:        SANY,   TANY,
        !           509:        SANY,   TDOUBLE,
        !           510:                0,      RNULL,
        !           511:                "       movd    AR,-(sp)\n",
        !           512: 
        !           513: OPLTYPE,       FORARG,
        !           514:        SANY,   TANY,
        !           515:        SANY,   TFLOAT,
        !           516:                0,      RNULL,
        !           517:                "       cvtfd   AR,-(sp)\n",
        !           518: 
        !           519: #ifdef FORT
        !           520: UNARY MINUS,   INTAREG|FORCC,
        !           521:        SAREG|AWD,      TINT|TUNSIGNED|TLONG|TULONG|TFLOAT|TDOUBLE,
        !           522:        SANY,   TANY,
        !           523:                NAREG|NASL,     RESC1|RESCC,
        !           524:                "       mnegZL  TAL,A1\n",
        !           525: 
        !           526: #else
        !           527: 
        !           528: UNARY MINUS,   INTAREG|FORCC,
        !           529:        SAREG|AWD,      TINT|TUNSIGNED|TLONG|TULONG|TDOUBLE,
        !           530:        SANY,   TANY,
        !           531:                NAREG|NASL,     RESC1|RESCC,
        !           532:                "       mnegZL  AL,A1\n",
        !           533: #endif
        !           534: 
        !           535: COMPL, INTAREG|FORCC,
        !           536:        SAREG|AWD,      TINT|TUNSIGNED,
        !           537:        SANY,   TANY,
        !           538:                NAREG|NASL,     RESC1|RESCC,
        !           539:                "       mcomZL  AL,A1\n",
        !           540: 
        !           541: COMPL, INTAREG|FORCC,
        !           542:        SAREG|AWD,      ANYSIGNED|ANYUSIGNED,
        !           543:        SANY,   TANY,
        !           544:                NAREG|NASL,     RESC1|RESCC,
        !           545:                "       cvtZLl  AL,A1\n mcoml   A1,A1\n",
        !           546: 
        !           547: AND,   FORCC,
        !           548:        SAREG|AWD,      TWORD,
        !           549:        SCON,   TWORD,
        !           550:                0,      RESCC,
        !           551:                "       bitl    ZZ,AL\n",
        !           552: 
        !           553: AND,   FORCC,
        !           554:        SAREG|AWD,      TSHORT|TUSHORT,
        !           555:        SSCON,  TWORD,
        !           556:                0,      RESCC,
        !           557:                "       bitw    ZZ,AL\n",
        !           558: 
        !           559: AND,   FORCC,
        !           560:        SAREG|AWD,      TCHAR|TUCHAR,
        !           561:        SCCON,  TWORD,
        !           562:                0,      RESCC,
        !           563:                "       bitb    ZZ,AL\n",
        !           564: 
        !           565: ASG AND,       INAREG|FOREFF|FORCC,
        !           566:        SAREG,  TWORD,
        !           567:        SCON,   TWORD,
        !           568:                0,      RLEFT|RESCC,
        !           569:                "       bicl2   AR,AL\n",
        !           570: 
        !           571: ASG OPMUL,     INAREG|FOREFF|FORCC,
        !           572:        SAREG|AWD,      TINT|TUNSIGNED|TLONG|TULONG,
        !           573:        SAREG|AWD,      TINT|TUNSIGNED|TLONG|TULONG,
        !           574:                0,      RLEFT|RESCC,
        !           575:                "       OL2     AR,AL\n",
        !           576: 
        !           577: OPMUL, INAREG|INTAREG|FORCC,
        !           578:        STAREG, TINT|TUNSIGNED|TLONG|TULONG,
        !           579:        SAREG|AWD,      TINT|TUNSIGNED|TLONG|TULONG,
        !           580:                0,      RLEFT|RESCC,
        !           581:                "       OL2     AR,AL\n",
        !           582: 
        !           583: OPMUL, INAREG|INTAREG|FORCC,
        !           584:        SAREG|AWD,      TINT|TUNSIGNED|TLONG|TULONG,
        !           585:        SAREG|AWD,      TINT|TUNSIGNED|TLONG|TULONG,
        !           586:                NAREG|NASL|NASR,        RESC1|RESCC,
        !           587:                "       OL3     AR,AL,A1\n",
        !           588: 
        !           589: ASG MOD,       INAREG|INTAREG|FOREFF|FORCC,
        !           590:        SAREG,  TINT|TUNSIGNED|TLONG|TULONG,
        !           591:        SAREG|AWD,      TINT|TUNSIGNED|TLONG|TULONG,
        !           592:                NAREG,  RLEFT|RESCC,
        !           593:                "       divl3   AR,AL,A1\n      mull2   AR,A1\n subl2   A1,AL\n",
        !           594: 
        !           595: MOD,   INAREG|INTAREG,
        !           596:        SAREG|AWD,      TINT|TUNSIGNED|TLONG|TULONG,
        !           597:        SAREG|AWD,      TINT|TUNSIGNED|TLONG|TULONG,
        !           598:                NAREG,  RESC1,
        !           599:                "       divl3   AR,AL,A1\n      mull2   AR,A1\n subl3   A1,AL,A1\n",
        !           600: 
        !           601: ASG PLUS,      INAREG|FOREFF|FORCC,
        !           602:        SAREG,  TPOINT|TINT|TLONG|TUNSIGNED|TULONG,
        !           603:        SONE,   TINT|TLONG,
        !           604:                0,      RLEFT|RESCC,
        !           605:                "       incZL   AL\n",
        !           606: 
        !           607: ASG PLUS,      INAREG|FOREFF|FORCC,
        !           608:        AWD,    ANYSIGNED|ANYUSIGNED,
        !           609:        SONE,   TINT|TLONG,
        !           610:                0,      RLEFT|RESCC,
        !           611:                "       incZL   AL\n",
        !           612: 
        !           613: ASG PLUS,      INAREG|FOREFF|FORCC,
        !           614:        SAREG,  TSHORT|TCHAR,
        !           615:        SONE,   TINT|TLONG,
        !           616:                0,      RLEFT|RESCC,
        !           617:                "       incZL   AL\n    cvtZLl  AL,AL\n",
        !           618: 
        !           619: ASG PLUS,      INAREG|FOREFF|FORCC,
        !           620:        SAREG,  TUSHORT|TUCHAR,
        !           621:        SONE,   TINT|TLONG,
        !           622:                0,      RLEFT|RESCC,
        !           623:                "       incZL   AL\n    movzZLl AL,AL\n",
        !           624: 
        !           625: ASG MINUS,     INAREG|FOREFF|FORCC,
        !           626:        SAREG,  TPOINT|TINT|TLONG|TUNSIGNED|TULONG,
        !           627:        SONE,   TINT|TLONG,
        !           628:                0,      RLEFT|RESCC,
        !           629:                "       decZL   AL\n",
        !           630: 
        !           631: ASG MINUS,     INAREG|FOREFF|FORCC,
        !           632:        AWD,    ANYSIGNED|ANYUSIGNED,
        !           633:        SONE,   TINT|TLONG,
        !           634:                0,      RLEFT|RESCC,
        !           635:                "       decZL   AL\n",
        !           636: 
        !           637: ASG MINUS,     INAREG|FOREFF|FORCC,
        !           638:        SAREG,  TSHORT|TCHAR,
        !           639:        SONE,   TINT|TLONG,
        !           640:                0,      RLEFT|RESCC,
        !           641:                "       decZL   AL\n    cvtZLl  AL,AL\n",
        !           642: 
        !           643: ASG MINUS,     INAREG|FOREFF|FORCC,
        !           644:        SAREG,  TUSHORT|TUCHAR,
        !           645:        SONE,   TINT|TLONG,
        !           646:                0,      RLEFT|RESCC,
        !           647:                "       decZL   AL\n    movzZLl AL,AL\n",
        !           648: 
        !           649: PLUS,  INAREG|INTAREG|FORCC,
        !           650:        STAREG, TWORD,
        !           651:        SONE,   TWORD,
        !           652:                0,      RLEFT|RESCC,
        !           653:                "       incZL   AL\n",
        !           654: 
        !           655: PLUS,  INAREG|INTAREG|FORCC,
        !           656:        STAREG, TSHORT|TCHAR,
        !           657:        SONE,   TWORD,
        !           658:                0,      RLEFT|RESCC,
        !           659:                "       incZL   AL\n    cvtZLl  AL,AL\n",
        !           660: 
        !           661: PLUS,  INAREG|INTAREG|FORCC,
        !           662:        STAREG, TUSHORT|TUCHAR,
        !           663:        SONE,   TWORD,
        !           664:                0,      RLEFT|RESCC,
        !           665:                "       incZL   AL\n    movzZLl AL,AL\n",
        !           666: 
        !           667: MINUS, INAREG|INTAREG|FORCC,
        !           668:        STAREG, TWORD,
        !           669:        SONE,   TWORD,
        !           670:                0,      RLEFT|RESCC,
        !           671:                "       decZL   AL\n",
        !           672: 
        !           673: MINUS, INAREG|INTAREG|FORCC,
        !           674:        STAREG, TSHORT|TCHAR,
        !           675:        SONE,   TWORD,
        !           676:                0,      RLEFT|RESCC,
        !           677:                "       decZL   AL\n    cvtZLl  AL,AL\n",
        !           678: 
        !           679: MINUS, INAREG|INTAREG|FORCC,
        !           680:        STAREG, TUSHORT|TUCHAR,
        !           681:        SONE,   TWORD,
        !           682:                0,      RLEFT|RESCC,
        !           683:                "       decZL   AL\n    movzZLl AL,AL\n",
        !           684: 
        !           685: ASG OPSIMP,    INAREG|FOREFF|FORCC,
        !           686:        SAREG|AWD,      TWORD,
        !           687:        SAREG|AWD,      TWORD,
        !           688:                0,      RLEFT|RESCC,
        !           689:                "       OL2     AR,AL\n",
        !           690: 
        !           691: ASG OPSIMP,    INAREG|FOREFF|FORCC,
        !           692:        SAREG,  TWORD,
        !           693:        SAREG,  TSHORT|TUSHORT|TCHAR|TUCHAR,
        !           694:                0,      RLEFT|RESCC,
        !           695:                "       OL2     AR,AL\n",
        !           696: 
        !           697: ASG OPSIMP,    INAREG|FOREFF|FORCC,
        !           698:        AWD,    TSHORT|TUSHORT,
        !           699:        SAREG|AWD,      TSHORT|TUSHORT,
        !           700:                0,      RLEFT|RESCC,
        !           701:                "       OW2     AR,AL\n",
        !           702: 
        !           703: ASG OPSIMP,    INAREG|FOREFF|FORCC,
        !           704:        AWD,    TSHORT|TUSHORT,
        !           705:        SSCON,  TWORD,
        !           706:                0,      RLEFT|RESCC,
        !           707:                "       OW2     AR,AL\n",
        !           708: 
        !           709: ASG OPSIMP,    INAREG|FOREFF|FORCC,
        !           710:        AWD,    TCHAR|TUCHAR,
        !           711:        SAREG|AWD,      TCHAR|TUCHAR,
        !           712:                0,      RLEFT|RESCC,
        !           713:                "       OB2     AR,AL\n",
        !           714: 
        !           715: ASG OPSIMP,    INAREG|FOREFF|FORCC,
        !           716:        AWD,    TCHAR|TUCHAR,
        !           717:        SCCON,  TWORD,
        !           718:                0,      RLEFT|RESCC,
        !           719:                "       OB2     AR,AL\n",
        !           720: 
        !           721: ASG OPSIMP,    INAREG|FOREFF|FORCC,
        !           722:        SAREG,  TSHORT,
        !           723:        SAREG|AWD,      ANYFIXED,
        !           724:                0,      RLEFT|RESCC,
        !           725:                "       OW2     AR,AL\n cvtZLl  AL,AL\n",
        !           726: 
        !           727: ASG OPSIMP,    INAREG|FOREFF|FORCC,
        !           728:        SAREG,  TUSHORT,
        !           729:        SAREG|AWD,      ANYFIXED,
        !           730:                0,      RLEFT|RESCC,
        !           731:                "       OW2     AR,AL\n movzZLl AL,AL\n",
        !           732: 
        !           733: ASG OPSIMP,    INAREG|FOREFF|FORCC,
        !           734:        SAREG,  TCHAR,
        !           735:        SAREG|AWD,      ANYFIXED,
        !           736:                0,      RLEFT|RESCC,
        !           737:                "       OB2     AR,AL\n cvtZLl  AL,AL\n",
        !           738: 
        !           739: ASG OPSIMP,    INAREG|FOREFF|FORCC,
        !           740:        SAREG,  TUCHAR,
        !           741:        SAREG|AWD,      ANYFIXED,
        !           742:                0,      RLEFT|RESCC,
        !           743:                "       OB2     AR,AL\n movzZLl AL,AL\n",
        !           744: 
        !           745: OPSIMP,        INAREG|INTAREG|FORCC,
        !           746:        STAREG, ANYFIXED,
        !           747:        SAREG|AWD,      TWORD,
        !           748:                0,      RLEFT|RESCC,
        !           749:                "       OL2     AR,AL\n",
        !           750: 
        !           751: OPSIMP,        INAREG|INTAREG|FORCC,
        !           752:        SAREG|AWD,      TWORD,
        !           753:        SAREG|AWD,      TWORD,
        !           754:                NAREG|NASL|NASR,        RESC1|RESCC,
        !           755:                "       OL3     AR,AL,A1\n",
        !           756: 
        !           757: ASG OPFLOAT,   INAREG|FOREFF|FORCC,
        !           758:        SAREG|AWD,      TDOUBLE,
        !           759:        SAREG|AWD,      TDOUBLE,
        !           760:                0,      RLEFT|RESCC,
        !           761:                "       OD2     AR,AL\n",
        !           762: 
        !           763: ASG OPFLOAT,   INAREG|FOREFF|FORCC,
        !           764:        SAREG|AWD,      TFLOAT,
        !           765:        SAREG|AWD,      TFLOAT,
        !           766:                0,      RLEFT|RESCC,
        !           767:                "       OF2     AR,AL\n",
        !           768: 
        !           769: ASG OPFLOAT,   INAREG|FOREFF|FORCC,
        !           770:        SAREG|AWD,      TDOUBLE,
        !           771:        SAREG|AWD,      TFLOAT,
        !           772:                NAREG,  RLEFT|RESCC,
        !           773:                "       cvtfd   AR,A1\n OD2     A1,AL\n",
        !           774: 
        !           775: ASG OPFLOAT,   INAREG|INTAREG|FOREFF|FORCC,
        !           776:        SAREG|AWD,      TFLOAT,
        !           777:        SAREG|AWD,      TDOUBLE,
        !           778:                NAREG,  RLEFT|RESC1|RESCC,
        !           779:                "       cvtfd   AL,A1\n OD2     AR,A1\n cvtdf   A1,AL\n",
        !           780: 
        !           781: OPFLOAT,       INAREG|INTAREG|FORCC,
        !           782:        STAREG, TDOUBLE,
        !           783:        SAREG|AWD,      TDOUBLE,
        !           784:                0,      RLEFT|RESCC,
        !           785:                "       OD2     AR,AL\n",
        !           786: 
        !           787: OPFLOAT,       INAREG|INTAREG|FORCC,
        !           788:        SAREG|AWD,      TDOUBLE,
        !           789:        SAREG|AWD,      TDOUBLE,
        !           790:                NAREG|NASL|NASR,        RESC1|RESCC,
        !           791:                "       OD3     AR,AL,A1\n",
        !           792: 
        !           793: OPFLOAT,       INAREG|INTAREG|FORCC,
        !           794:        SAREG|AWD,      TFLOAT,
        !           795:        SAREG|AWD,      TDOUBLE,
        !           796:                NAREG|NASL,     RESC1|RESCC,
        !           797:                "       cvtfd   AL,A1\n OD2     AR,A1\n",
        !           798: 
        !           799: OPFLOAT,       INAREG|INTAREG|FORCC,
        !           800:        SAREG|AWD,      TDOUBLE,
        !           801:        SAREG|AWD,      TFLOAT,
        !           802:                NAREG|NASR,     RESC1|RESCC,
        !           803:                "       cvtfd   AR,A1\n OD3     A1,AL,A1\n",
        !           804: 
        !           805: #ifdef FORT
        !           806: OPFLOAT,       INAREG|INTAREG|FORCC,
        !           807:        STAREG, TFLOAT,
        !           808:     SAREG|AWD,  TFLOAT,
        !           809:                0,      RLEFT|RESCC,
        !           810:                "       OF2     TAR,AL\n",
        !           811: 
        !           812: OPFLOAT,       INAREG|INTAREG|FORCC,
        !           813:        SAREG|AWD,      TFLOAT,
        !           814:        SAREG|AWD,      TFLOAT,
        !           815:                NAREG|NASL|NASR,        RESC1|RESCC,
        !           816:                "       OF3     AR,AL,TA1\n",
        !           817: 
        !           818: #else
        !           819: OPFLOAT,       INAREG|INTAREG|FORCC,
        !           820:        SAREG|AWD,      TFLOAT,
        !           821:        SAREG|AWD,      TFLOAT,
        !           822:                NAREG|NASL|NASR,        RESC1|RESCC,
        !           823:                "       OF3     AR,AL,A1\n      cvtfd   A1,A1\n",
        !           824: #endif
        !           825: 
        !           826:        /* Default actions for hard trees ... */
        !           827: 
        !           828: # define DF(x) FORREW,SANY,TANY,SANY,TANY,REWRITE,x,""
        !           829: 
        !           830: UNARY MUL, DF( UNARY MUL ),
        !           831: 
        !           832: INCR, DF(INCR),
        !           833: 
        !           834: DECR, DF(INCR),
        !           835: 
        !           836: ASSIGN, DF(ASSIGN),
        !           837: 
        !           838: STASG, DF(STASG),
        !           839: 
        !           840: FLD, DF(FLD),
        !           841: 
        !           842: OPLEAF, DF(NAME),
        !           843: 
        !           844: OPLOG, FORCC,
        !           845:        SANY,   TANY,
        !           846:        SANY,   TANY,
        !           847:                REWRITE,        BITYPE,
        !           848:                "",
        !           849: 
        !           850: OPLOG, DF(NOT),
        !           851: 
        !           852: COMOP, DF(COMOP),
        !           853: 
        !           854: INIT, DF(INIT),
        !           855: 
        !           856: OPUNARY, DF(UNARY MINUS),
        !           857: 
        !           858: 
        !           859: ASG OPANY, DF(ASG PLUS),
        !           860: 
        !           861: OPANY, DF(BITYPE),
        !           862: 
        !           863: FREE,  FREE,   FREE,   FREE,   FREE,   FREE,   FREE,   FREE,   "help; I'm in trouble\n" };

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.