1 /* BEGIN INCLUDE FILE ... object_info.incl.pl1 2 coded February 8, 1972 by Michael J. Spier */ 3 /* modified May 26, 1972 by M. Weaver */ 4 /* modified 15 April, 1975 by M. Weaver */ 5 6 declare 1 object_info aligned based, /* structure containing object info based, returned by object_info_ */ 7 2 version_number fixed bin, /* version number of current structure format (=2) */ 8 2 textp pointer, /* pointer to beginning of text section */ 9 2 defp pointer, /* pointer to beginning of definition section */ 10 2 linkp pointer, /* pointer to beginning of linkage section */ 11 2 statp pointer, /* pointer to beginning of static section */ 12 2 symbp pointer, /* pointer to beginning of symbol section */ 13 2 bmapp pointer, /* pointer to beginning of break map (may be null) */ 14 2 tlng fixed bin, /* length in words of text section */ 15 2 dlng fixed bin, /* length in words of definition section */ 16 2 llng fixed bin, /* length in words of linkage section */ 17 2 ilng fixed bin, /* length in words of static section */ 18 2 slng fixed bin, /* length in words of symbol section */ 19 2 blng fixed bin, /* length in words of break map */ 20 2 format, /* word containing bit flags about object type */ 21 3 old_format bit(1) unaligned, /* on if segment isn't in new format, i.e. has old style object map */ 22 3 bound bit(1) unaligned, /* on if segment is bound */ 23 3 relocatable bit(1) unaligned, /* on if seg has relocation info in its first symbol block */ 24 3 procedure bit(1) unaligned, /* on if segment is an executable object program */ 25 3 standard bit(1) unaligned, /* on if seg is in standard format (more than just standard map) */ 26 3 gate bit(1) unaligned, /* on if segment is a gate */ 27 3 separate_static bit(1) unaligned, /* on if static not in linkage */ 28 3 links_in_text bit(1) unaligned, /* on if there are threaded links in text */ 29 3 perprocess_static bit (1) unaligned, /* on if static is not to be per run unit */ 30 3 pad bit(27) unaligned, 31 2 entry_bound fixed bin, /* entry bound if segment is a gate */ 32 2 textlinkp pointer, /* ptr to first link in text */ 33 34 /* LIMIT OF BRIEF STRUCTURE */ 35 36 2 compiler char(8) aligned, /* name of processor which generated segment */ 37 2 compile_time fixed bin(71), /* clock reading of date/time object was generated */ 38 2 userid char(32) aligned, /* standard Multics id of creator of object segment */ 39 2 cvers aligned, /* generator version name in printable char string form */ 40 3 offset bit(18) unaligned, /* offset of name in words relative to base of symbol section */ 41 3 length bit(18) unaligned, /* length of name in characters */ 42 2 comment aligned, /* printable comment concerning generator or generation of segment */ 43 3 offset bit(18) unaligned, /* offset of comment in words relative to base of symbol section */ 44 3 length bit(18) unaligned, /* length of comment in characters */ 45 2 source_map fixed bin, /* offset, relative to base of symbol section, of source map structure */ 46 47 /* LIMIT OF DISPLAY STRUCTURE */ 48 49 2 rel_text pointer, /* pointer to text section relocation info */ 50 2 rel_def pointer, /* pointer to definition section relocation info */ 51 2 rel_link pointer, /* pointer to linkage section relocation info */ 52 2 rel_static pointer, /* pointer to static section relocation info */ 53 2 rel_symbol pointer, /* pointer to symbol section relocation info */ 54 2 text_boundary fixed bin, /* specifies mod of text section base boundary */ 55 2 static_boundary fixed bin, /* specifies mod of internal static base boundary */ 56 /* currently not used by system */ 57 2 default_truncate fixed bin, /* offset rel to symbp for binder to automatically trunc. symb sect. */ 58 2 optional_truncate fixed bin; /* offset rel to symbp for binder to optionally trunc. symb sect. */ 59 60 declare object_info_version_2 fixed bin int static init(2); 61 62 /* END INCLUDE FILE ... object_info.incl.pl1 */