Annotation of coherent/a/usr/include.b4ps2/coff/scnhdr.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * COFF section header file.
                      3:  */
                      4: 
                      5: struct scnhdr {
                      6:        char            s_name[8];      /* section name */
                      7:        long            s_paddr;        /* physical address, aliased s_nlib */
                      8:        long            s_vaddr;        /* virtual address */
                      9:        long            s_size;         /* section size */
                     10:        long            s_scnptr;       /* file ptr to raw data for section */
                     11:        long            s_relptr;       /* file ptr to relocation */
                     12:        long            s_lnnoptr;      /* file ptr to line numbers */
                     13:        unsigned short  s_nreloc;       /* number of relocation entries */
                     14:        unsigned short  s_nlnno;        /* number of line number entries */
                     15:        long            s_flags;        /* flags */
                     16:        };
                     17: 
                     18: /* the number of shared libraries in a .lib section in an absolute output file
                     19:  * is put in the s_paddr field of the .lib section header, the following define
                     20:  * allows it to be referenced as s_nlib
                     21:  */
                     22: 
                     23: #define s_nlib s_paddr
                     24: #define        SCNHDR  struct scnhdr
                     25: #define        SCNHSZ  sizeof(SCNHDR)
                     26: 
                     27: 
                     28: 
                     29: 
                     30: /*
                     31:  * Define constants for names of "special" sections
                     32:  */
                     33: 
                     34: #define _TEXT ".text"
                     35: #define _DATA ".data"
                     36: #define _BSS  ".bss"
                     37: #define _TV  ".tv"
                     38: #define _INIT ".init"
                     39: #define _FINI ".fini"
                     40: 
                     41: 
                     42: 
                     43: 
                     44: /*
                     45:  * The low 2 bytes of s_flags is used as a section "type"
                     46:  */
                     47: 
                     48: #define STYP_REG       0x00            /* "regular" section:
                     49:                                                allocated, relocated, loaded */
                     50: #define STYP_DSECT     0x01            /* "dummy" section:
                     51:                                                not allocated, relocated,
                     52:                                                not loaded */
                     53: #define STYP_NOLOAD    0x02            /* "noload" section:
                     54:                                                allocated, relocated,
                     55:                                                 not loaded */
                     56: #define STYP_GROUP     0x04            /* "grouped" section:
                     57:                                                formed of input sections */
                     58: #define STYP_PAD       0x08            /* "padding" section:
                     59:                                                not allocated, not relocated,
                     60:                                                 loaded */
                     61: #define STYP_COPY      0x10            /* "copy" section:
                     62:                                                for decision function used
                     63:                                                by field update;  not
                     64:                                                allocated, not relocated,
                     65:                                                loaded;  reloc & lineno
                     66:                                                entries processed normally */
                     67: #define STYP_INFO      0x200           /* comment section : not allocated
                     68:                                                not relocated, not loaded */
                     69: #define STYP_LIB       0x800           /* for .lib section : same as INFO */
                     70: #define STYP_OVER      0x400           /* overlay section : relocated
                     71:                                                not allocated or loaded */
                     72: #define        STYP_TEXT       0x20            /* section contains text only */
                     73: #define STYP_DATA      0x40            /* section contains data only */
                     74: #define STYP_BSS       0x80            /* section contains bss only */
                     75: 
                     76: /*
                     77:  *  In a minimal file or an update file, a new function
                     78:  *  (as compared with a replaced function) is indicated by S_NEWFCN
                     79:  */
                     80: 
                     81: #define S_NEWFCN  0x100
                     82: 
                     83: /*
                     84:  * In 3b Update Files (output of ogen), sections which appear in SHARED
                     85:  * segments of the Pfile will have the S_SHRSEG flag set by ogen, to inform
                     86:  * dufr that updating 1 copy of the proc. will update all process invocations.
                     87:  */
                     88: 
                     89: #define S_SHRSEG       0x20

unix.superglobalmegacorp.com

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