Annotation of coherent/b/bin/c/n1/i386/tables/sub.t, revision 1.1.1.1

1.1       root        1: //////////
                      2: / n1/i386/tables/sub.t
                      3: //////////
                      4: 
                      5: /////////
                      6: /
                      7: / Subtraction (-).
                      8: / OP0 is ZSUB, OP1 is ZDEC.
                      9: / Identical to add.t except for the _drsub call and pointer-pointer,
                     10: / I would like them to be one file again but don't see how to do it.
                     11: /
                     12: /////////
                     13: 
                     14: SUB:
                     15: 
                     16: / Dword op 1.
                     17: %      PEFFECT|PVALUE|PSREL|P_SLT
                     18:        DWORD           ANYR    ANYR    *       TEMP
                     19:                TREG            DWORD
                     20:                1|MMX           *
                     21:                        [OP1]   [R]
                     22:                [IFR]   [REL0]  [LAB]
                     23: 
                     24: / Pointer - pointer.
                     25: / This should not get executed for addition.
                     26: / Only RVALUE contexts need to be done.
                     27: %      PVALUE
                     28:        LONG            ANYR    *       *       TEMP
                     29:                DIR|IMM|MMX     PTX
                     30:                DIR|IMM|MMX     PTX
                     31:                        [ZMOV]  [R],[AL]
                     32:                        [OP0]   [R],[AR]
                     33: 
                     34: / Dword op dword.
                     35: %      PEFFECT|PVALUE|PSREL|P_SLT
                     36:        DWORD           ANYR    ANYR    *       TEMP
                     37:                TREG            DWORD
                     38:                ADR|IMM         DWORD
                     39:                        [OP0]   [R],[AR]
                     40:                [IFR]   [REL0]  [LAB]
                     41: 
                     42: //////////
                     43: / Floating point.
                     44: //////////
                     45: 
                     46: / DECVAX or IEEE software floating point.
                     47: / Double - double.
                     48: %      PEFFECT|PVALUE|P_SLT|PDECVAX|PIEEE
                     49:        FF64            EDXEAX  EDXEAX  *       TEMP
                     50:                TREG            FF64
                     51:                ADR|IMM         FF64
                     52:                        [ZPUSH] [HI AR]
                     53:                        [ZPUSH] [LO AR]
                     54:                        [ZCALL] [GID _drsub]
                     55:                        [ZADD]  [REGNO ESP],[CONST 8]
                     56: 
                     57: / Hardware coprocessor (NDP) floating point.
                     58: %      PVALUE|P_SLT|PNDP
                     59:        FLOAT           FPAC    FPAC    *       FPAC
                     60:                TREG            FF64
                     61:                ADR             NDPARG
                     62:                        [TR ZFSUBD] [AR]
                     63: 
                     64: //////////
                     65: / end of n1/i386/tables/sub.t
                     66: //////////

unix.superglobalmegacorp.com

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