Annotation of 43BSD/lib/pcc/mac2defs.h, revision 1.1

1.1     ! root        1: /*     mac2defs.h      4.2     85/08/23        */
        !             2: 
        !             3: /*
        !             4:  * VAX-11/780 Registers
        !             5:  */
        !             6: 
        !             7: /*
        !             8:  * Scratch registers
        !             9:  */
        !            10: #define R0     0
        !            11: #define R1     1
        !            12: #define R2     2
        !            13: #define R3     3
        !            14: #define R4     4
        !            15: #define R5     5
        !            16: 
        !            17: /*
        !            18:  * Register variables
        !            19:  */
        !            20: #define R6     6
        !            21: #define R7     7
        !            22: #define R8     8
        !            23: #define R9     9
        !            24: #define R10    10
        !            25: #define R11    11
        !            26: 
        !            27: /*
        !            28:  * Special purpose registers
        !            29:  */
        !            30: #define AP     12              /* argument pointer */
        !            31: #define FP     13              /* frame pointer */
        !            32: #define SP     14              /* stack pointer */
        !            33: #define PC     15              /* program counter */
        !            34: 
        !            35: #define REGSZ  16
        !            36: #define TMPREG FP
        !            37: 
        !            38: #define R2REGS 1               /* permit double indexing */
        !            39: 
        !            40: extern int fregs;
        !            41: extern int maxargs;
        !            42: 
        !            43: #define BYTEOFF(x)     ((x)&03)
        !            44: #define wdal(k)                (BYTEOFF(k)==0)         /* word align */
        !            45: #define BITOOR(x)      ((x)>>3)                /* bit offset to oreg offset */
        !            46: 
        !            47: /*
        !            48:  * Some macros used in store():
        !            49:  *     just evaluate the arguments, and be done with it...
        !            50:  */
        !            51: #define STOARG(p)
        !            52: #define STOFARG(p)
        !            53: #define STOSTARG(p)
        !            54: #define genfcall(a,b)  gencall(a,b)
        !            55: 
        !            56: /*
        !            57:  * Some short routines that get called an awful lot are actually macros.
        !            58:  */
        !            59: #if defined(FORT) || defined(SPRECC)
        !            60: #define        szty(t) ((t) == DOUBLE ? 2 : 1)
        !            61: #else
        !            62: #define        szty(t) (((t) == DOUBLE || (t) == FLOAT) ? 2 : 1)
        !            63: #endif
        !            64: #define        shltype(o, p) \
        !            65:        ((o) == REG || (o) == NAME || (o) == ICON || \
        !            66:         (o) == OREG || ((o) == UNARY MUL && shumul((p)->in.left)))
        !            67: #define        ncopy(q, p)     ((q)->in = (p)->in)
        !            68: 
        !            69: #define MYREADER(p) myreader(p)
        !            70: int    optim2();
        !            71: 
        !            72: /* This indicates there are no additional special shapes, see match.c */
        !            73: #define special(a, b)  0

unix.superglobalmegacorp.com

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