1736Speter /* Copyright (c) 1979 Regents of the University of California */ 2736Speter 3*3171Smckusic /* static char sccsid[] = "@(#)objfmt.h 1.6 03/10/81"; */ 4736Speter 5736Speter #ifdef OBJ 6736Speter /* 7736Speter * the creation time, the size and the magic number of the obj file 8736Speter */ 9736Speter struct pxhdr { 102948Smckusic long maketime; 112948Smckusic long objsize; 12736Speter short magicnum; 13736Speter }; 14736Speter 15736Speter # define HEADER_BYTES 1024 /* the size of px_header */ 161210Speter # define PX_HEADER "/usr/lib/px_header" /* px_header's name */ 172948Smckusic # define PI_COMP "/usr/ucb/pi" /* the compiler's name */ 181210Speter # define PX_INTRP "/usr/ucb/px" /* the interpreter's name */ 192088Smckusic # define INDX 1 /* amt to shift display index */ 20736Speter #endif OBJ 21736Speter 22736Speter /* 23736Speter * the file of error messages created by mkstr 24736Speter */ 25736Speter #ifdef OBJ 26736Speter # define ERR_STRNGS "/usr/lib/pi2.0strings" 27736Speter # define ERR_PATHLEN 9 282948Smckusic # define HOW_STRNGS "/usr/lib/how_pi\0" 292948Smckusic # define HOW_PATHLEN 9 30736Speter #endif OBJ 31736Speter #ifdef PC 32736Speter # define ERR_STRNGS "/usr/lib/pc2.0strings" 33736Speter # define ERR_PATHLEN 9 342948Smckusic # define HOW_STRNGS "/usr/lib/how_pc\0" 352948Smckusic # define HOW_PATHLEN 9 36736Speter #endif PC 37736Speter 38736Speter /* 39736Speter * these are because of varying sizes of pointers 40736Speter */ 41736Speter #ifdef VAX 42736Speter # define PTR_AS O_AS4 43736Speter # define PTR_RV O_RV4 44736Speter # define PTR_IND O_IND4 452948Smckusic # define PTR_CON O_CON4 462948Smckusic # define PTR_DUP O_SDUP4 47*3171Smckusic # define CON_INT O_CON24 48*3171Smckusic # define INT_TYP (nl + T4INT) 49736Speter # define PTR_DCL unsigned long /* for pointer variables */ 50736Speter # define SHORTADDR 32768 /* maximum short address */ 51736Speter # define TOOMUCH 65536 /* maximum variable size */ 52736Speter # define MAXSET 65536 /* maximum set size */ 53736Speter /* 54736Speter * Offsets due to the structure of the runtime stack. 55736Speter * DPOFF1 is the amount of fixed storage in each block allocated 56736Speter * as local variables for the runtime system. 57736Speter * since locals are allocated negative offsets, 58736Speter * -DPOFF1 is the last used implicit local offset. 59736Speter * DPOFF2 is the size of the block mark. 60736Speter * since arguments are allocated positive offsets, 61736Speter * DPOFF2 is the end of the implicit arguments. 62736Speter * for obj, the first argument has the highest offset 63736Speter * from the stackpointer. and the block mark is an 64736Speter * implicit last parameter. 65736Speter * for pc, the first argument has the lowest offset 66736Speter * from the argumentpointer. and the block mark is an 67736Speter * implicit first parameter. 68736Speter */ 69736Speter # ifdef OBJ 70736Speter # define DPOFF1 0 71736Speter # define DPOFF2 32 72736Speter # define INPUT_OFF -8 /* offset of `input' */ 73736Speter # define OUTPUT_OFF -4 /* offset of `output' */ 74736Speter # endif OBJ 75736Speter # ifdef PC 76736Speter # define DPOFF1 ( sizeof rtlocs - sizeof rtlocs.unwind ) 77736Speter # define DPOFF2 ( sizeof (long) ) 78736Speter # define INPUT_OFF 0 79736Speter # define OUTPUT_OFF 0 80736Speter # endif PC 81736Speter # define MAGICNUM 0403 /* obj magic number */ 82736Speter #endif VAX 83736Speter 84736Speter #ifdef PDP11 85736Speter # define PTR_AS O_AS2 86736Speter # define PTR_RV O_RV2 87736Speter # define PTR_IND O_IND2 882948Smckusic # define PTR_CON O_CON2 892948Smckusic # define PTR_DUP O_SDUP2 90*3171Smckusic # define CON_INT O_CON2 91*3171Smckusic # define INT_TYP (nl + T2INT) 92736Speter # define PTR_DCL char * 93736Speter # define TOOMUCH 50000 94736Speter # define SHORTADDR 65536 952948Smckusic # define MAXSET 65536 /* maximum set size */ 962948Smckusic # define DPOFF1 0 972948Smckusic # define DPOFF2 18 /* sizeof(struct stack) */ 98736Speter # define INPUT_OFF -2 99736Speter # define OUTPUT_OFF -4 100736Speter # define MAGICNUM 0404 101736Speter #endif PDP11 102