Annotation of cci/usr/src/lib/pcc/table.c, revision 1.1

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