COMPILATION LISTING OF SEGMENT cobol_fixup Compiled by: Multics PL/I Compiler, Release 31b, of April 24, 1989 Compiled at: Bull HN, Phoenix AZ, System-M Compiled on: 05/24/89 0951.2 mst Wed Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) BULL HN Information Systems Inc., 1989 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 6* * * 7* * Copyright (c) 1972 by Massachusetts Institute of * 8* * Technology and Honeywell Information Systems, Inc. * 9* * * 10* *********************************************************** */ 11 12 13 14 15 /****^ HISTORY COMMENTS: 16* 1) change(89-04-23,Zimmerman), approve(89-04-23,MCR8060), 17* audit(89-05-05,RWaters), install(89-05-24,MR12.3-1048): 18* MCR8060 cobol_fixup.pl1 Reformatted code to new Cobol standard. 19* END HISTORY COMMENTS */ 20 21 22 /* Modified on 04/01/81 by FCH, fix decl for map_data_table, [4.4-1], BUG472(TR8869,8970) */ 23 /* Modified on 5/16/80 by FCH, [4.2-1], compute size of DEF table */ 24 /* Modified on 11/07/78 by FCH, [3.0-1], type31 evaluation */ 25 /* Modified since Version 3.0 */ 26 27 /* format: style3 */ 28 cobol_fixup: 29 proc (value_ptr); 30 31 dcl val (7) fixed bin aligned based (value_ptr); 32 dcl segptr (4) ptr; 33 34 dcl wptr ptr; /* points to word to be set in cobol_text */ 35 dcl halfword (0:1) bit (18) based (wptr); 36 dcl 1 instr based (wptr) aligned, 37 2 address bit (18) unaligned, 38 2 fill bit (14) unaligned, 39 2 reg bit (4) unaligned; 40 41 42 dcl bytes char (8) based; 43 44 dcl (i, j, k) fixed bin; 45 dcl utemp fixed bin; 46 dcl 1 map_data_table aligned based (cobol_$map_data_ptr), 47 2 no_source_stmts fixed bin aligned, 48 2 data (0 refer (map_data_table.no_source_stmts)), 49 3 line_no fixed bin unaligned, 50 3 text_addr fixed bin unaligned, /*[4.4-1]*/ 51 3 col fixed bin unal, /*[4.4-1]*/ 52 3 label bit unal; 53 54 55 /*************************************/ 56 start_fixup: /* [3.0-1] */ 57 call eval_equate; 58 59 segptr (1) = cobol_$text_base_ptr; 60 segptr (2) = cobol_$def_base_ptr; 61 segptr (3) = cobol_$link_base_ptr; 62 segptr (4) = cobol_$sym_base_ptr; 63 64 if fixup_table.count > 0 65 then do i = 1 to fixup_table.count; 66 67 if table.type (i) = (4)"0"b 68 then do; /* tag type fixup */ 69 70 wptr = addrel (cobol_$text_base_ptr, table.offset (i)); 71 j = table.tag_number (i); /* [3.0-1] 72* if TAG.tag_table(j) < 0 then do while(TAG.tag_table(j) < 0); 73* j = -TAG.tag_table(j); 74* end; 75**/ 76 k = TAG.tag_table (j); /* the real offset in cobol_text_seg */ 77 78 if k = 0 79 then go to fixup_error; 80 81 utemp = fixed (instr.address, 18) + k; 82 instr.address = substr (unspec (utemp), 19, 18); 83 84 end; 85 else do; /* general "section-related" fixup */ 86 87 j = fixed (table.location.half (i), 1); 88 k = fixed (table.type (i), 4); 89 wptr = addrel (segptr (fixed (table.base (i), 3)), table.offset (i)); 90 utemp = fixed (halfword (j), 18); 91 92 if k ^= 15 93 then do; 94 if table.operation (i) 95 then utemp = utemp - val (k); 96 else utemp = utemp + val (k); 97 end; 98 else utemp = utemp + map_data_table.no_source_stmts * 2 + 2; 99 100 halfword (j) = substr (unspec (utemp), 19, 18); 101 end; 102 103 fix_cont: 104 end; 105 106 return; 107 108 /* [3.0-1] */ 109 110 eval_equate: 111 proc; 112 113 /**/ 114 declare (i, new, old, tt, tn, val) 115 fixed bin; /**/ 116 /**/ 117 if DEF.tag_max = 0 118 then return; /**/ 119 /**/ 120 do while ("1"b); /**/ 121 /**/ 122 new, old = 0; /**/ 123 /**/ 124 do i = 1 by 1 to DEF.tag_max; /**/ 125 /**/ 126 tt = TAG.tag_table (i); /**/ 127 tn = TAG.tag_no (i); /**/ 128 /**/ 129 if tt = 0 /**/ 130 then if tn ^= 0 /**/ 131 then do; 132 val = TAG.tag_table (tn);/**/ 133 /**/ 134 /**/ 135 if val ^= 0 /**/ 136 then do; 137 TAG.tag_table (i) = val; 138 /**/ 139 new = 1; /**/ 140 end; /**/ 141 end; /**/ 142 old = 1; /**/ 143 end; /**/ 144 /**/ 145 if new = 0 | old = 0 146 then return; /**/ 147 /**/ 148 end; 149 end; 150 151 /* [3.0-1] */ 152 153 /*************************************/ 154 155 cobol_define_tag: 156 entry (tagno); 157 158 /* dcl tagno fixed bin; /* internal tag number (input) */ 159 160 start_define_tag: /*[3.0-1]*/ 161 if tagno = 0 162 then return; 163 164 if TAG.tag_table (tagno) > 0 165 then go to define_error; 166 167 TAG.tag_table (tagno) = cobol_$text_wd_off; 168 call cobol_reset_r$in_line; 169 170 /*[4.2-1]*/ 171 DEF.tag_max = max (DEF.tag_max, tagno); 172 173 return; 174 175 176 /*************************************/ 177 178 cobol_define_tag_nc: 179 entry (tagno, locno); 180 181 dcl tagno fixed bin; /* internal tag number (input) */ 182 dcl locno fixed bin; /* wd offset in cobol_text_seg (input) */ 183 184 start_define_tag_nc: /*[3.0-1]*/ 185 if tagno = 0 186 then return; 187 188 if TAG.tag_table (tagno) > 0 189 then go to define_error; 190 TAG.tag_table (tagno) = locno; 191 192 /*[4.2-1]*/ 193 DEF.tag_max = max (DEF.tag_max, tagno); 194 195 return; 196 197 198 /*************************************/ 199 200 cobol_equate_tag: 201 entry (token31_ptr); 202 203 dcl token31_ptr ptr; /* ptr to a type 31 token (input)*/ 204 205 206 dcl 1 token31 based (token31_ptr), 207 2 header, 208 3 size fixed bin (15), 209 3 line fixed bin (15), 210 3 column fixed bin (7), 211 3 type fixed bin (7), 212 2 body, 213 3 verb fixed bin (15), 214 3 tagno1 fixed bin (15), 215 3 tagno2 fixed bin (15); 216 217 start_equate_tag: /* [3.0-1] */ 218 if TAG.tag_table (token31.tagno1) = 0 /* [3.0-1] */ 219 then TAG.tag_table (token31.tagno1) = TAG.tag_table (token31.tagno2); 220 221 /* [3.0-1] */ 222 TAG.tag_no (token31.tagno1) = token31.tagno2; 223 224 /*[4.2-1]*/ 225 DEF.tag_max = max (DEF.tag_max, token31.tagno1, token31.tagno2); 226 227 return; 228 229 230 /*************************************/ 231 232 cobol_make_tagref: 233 entry (tagno, locno, instr_ptr); 234 235 /* dcl tagno fixed bin; /* internal tag number (input) */ 236 /* dcl locno fixed bin; /* wd offset in cobol_text_seg (input) */ 237 dcl instr_ptr ptr; /* ptr to instr wd if non-null (input) */ 238 239 start_make_tagref: 240 if instr_ptr = null () 241 then wptr = addrel (cobol_$text_base_ptr, locno); 242 else wptr = instr_ptr; 243 instr.reg = "0100"b; /* IC modification */ 244 245 if TAG.tag_table (tagno) > 0 246 then do; 247 utemp = TAG.tag_table (tagno) - locno; 248 instr.address = substr (unspec (utemp), 19, 18); 249 end; 250 else do; /* tag not yet defined - make fixup */ 251 fixdef.wd1 = locno; 252 fixdef.wd2 = tagno; 253 utemp = -locno; 254 instr.address = substr (unspec (utemp), 19, 18); 255 i = fixup_table.count * 8 + 5; 256 substr (cobol_$fixup_ptr -> bytes, i, 8) = substr (addr (fixdef) -> bytes, 1, 8); 257 fixup_table.count = fixup_table.count + 1; 258 end; 259 260 /*[4.2-1]*/ 261 DEF.tag_max = max (DEF.tag_max, tagno); 262 return; 263 264 265 /*************************************/ 266 cobol_make_fixup: 267 entry (fix_ptr); 268 269 dcl fix_ptr ptr; /* pointer to fixup directive (input) */ 270 271 start_make_fixup: 272 i = fixup_table.count * 8 + 5; 273 substr (cobol_$fixup_ptr -> bytes, i, 8) = substr (fix_ptr -> bytes, 1, 8); 274 fixup_table.count = fixup_table.count + 1; 275 return; 276 277 278 /*************************************/ 279 fixup_error: 280 error_info.name = "cobol_fixup"; 281 call ioa_$rsnnl ("Inconsistency in fixup table entry^d->^d at location ^o (before fixup)", message, message_len, 282 i, j, table.offset (i)); 283 call signal_ ("command_abort_", null (), addr (error_info)); 284 go to fix_cont; 285 286 define_error: 287 error_info.name = "cobol_define_tag"; 288 call ioa_$rsnnl ("Attempt to multiply define tag #^d", message, message_len, tagno); 289 go to error; 290 291 equate_error: 292 error_info.name = "cobol_equate_error"; 293 call ioa_$rsnnl ("Inconsistency in Type 31 token - setting ^d = ^d", message, message_len, token31.tagno1, 294 token31.tagno2); 295 go to error; 296 297 error: 298 call signal_ ("command_abort_", null (), addr (error_info)); 299 300 /*************************************/ 1 1 1 2 /* 1 3* 1 4* 1 5*cobol_fixup: proc(value_ptr); 1 6* 1 7* dcl val (7) fixed bin aligned based(value_ptr); 1 8* 1 9* This procedure is called by cobol_fix_driver_ once per compilation after code 1 10* generation to resolve all "fixup directives". It is called with 1 11* a pointer to the following structure: 1 12* 1 13* cobol_fixup also contains the following entry points: 1 14* 1 15* cobol_define_tag 1 16* cobol_define_tag_nc 1 17* cobol_equate_tag 1 18* cobol_make_tagref 1 19* cobol_make_fixup 1 20* 1 21* 1 22* 1 23* 1 24* When called at the primary entry, cobol_fixup serially processes 1 25* each element of the "fixup" table adding or subtracting the 1 26* value indicated by "type" and/or tag_number to the upper or 1 27* lower half of the word at "offset" words from the segment 1 28* indicated by "base". Thus, when return is made, all components 1 29* of the object segment are fully patched and ready to be joined 1 30* into one object segment. No further appending may be done to any 1 31* component. 1 32* 1 33* 1 34* 1 35* 1 36*cobol_define_tag: entry(tagno); 1 37* 1 38* dcl tagno fixed bin; internal tag number (input) 1 39* dcl cobol_reset_r$in_line entry; 1 40* 1 41* This entry causes a permanent association to be made 1 42* between a specified internal tag number (tagno) and the 1 43* current value of the "instruction counter" i.e. 1 44* the location of the next instruction to be emitted. 1 45* Any ongoing register optimization is ended at this 1 46* point. If this is not desired, see the entry 1 47* cobol_define_tag_nc. 1 48* 1 49* 1 50*cobol_define_tag_nc: entry(tagno,locno); 1 51* 1 52* dcl tagno fixed bin; internal tag number (input) 1 53* dcl locno fixed bin; wd offset in cobol_text_seg (input) 1 54* 1 55* This entry, given the location of an instruction (locno) 1 56* and an internal tag number (tagno), causes a permanent 1 57* association to be made between the two for fixup purposes. 1 58* 1 59* 1 60*cobol_equate_tag: entry(token31_ptr); 1 61* 1 62* dcl token31_ptr ptr; ptr to a type 31 token (input) 1 63* 1 64* This entry is called with a pointer to a Type 31 (tag equivalency) 1 65* token. It causes one internal tag number to be made equivalent 1 66* to another (for fixup purposes). It is not necessary that either 1 67* of the tags be previously defined. 1 68* 1 69* The format of the Type 31 token is a follows: 1 70* 1 71* 1 72* token31.tagno1 will be given the value of token31.tagno2 when the 1 73*internal procedure eval_equate is called by cobol_fixup$cobol_fixup. 1 74* 1 75* 1 76*cobol_make_tagref: entry(tagno,locno,instr_ptr); 1 77* 1 78* dcl tagno fixed bin; internal tag number (input) 1 79* dcl locno fixed bin; wd offset in cobol_text_seg (input) 1 80* dcl instr_ptr ptr; ptr to instr wd if non-null (input) 1 81* 1 82* This entry is given the location of an instruction (locno) 1 83* (presumably a transfer) and an internal tag number (tagno). 1 84* If that tag has already been defined, then the address field 1 85* of that instruction is set to make the proper reference with 1 86* IC modification. Otherwise, a fixup directive is generated 1 87* which will cause the address field to be set (during the fixup 1 88* phase) to the address associated with the given internal tag 1 89* number. The full 18 bit address field is always set with any 1 90* previous contents overlaid. Also, the modifier field is always 1 91* set to indicate IC modification. Normally instr_ptr is null. 1 92* However, if it is not, the word which it is pointing to will be 1 93* set rather than the actual memory location (in cobol_text_seg). 1 94* However, the instruction offset given as locno is always used 1 95* in calculating the relative address and in the fixup directive 1 96* (if one is generated). Thus, the instruction at instr_ptr 1 97* must be eventually emmitted at cobol_text_seg|locno; if instr_ptr 1 98* is null, then the instruction must have already been emmitted 1 99* at cobol_text_seg|locno. 1 100* 1 101* 1 102*cobol_make_fixup: entry(fix_ptr); 1 103* 1 104* dcl fix_ptr ptr; pointer to fixup directive (input) 1 105* 1 106**/ 1 107 301 2 1 2 2 2 3 /* STATIC DATA */ 2 4 2 5 dcl 1 fixdef static aligned, 2 6 2 wd1 fixed bin(35) aligned, 2 7 2 wd2 fixed bin(35) aligned; 2 8 2 9 2 10 2 11 /* EXTERNAL ENTRY NAMES */ 2 12 2 13 dcl ioa_$rsnnl entry options(variable); 2 14 dcl signal_ entry(char(*),ptr,ptr); 2 15 dcl cobol_reset_r$in_line entry; 2 16 2 17 /* BUILTIN FUNCTIONS */ 2 18 2 19 dcl (null,addrel,substr,addr,fixed,unspec,max) builtin; 2 20 3 1 3 2 /* BEGIN INCLUDE FILE ... cobol_fixup_value.incl.pl1 */ 3 3 /* Last modified on Dec 18, 1974 by ORN */ 3 4 3 5 dcl value_ptr ptr; 3 6 dcl 1 value based(value_ptr) aligned, 3 7 2 con_len fixed bin aligned, 3 8 2 code_len fixed bin aligned, 3 9 2 text_len fixed bin aligned, 3 10 2 def_len fixed bin aligned, 3 11 2 link_len fixed bin aligned, 3 12 2 sym_len fixed bin aligned, 3 13 2 int_storage_len fixed bin aligned, 3 14 2 exec_off fixed bin aligned; 3 15 3 16 /* END INCLUDE FILE ... cobol_fixup_value.incl.pl1 */ 3 17 2 21 4 1 4 2 /* BEGIN INCLUDE FILE ... cobol_fixup_tables.incl.pl1 */ 4 3 /* Last modified September 7, 1978 by FCH */ 4 4 4 5 declare 1 DEF aligned based(cobol_$tag_table_ptr), 4 6 2 tag_max fixed bin, 4 7 2 TAG(32767), 4 8 3 tag_table unal fixed bin(17), 4 9 3 tag_no unal fixed bin(17); 4 10 4 11 dcl 1 fixup_table based ( cobol_$fixup_ptr), 4 12 2 count fixed bin, 4 13 2 table (16383), 4 14 3 operation bit(1) unal, 4 15 3 type bit(4) unal, 4 16 3 reserved bit(9) unal, 4 17 3 location unal, 4 18 4 half bit(1) unal, 4 19 4 base bit(3) unal, 4 20 4 offset fixed bin(17) unal, 4 21 3 tag_number fixed bin aligned; 4 22 4 23 4 24 /* where: 4 25* operation "0"b add value to location 4 26* (alway for tag fixups) 4 27* "1"b subtract value from location 4 28* 4 29* type "0000"b a tag_number is attached 4 30* "0001"b value = length of constants 4 31* "0010"b value = length of exec code 4 32* "0011"b value = length of constants + 4 33* executable code 4 34* "0100"b value = length of cobol_def_seg 4 35* "0101"b value = length of cobol_link_seg 4 36* "0110"b value = length of cobol_sym_seg 4 37* "0111"b value = length of int static 4 38* all others undefined 4 39* 4 40* location.half "0"b hi order 18 bits 4 41* "1"b lo order 18 bits 4 42* 4 43* location.base "001"b from cobol_text_seg|0 4 44* "010"b from cobol_def_seg|0 4 45* "011"b from cobol_link_seg|0 4 46* "100"b from cobol_sym_seg|0 4 47* all others undefined */ 4 48 4 49 /* END INCLUDE FILE ... cobol_fixup_tables.incl.pl1 */ 4 50 2 22 5 1 5 2 /* BEGIN INCLUDE FILE ... cobol_error_info.incl.pl1 */ 5 3 /* Last modified July 8, 1974 by ORN */ 5 4 5 5 dcl 1 error_info, 5 6 2 name char(32), 5 7 2 message_len fixed bin, 5 8 2 message char(128); 5 9 5 10 5 11 /* 5 12*name the name of the program signalling the error. 5 13* 5 14*message_len the number of valid characters in message. 5 15* 5 16*message the text of the message to be issued. 5 17**/ 5 18 5 19 /* END INCLUDE FILE ... cobol_error_info.incl.pl1 */ 5 20 2 23 6 1 6 2 /* BEGIN INCLUDE FILE ... cobol_.incl.pl1 */ 6 3 /* last modified Feb 4, 1977 by ORN */ 6 4 6 5 /* This file defines all external data used in the generator phase of Multics Cobol */ 6 6 6 7 /* POINTERS */ 6 8 dcl cobol_$text_base_ptr ptr ext; 6 9 dcl text_base_ptr ptr defined (cobol_$text_base_ptr); 6 10 dcl cobol_$con_end_ptr ptr ext; 6 11 dcl con_end_ptr ptr defined (cobol_$con_end_ptr); 6 12 dcl cobol_$def_base_ptr ptr ext; 6 13 dcl def_base_ptr ptr defined (cobol_$def_base_ptr); 6 14 dcl cobol_$link_base_ptr ptr ext; 6 15 dcl link_base_ptr ptr defined (cobol_$link_base_ptr); 6 16 dcl cobol_$sym_base_ptr ptr ext; 6 17 dcl sym_base_ptr ptr defined (cobol_$sym_base_ptr); 6 18 dcl cobol_$reloc_text_base_ptr ptr ext; 6 19 dcl reloc_text_base_ptr ptr defined (cobol_$reloc_text_base_ptr); 6 20 dcl cobol_$reloc_def_base_ptr ptr ext; 6 21 dcl reloc_def_base_ptr ptr defined (cobol_$reloc_def_base_ptr); 6 22 dcl cobol_$reloc_link_base_ptr ptr ext; 6 23 dcl reloc_link_base_ptr ptr defined (cobol_$reloc_link_base_ptr); 6 24 dcl cobol_$reloc_sym_base_ptr ptr ext; 6 25 dcl reloc_sym_base_ptr ptr defined (cobol_$reloc_sym_base_ptr); 6 26 dcl cobol_$reloc_work_base_ptr ptr ext; 6 27 dcl reloc_work_base_ptr ptr defined (cobol_$reloc_work_base_ptr); 6 28 dcl cobol_$pd_map_ptr ptr ext; 6 29 dcl pd_map_ptr ptr defined (cobol_$pd_map_ptr); 6 30 dcl cobol_$fixup_ptr ptr ext; 6 31 dcl fixup_ptr ptr defined (cobol_$fixup_ptr); 6 32 dcl cobol_$initval_base_ptr ptr ext; 6 33 dcl initval_base_ptr ptr defined (cobol_$initval_base_ptr); 6 34 dcl cobol_$initval_file_ptr ptr ext; 6 35 dcl initval_file_ptr ptr defined (cobol_$initval_file_ptr); 6 36 dcl cobol_$perform_list_ptr ptr ext; 6 37 dcl perform_list_ptr ptr defined (cobol_$perform_list_ptr); 6 38 dcl cobol_$alter_list_ptr ptr ext; 6 39 dcl alter_list_ptr ptr defined (cobol_$alter_list_ptr); 6 40 dcl cobol_$seg_init_list_ptr ptr ext; 6 41 dcl seg_init_list_ptr ptr defined (cobol_$seg_init_list_ptr); 6 42 dcl cobol_$temp_token_area_ptr ptr ext; 6 43 dcl temp_token_area_ptr ptr defined (cobol_$temp_token_area_ptr); 6 44 dcl cobol_$temp_token_ptr ptr ext; 6 45 dcl temp_token_ptr ptr defined (cobol_$temp_token_ptr); 6 46 dcl cobol_$token_block1_ptr ptr ext; 6 47 dcl token_block1_ptr ptr defined (cobol_$token_block1_ptr); 6 48 dcl cobol_$token_block2_ptr ptr ext; 6 49 dcl token_block2_ptr ptr defined (cobol_$token_block2_ptr); 6 50 dcl cobol_$minpral5_ptr ptr ext; 6 51 dcl minpral5_ptr ptr defined (cobol_$minpral5_ptr); 6 52 dcl cobol_$tag_table_ptr ptr ext; 6 53 dcl tag_table_ptr ptr defined (cobol_$tag_table_ptr); 6 54 dcl cobol_$map_data_ptr ptr ext; 6 55 dcl map_data_ptr ptr defined (cobol_$map_data_ptr); 6 56 dcl cobol_$ptr_status_ptr ptr ext; 6 57 dcl ptr_status_ptr ptr defined (cobol_$ptr_status_ptr); 6 58 dcl cobol_$reg_status_ptr ptr ext; 6 59 dcl reg_status_ptr ptr defined (cobol_$reg_status_ptr); 6 60 dcl cobol_$misc_base_ptr ptr ext; 6 61 dcl misc_base_ptr ptr defined (cobol_$misc_base_ptr); 6 62 dcl cobol_$misc_end_ptr ptr ext; 6 63 dcl misc_end_ptr ptr defined (cobol_$misc_end_ptr); 6 64 dcl cobol_$list_ptr ptr ext; 6 65 dcl list_ptr ptr defined (cobol_$list_ptr); 6 66 dcl cobol_$allo1_ptr ptr ext; 6 67 dcl allo1_ptr ptr defined (cobol_$allo1_ptr); 6 68 dcl cobol_$eln_ptr ptr ext; 6 69 dcl eln_ptr ptr defined (cobol_$eln_ptr); 6 70 dcl cobol_$diag_ptr ptr ext; 6 71 dcl diag_ptr ptr defined (cobol_$diag_ptr); 6 72 dcl cobol_$xref_token_ptr ptr ext; 6 73 dcl xref_token_ptr ptr defined (cobol_$xref_token_ptr); 6 74 dcl cobol_$xref_chain_ptr ptr ext; 6 75 dcl xref_chain_ptr ptr defined (cobol_$xref_chain_ptr); 6 76 dcl cobol_$statement_info_ptr ptr ext; 6 77 dcl statement_info_ptr ptr defined (cobol_$statement_info_ptr); 6 78 dcl cobol_$reswd_ptr ptr ext; 6 79 dcl reswd_ptr ptr defined (cobol_$reswd_ptr); 6 80 dcl cobol_$op_con_ptr ptr ext; 6 81 dcl op_con_ptr ptr defined (cobol_$op_con_ptr); 6 82 dcl cobol_$ntbuf_ptr ptr ext; 6 83 dcl ntbuf_ptr ptr defined (cobol_$ntbuf_ptr); 6 84 dcl cobol_$main_pcs_ptr ptr ext; 6 85 dcl main_pcs_ptr ptr defined (cobol_$main_pcs_ptr); 6 86 dcl cobol_$include_info_ptr ptr ext; 6 87 dcl include_info_ptr ptr defined (cobol_$include_info_ptr); 6 88 6 89 /* FIXED BIN */ 6 90 dcl cobol_$text_wd_off fixed bin ext; 6 91 dcl text_wd_off fixed bin defined (cobol_$text_wd_off); 6 92 dcl cobol_$con_wd_off fixed bin ext; 6 93 dcl con_wd_off fixed bin defined (cobol_$con_wd_off); 6 94 dcl cobol_$def_wd_off fixed bin ext; 6 95 dcl def_wd_off fixed bin defined (cobol_$def_wd_off); 6 96 dcl cobol_$def_max fixed bin ext; 6 97 dcl def_max fixed bin defined (cobol_$def_max); 6 98 dcl cobol_$link_wd_off fixed bin ext; 6 99 dcl link_wd_off fixed bin defined (cobol_$link_wd_off); 6 100 dcl cobol_$link_max fixed bin ext; 6 101 dcl link_max fixed bin defined (cobol_$link_max); 6 102 dcl cobol_$sym_wd_off fixed bin ext; 6 103 dcl sym_wd_off fixed bin defined (cobol_$sym_wd_off); 6 104 dcl cobol_$sym_max fixed bin ext; 6 105 dcl sym_max fixed bin defined (cobol_$sym_max); 6 106 dcl cobol_$reloc_text_max fixed bin(24) ext; 6 107 dcl reloc_text_max fixed bin(24) defined (cobol_$reloc_text_max); 6 108 dcl cobol_$reloc_def_max fixed bin(24) ext; 6 109 dcl reloc_def_max fixed bin(24) defined (cobol_$reloc_def_max); 6 110 dcl cobol_$reloc_link_max fixed bin(24) ext; 6 111 dcl reloc_link_max fixed bin(24) defined (cobol_$reloc_link_max); 6 112 dcl cobol_$reloc_sym_max fixed bin(24) ext; 6 113 dcl reloc_sym_max fixed bin(24) defined (cobol_$reloc_sym_max); 6 114 dcl cobol_$reloc_work_max fixed bin(24) ext; 6 115 dcl reloc_work_max fixed bin(24) defined (cobol_$reloc_work_max); 6 116 dcl cobol_$pd_map_index fixed bin ext; 6 117 dcl pd_map_index fixed bin defined (cobol_$pd_map_index); 6 118 dcl cobol_$cobol_data_wd_off fixed bin ext; 6 119 dcl cobol_data_wd_off fixed bin defined (cobol_$cobol_data_wd_off); 6 120 dcl cobol_$stack_off fixed bin ext; 6 121 dcl stack_off fixed bin defined (cobol_$stack_off); 6 122 dcl cobol_$max_stack_off fixed bin ext; 6 123 dcl max_stack_off fixed bin defined (cobol_$max_stack_off); 6 124 dcl cobol_$init_stack_off fixed bin ext; 6 125 dcl init_stack_off fixed bin defined (cobol_$init_stack_off); 6 126 dcl cobol_$pd_map_sw fixed bin ext; 6 127 dcl pd_map_sw fixed bin defined (cobol_$pd_map_sw); 6 128 dcl cobol_$next_tag fixed bin ext; 6 129 dcl next_tag fixed bin defined (cobol_$next_tag); 6 130 dcl cobol_$data_init_flag fixed bin ext; 6 131 dcl data_init_flag fixed bin defined (cobol_$data_init_flag); 6 132 dcl cobol_$seg_init_flag fixed bin ext; 6 133 dcl seg_init_flag fixed bin defined (cobol_$seg_init_flag); 6 134 dcl cobol_$alter_flag fixed bin ext; 6 135 dcl alter_flag fixed bin defined (cobol_$alter_flag); 6 136 dcl cobol_$sect_eop_flag fixed bin ext; 6 137 dcl sect_eop_flag fixed bin defined (cobol_$sect_eop_flag); 6 138 dcl cobol_$para_eop_flag fixed bin ext; 6 139 dcl para_eop_flag fixed bin defined (cobol_$para_eop_flag); 6 140 dcl cobol_$priority_no fixed bin ext; 6 141 dcl priority_no fixed bin defined (cobol_$priority_no); 6 142 dcl cobol_$compile_count fixed bin ext; 6 143 dcl compile_count fixed bin defined (cobol_$compile_count); 6 144 dcl cobol_$ptr_assumption_ind fixed bin ext; 6 145 dcl ptr_assumption_ind fixed bin defined (cobol_$ptr_assumption_ind); 6 146 dcl cobol_$reg_assumption_ind fixed bin ext; 6 147 dcl reg_assumption_ind fixed bin defined (cobol_$reg_assumption_ind); 6 148 dcl cobol_$perform_para_index fixed bin ext; 6 149 dcl perform_para_index fixed bin defined (cobol_$perform_para_index); 6 150 dcl cobol_$perform_sect_index fixed bin ext; 6 151 dcl perform_sect_index fixed bin defined (cobol_$perform_sect_index); 6 152 dcl cobol_$alter_index fixed bin ext; 6 153 dcl alter_index fixed bin defined (cobol_$alter_index); 6 154 dcl cobol_$list_off fixed bin ext; 6 155 dcl list_off fixed bin defined (cobol_$list_off); 6 156 dcl cobol_$constant_offset fixed bin ext; 6 157 dcl constant_offset fixed bin defined (cobol_$constant_offset); 6 158 dcl cobol_$misc_max fixed bin ext; 6 159 dcl misc_max fixed bin defined (cobol_$misc_max); 6 160 dcl cobol_$pd_map_max fixed bin ext; 6 161 dcl pd_map_max fixed bin defined (cobol_$pd_map_max); 6 162 dcl cobol_$map_data_max fixed bin ext; 6 163 dcl map_data_max fixed bin defined (cobol_$map_data_max); 6 164 dcl cobol_$fixup_max fixed bin ext; 6 165 dcl fixup_max fixed bin defined (cobol_$fixup_max); 6 166 dcl cobol_$tag_table_max fixed bin ext; 6 167 dcl tag_table_max fixed bin defined (cobol_$tag_table_max); 6 168 dcl cobol_$temp_token_max fixed bin ext; 6 169 dcl temp_token_max fixed bin defined (cobol_$temp_token_max); 6 170 dcl cobol_$allo1_max fixed bin ext; 6 171 dcl allo1_max fixed bin defined (cobol_$allo1_max); 6 172 dcl cobol_$eln_max fixed bin ext; 6 173 dcl eln_max fixed bin defined (cobol_$eln_max); 6 174 dcl cobol_$debug_enable fixed bin ext; 6 175 dcl debug_enable fixed bin defined (cobol_$debug_enable); 6 176 dcl cobol_$non_source_offset fixed bin ext; 6 177 dcl non_source_offset fixed bin defined (cobol_$non_source_offset); 6 178 dcl cobol_$initval_flag fixed bin ext; 6 179 dcl initval_flag fixed bin defined (cobol_$initval_flag); 6 180 dcl cobol_$date_compiled_sw fixed bin ext; 6 181 dcl date_compiled_sw fixed bin defined (cobol_$date_compiled_sw); 6 182 dcl cobol_$include_cnt fixed bin ext; 6 183 dcl include_cnt fixed bin defined (cobol_$include_cnt); 6 184 dcl cobol_$fs_charcnt fixed bin ext; 6 185 dcl fs_charcnt fixed bin defined (cobol_$fs_charcnt); 6 186 dcl cobol_$ws_charcnt fixed bin ext; 6 187 dcl ws_charcnt fixed bin defined (cobol_$ws_charcnt); 6 188 dcl cobol_$coms_charcnt fixed bin ext; 6 189 dcl coms_charcnt fixed bin defined (cobol_$coms_charcnt); 6 190 dcl cobol_$ls_charcnt fixed bin ext; 6 191 dcl ls_charcnt fixed bin defined (cobol_$ls_charcnt); 6 192 dcl cobol_$cons_charcnt fixed bin ext; 6 193 dcl cons_charcnt fixed bin defined (cobol_$cons_charcnt); 6 194 dcl cobol_$value_cnt fixed bin ext; 6 195 dcl value_cnt fixed bin defined (cobol_$value_cnt); 6 196 dcl cobol_$cd_cnt fixed bin ext; 6 197 dcl cd_cnt fixed bin defined (cobol_$cd_cnt); 6 198 dcl cobol_$fs_wdoff fixed bin ext; 6 199 dcl fs_wdoff fixed bin defined (cobol_$fs_wdoff); 6 200 dcl cobol_$ws_wdoff fixed bin ext; 6 201 dcl ws_wdoff fixed bin defined (cobol_$ws_wdoff); 6 202 dcl cobol_$coms_wdoff fixed bin ext; 6 203 dcl coms_wdoff fixed bin defined (cobol_$coms_wdoff); 6 204 6 205 /* CHARACTER */ 6 206 dcl cobol_$scratch_dir char (168) aligned ext; 6 207 dcl scratch_dir char (168) aligned defined (cobol_$scratch_dir); /* -42- */ 6 208 dcl cobol_$obj_seg_name char (32) aligned ext; 6 209 dcl obj_seg_name char (32) aligned defined (cobol_$obj_seg_name); /* -8- */ 6 210 6 211 /* BIT */ 6 212 dcl cobol_$xref_bypass bit(1) aligned ext; 6 213 dcl xref_bypass bit(1) aligned defined (cobol_$xref_bypass); /* -1- */ 6 214 dcl cobol_$same_sort_merge_proc bit(1) aligned ext; 6 215 dcl same_sort_merge_proc bit(1) aligned defined (cobol_$same_sort_merge_proc); /* -1- */ 6 216 6 217 6 218 /* END INCLUDE FILE ... cobol_incl.pl1*/ 6 219 6 220 2 24 7 1 7 2 /* BEGIN INCLUDE FILE ... cobol_ext_.incl.pl1 */ 7 3 /* Last modified on 06/17/76 by ORN */ 7 4 /* Last modified on 12/28/76 by FCH */ 7 5 /* Last modified on 12/01/80 by FCH */ 7 6 7 7 /* <<< SHARED EXTERNALS INCLUDE FILE >>> */ 7 8 7 9 7 10 dcl cobol_ext_$cobol_afp ptr ext; 7 11 dcl cobol_afp ptr defined ( cobol_ext_$cobol_afp); 7 12 dcl cobol_ext_$cobol_analin_fileno ptr ext; 7 13 dcl cobol_analin_fileno ptr defined ( cobol_ext_$cobol_analin_fileno); 7 14 dcl cobol_ext_$report_first_token ptr ext; 7 15 dcl report_first_token ptr defined( cobol_ext_$report_first_token); 7 16 dcl cobol_ext_$report_last_token ptr ext; 7 17 dcl report_last_token ptr defined ( cobol_ext_$report_last_token); 7 18 dcl cobol_ext_$cobol_eltp ptr ext; 7 19 dcl cobol_eltp ptr defined ( cobol_ext_$cobol_eltp); 7 20 dcl cobol_ext_$cobol_cmfp ptr ext; 7 21 dcl cobol_cmfp ptr defined ( cobol_ext_$cobol_cmfp); 7 22 dcl cobol_ext_$cobol_com_fileno ptr ext; 7 23 dcl cobol_com_fileno ptr defined ( cobol_ext_$cobol_com_fileno); 7 24 dcl cobol_ext_$cobol_com_ptr ptr ext; 7 25 dcl cobol_com_ptr ptr defined ( cobol_ext_$cobol_com_ptr); 7 26 dcl cobol_ext_$cobol_dfp ptr ext; 7 27 dcl cobol_dfp ptr defined ( cobol_ext_$cobol_dfp); 7 28 dcl cobol_ext_$cobol_hfp ptr ext; 7 29 dcl cobol_hfp ptr defined ( cobol_ext_$cobol_hfp); 7 30 dcl cobol_ext_$cobol_m1fp ptr ext; 7 31 dcl cobol_m1fp ptr defined ( cobol_ext_$cobol_m1fp); 7 32 dcl cobol_ext_$cobol_m2fp ptr ext; 7 33 dcl cobol_m2fp ptr defined ( cobol_ext_$cobol_m2fp); 7 34 dcl cobol_ext_$cobol_min1_fileno ptr ext; 7 35 dcl cobol_min1_fileno ptr defined ( cobol_ext_$cobol_min1_fileno); 7 36 dcl cobol_ext_$cobol_min2_fileno_ptr ptr ext; 7 37 dcl cobol_min2_fileno_ptr ptr defined ( cobol_ext_$cobol_min2_fileno_ptr); 7 38 dcl cobol_ext_$cobol_name_fileno ptr ext; 7 39 dcl cobol_name_fileno ptr defined ( cobol_ext_$cobol_name_fileno); 7 40 dcl cobol_ext_$cobol_name_fileno_ptr ptr ext; 7 41 dcl cobol_name_fileno_ptr ptr defined ( cobol_ext_$cobol_name_fileno_ptr); 7 42 dcl cobol_ext_$cobol_ntfp ptr ext; 7 43 dcl cobol_ntfp ptr defined ( cobol_ext_$cobol_ntfp); 7 44 dcl cobol_ext_$cobol_pdofp ptr ext; 7 45 dcl cobol_pdofp ptr defined ( cobol_ext_$cobol_pdofp); 7 46 dcl cobol_ext_$cobol_pfp ptr ext; 7 47 dcl cobol_pfp ptr defined ( cobol_ext_$cobol_pfp); 7 48 dcl cobol_ext_$cobol_rm2fp ptr ext; 7 49 dcl cobol_rm2fp ptr defined ( cobol_ext_$cobol_rm2fp); 7 50 dcl cobol_ext_$cobol_rmin2fp ptr ext; 7 51 dcl cobol_rmin2fp ptr defined ( cobol_ext_$cobol_rmin2fp); 7 52 dcl cobol_ext_$cobol_curr_in ptr ext; 7 53 dcl cobol_curr_in ptr defined ( cobol_ext_$cobol_curr_in); 7 54 dcl cobol_ext_$cobol_curr_out ptr ext; 7 55 dcl cobol_curr_out ptr defined ( cobol_ext_$cobol_curr_out); 7 56 dcl cobol_ext_$cobol_sfp ptr ext; 7 57 dcl cobol_sfp ptr defined ( cobol_ext_$cobol_sfp); 7 58 dcl cobol_ext_$cobol_w1p ptr ext; 7 59 dcl cobol_w1p ptr defined ( cobol_ext_$cobol_w1p); 7 60 dcl cobol_ext_$cobol_w2p ptr ext; 7 61 dcl cobol_w2p ptr defined ( cobol_ext_$cobol_w2p); 7 62 dcl cobol_ext_$cobol_w3p ptr ext; 7 63 dcl cobol_w3p ptr defined ( cobol_ext_$cobol_w3p); 7 64 dcl cobol_ext_$cobol_w5p ptr ext; 7 65 dcl cobol_w5p ptr defined ( cobol_ext_$cobol_w5p); 7 66 dcl cobol_ext_$cobol_w6p ptr ext; 7 67 dcl cobol_w6p ptr defined ( cobol_ext_$cobol_w6p); 7 68 dcl cobol_ext_$cobol_w7p ptr ext; 7 69 dcl cobol_w7p ptr defined ( cobol_ext_$cobol_w7p); 7 70 dcl cobol_ext_$cobol_x3fp ptr ext; 7 71 dcl cobol_x3fp ptr defined ( cobol_ext_$cobol_x3fp); 7 72 dcl cobol_ext_$cobol_rwdd ptr ext; 7 73 dcl cobol_rwdd ptr defined(cobol_ext_$cobol_rwdd); 7 74 dcl cobol_ext_$cobol_rwpd ptr ext; 7 75 dcl cobol_rwpd ptr defined(cobol_ext_$cobol_rwpd); 7 76 7 77 7 78 dcl cobol_ext_$cobol_fileno1 fixed bin(24)ext; 7 79 dcl cobol_fileno1 fixed bin(24)defined ( cobol_ext_$cobol_fileno1); 7 80 dcl cobol_ext_$cobol_options_len fixed bin(24)ext; 7 81 dcl cobol_options_len fixed bin(24)defined ( cobol_ext_$cobol_options_len); 7 82 dcl cobol_ext_$cobol_pdout_fileno fixed bin(24)ext; 7 83 dcl cobol_pdout_fileno fixed bin(24)defined ( cobol_ext_$cobol_pdout_fileno); 7 84 dcl cobol_ext_$cobol_print_fileno fixed bin(24)ext; 7 85 dcl cobol_print_fileno fixed bin(24)defined ( cobol_ext_$cobol_print_fileno); 7 86 dcl cobol_ext_$cobol_rmin2_fileno fixed bin(24)ext; 7 87 dcl cobol_rmin2_fileno fixed bin(24)defined ( cobol_ext_$cobol_rmin2_fileno); 7 88 dcl cobol_ext_$cobol_x1_fileno fixed bin(24)ext; 7 89 dcl cobol_x1_fileno fixed bin(24)defined ( cobol_ext_$cobol_x1_fileno); 7 90 dcl cobol_ext_$cobol_x2_fileno fixed bin(24)ext; 7 91 dcl cobol_x2_fileno fixed bin(24)defined ( cobol_ext_$cobol_x2_fileno); 7 92 dcl cobol_ext_$cobol_x3_fileno fixed bin(24)ext; 7 93 dcl cobol_x3_fileno fixed bin(24)defined ( cobol_ext_$cobol_x3_fileno); 7 94 7 95 dcl cobol_ext_$cobol_lpr char (5) ext; 7 96 dcl cobol_lpr char (5) defined ( cobol_ext_$cobol_lpr); /* -2- */ 7 97 dcl cobol_ext_$cobol_options char (120) ext; 7 98 dcl cobol_options char (120) defined ( cobol_ext_$cobol_options); /* -30- */ 7 99 7 100 dcl cobol_ext_$cobol_xlast8 bit (1) ext; 7 101 dcl cobol_xlast8 bit (1) defined ( cobol_ext_$cobol_xlast8); /* -1- */ 7 102 dcl cobol_ext_$report_exists bit (1) ext; 7 103 dcl report_exists bit (1) defined ( cobol_ext_$report_exists); 7 104 7 105 7 106 /* <<< END OF SHARED EXTERNALS INCLUDE FILE >>> */ 7 107 /* END INCLUDE FILE ... cobol_ext_.incl.pl1 */ 7 108 2 25 2 26 302 303 end cobol_fixup; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 05/24/89 0832.1 cobol_fixup.pl1 >spec>install>MR12.3-1048>cobol_fixup.pl1 301 1 03/27/82 0439.4 cobol_fixup_info.incl.pl1 >ldd>include>cobol_fixup_info.incl.pl1 302 2 03/27/82 0437.8 cobol_fixup_data.incl.pl1 >ldd>include>cobol_fixup_data.incl.pl1 2-21 3 03/27/82 0439.7 cobol_fixup_value.incl.pl1 >ldd>include>cobol_fixup_value.incl.pl1 2-22 4 03/27/82 0438.0 cobol_fixup_tables.incl.pl1 >ldd>include>cobol_fixup_tables.incl.pl1 2-23 5 03/27/82 0439.7 cobol_error_info.incl.pl1 >ldd>include>cobol_error_info.incl.pl1 2-24 6 11/11/82 1712.7 cobol_.incl.pl1 >ldd>include>cobol_.incl.pl1 2-25 7 03/27/82 0431.3 cobol_ext_.incl.pl1 >ldd>include>cobol_ext_.incl.pl1 NAMES DECLARED IN THIS COMPILATION. IDENTIFIER OFFSET LOC STORAGE CLASS DATA TYPE ATTRIBUTES AND REFERENCES (* indicates a set context) NAMES DECLARED BY DECLARE STATEMENT. DEF based structure level 1 dcl 4-5 TAG 1 based structure array level 2 dcl 4-5 addr builtin function dcl 2-19 ref 256 283 283 297 297 addrel builtin function dcl 2-19 ref 70 89 239 address based bit(18) level 2 packed packed unaligned dcl 36 set ref 81 82* 248* 254* base 1(15) based bit(3) array level 4 packed packed unaligned dcl 4-11 ref 89 body 4 based structure level 2 unaligned dcl 206 bytes based char(8) packed unaligned dcl 42 set ref 256* 256 273* 273 cobol_$def_base_ptr 000022 external static pointer dcl 6-12 ref 60 cobol_$fixup_ptr 000030 external static pointer dcl 6-30 ref 64 64 67 70 71 87 88 89 89 94 255 256 257 257 271 273 274 274 281 cobol_$link_base_ptr 000024 external static pointer dcl 6-14 ref 61 cobol_$map_data_ptr 000034 external static pointer dcl 6-54 ref 98 cobol_$sym_base_ptr 000026 external static pointer dcl 6-16 ref 62 cobol_$tag_table_ptr 000032 external static pointer dcl 6-52 ref 76 117 124 126 127 132 137 164 167 171 171 188 190 193 193 217 217 217 222 225 225 245 247 261 261 cobol_$text_base_ptr 000020 external static pointer dcl 6-8 ref 59 70 239 cobol_$text_wd_off 000036 external static fixed bin(17,0) dcl 6-90 ref 167 cobol_reset_r$in_line 000016 constant entry external dcl 2-15 ref 168 count based fixed bin(17,0) level 2 dcl 4-11 set ref 64 64 255 257* 257 271 274* 274 error_info 000116 automatic structure level 1 unaligned dcl 5-5 set ref 283 283 297 297 fix_ptr parameter pointer dcl 269 ref 266 273 fixdef 000010 internal static structure level 1 dcl 2-5 set ref 256 fixed builtin function dcl 2-19 ref 81 87 88 89 90 fixup_table based structure level 1 unaligned dcl 4-11 half 1(14) based bit(1) array level 4 packed packed unaligned dcl 4-11 ref 87 halfword based bit(18) array packed unaligned dcl 35 set ref 90 100* i 000176 automatic fixed bin(17,0) dcl 114 in procedure "eval_equate" set ref 124* 126 127 137* i 000112 automatic fixed bin(17,0) dcl 44 in procedure "cobol_fixup" set ref 64* 67 70 71 87 88 89 89 94* 255* 256 271* 273 281* 281 instr based structure level 1 dcl 36 instr_ptr parameter pointer dcl 237 ref 232 239 242 ioa_$rsnnl 000012 constant entry external dcl 2-13 ref 281 288 293 j 000113 automatic fixed bin(17,0) dcl 44 set ref 71* 76 87* 90 100 281* k 000114 automatic fixed bin(17,0) dcl 44 set ref 76* 78 81 88* 92 94 96 location 1(14) based structure array level 3 packed packed unaligned dcl 4-11 locno parameter fixed bin(17,0) dcl 182 ref 178 190 232 239 247 251 253 map_data_table based structure level 1 dcl 46 max builtin function dcl 2-19 ref 171 193 225 261 message 11 000116 automatic char(128) level 2 packed packed unaligned dcl 5-5 set ref 281* 288* 293* message_len 10 000116 automatic fixed bin(17,0) level 2 dcl 5-5 set ref 281* 288* 293* name 000116 automatic char(32) level 2 packed packed unaligned dcl 5-5 set ref 279* 286* 291* new 000177 automatic fixed bin(17,0) dcl 114 set ref 122* 139* 145 no_source_stmts based fixed bin(17,0) level 2 dcl 46 ref 98 null builtin function dcl 2-19 ref 239 283 283 297 297 offset 1(18) based fixed bin(17,0) array level 4 packed packed unaligned dcl 4-11 set ref 70 89 281* old 000200 automatic fixed bin(17,0) dcl 114 set ref 122* 142* 145 operation 1 based bit(1) array level 3 packed packed unaligned dcl 4-11 ref 94 reg 0(32) based bit(4) level 2 packed packed unaligned dcl 36 set ref 243* segptr 000100 automatic pointer array dcl 32 set ref 59* 60* 61* 62* 89 signal_ 000014 constant entry external dcl 2-14 ref 283 297 substr builtin function dcl 2-19 set ref 82 100 248 254 256* 256 273* 273 table 1 based structure array level 2 unaligned dcl 4-11 tag_max based fixed bin(17,0) level 2 dcl 4-5 set ref 117 124 171* 171 193* 193 225* 225 261* 261 tag_no 1(18) based fixed bin(17,0) array level 3 packed packed unaligned dcl 4-5 set ref 127 222* tag_number 2 based fixed bin(17,0) array level 3 dcl 4-11 ref 71 tag_table 1 based fixed bin(17,0) array level 3 packed packed unaligned dcl 4-5 set ref 76 126 132 137* 164 167* 188 190* 217 217* 217 245 247 tagno parameter fixed bin(17,0) dcl 181 set ref 155 160 164 167 171 178 184 188 190 193 232 245 247 252 261 288* tagno1 5 based fixed bin(15,0) level 3 dcl 206 set ref 217 217 222 225 293* tagno2 6 based fixed bin(15,0) level 3 dcl 206 set ref 217 222 225 293* tn 000202 automatic fixed bin(17,0) dcl 114 set ref 127* 129 132 token31 based structure level 1 unaligned dcl 206 token31_ptr parameter pointer dcl 203 ref 200 217 217 217 222 222 225 225 293 293 tt 000201 automatic fixed bin(17,0) dcl 114 set ref 126* 129 type 1(01) based bit(4) array level 3 packed packed unaligned dcl 4-11 ref 67 88 unspec builtin function dcl 2-19 ref 82 100 248 254 utemp 000115 automatic fixed bin(17,0) dcl 45 set ref 81* 82 90* 94* 94 96* 96 98* 98 100 247* 248 253* 254 val 000203 automatic fixed bin(17,0) dcl 114 in procedure "eval_equate" set ref 132* 135 137 val based fixed bin(17,0) array dcl 31 in procedure "cobol_fixup" ref 94 96 value_ptr parameter pointer dcl 3-5 ref 28 94 96 wd1 000010 internal static fixed bin(35,0) level 2 dcl 2-5 set ref 251* wd2 1 000010 internal static fixed bin(35,0) level 2 dcl 2-5 set ref 252* wptr 000110 automatic pointer dcl 34 set ref 70* 81 82 89* 90 100 239* 242* 243 248 254 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. allo1_max defined fixed bin(17,0) dcl 6-171 allo1_ptr defined pointer dcl 6-67 alter_flag defined fixed bin(17,0) dcl 6-135 alter_index defined fixed bin(17,0) dcl 6-153 alter_list_ptr defined pointer dcl 6-39 cd_cnt defined fixed bin(17,0) dcl 6-197 cobol_$allo1_max external static fixed bin(17,0) dcl 6-170 cobol_$allo1_ptr external static pointer dcl 6-66 cobol_$alter_flag external static fixed bin(17,0) dcl 6-134 cobol_$alter_index external static fixed bin(17,0) dcl 6-152 cobol_$alter_list_ptr external static pointer dcl 6-38 cobol_$cd_cnt external static fixed bin(17,0) dcl 6-196 cobol_$cobol_data_wd_off external static fixed bin(17,0) dcl 6-118 cobol_$compile_count external static fixed bin(17,0) dcl 6-142 cobol_$coms_charcnt external static fixed bin(17,0) dcl 6-188 cobol_$coms_wdoff external static fixed bin(17,0) dcl 6-202 cobol_$con_end_ptr external static pointer dcl 6-10 cobol_$con_wd_off external static fixed bin(17,0) dcl 6-92 cobol_$cons_charcnt external static fixed bin(17,0) dcl 6-192 cobol_$constant_offset external static fixed bin(17,0) dcl 6-156 cobol_$data_init_flag external static fixed bin(17,0) dcl 6-130 cobol_$date_compiled_sw external static fixed bin(17,0) dcl 6-180 cobol_$debug_enable external static fixed bin(17,0) dcl 6-174 cobol_$def_max external static fixed bin(17,0) dcl 6-96 cobol_$def_wd_off external static fixed bin(17,0) dcl 6-94 cobol_$diag_ptr external static pointer dcl 6-70 cobol_$eln_max external static fixed bin(17,0) dcl 6-172 cobol_$eln_ptr external static pointer dcl 6-68 cobol_$fixup_max external static fixed bin(17,0) dcl 6-164 cobol_$fs_charcnt external static fixed bin(17,0) dcl 6-184 cobol_$fs_wdoff external static fixed bin(17,0) dcl 6-198 cobol_$include_cnt external static fixed bin(17,0) dcl 6-182 cobol_$include_info_ptr external static pointer dcl 6-86 cobol_$init_stack_off external static fixed bin(17,0) dcl 6-124 cobol_$initval_base_ptr external static pointer dcl 6-32 cobol_$initval_file_ptr external static pointer dcl 6-34 cobol_$initval_flag external static fixed bin(17,0) dcl 6-178 cobol_$link_max external static fixed bin(17,0) dcl 6-100 cobol_$link_wd_off external static fixed bin(17,0) dcl 6-98 cobol_$list_off external static fixed bin(17,0) dcl 6-154 cobol_$list_ptr external static pointer dcl 6-64 cobol_$ls_charcnt external static fixed bin(17,0) dcl 6-190 cobol_$main_pcs_ptr external static pointer dcl 6-84 cobol_$map_data_max external static fixed bin(17,0) dcl 6-162 cobol_$max_stack_off external static fixed bin(17,0) dcl 6-122 cobol_$minpral5_ptr external static pointer dcl 6-50 cobol_$misc_base_ptr external static pointer dcl 6-60 cobol_$misc_end_ptr external static pointer dcl 6-62 cobol_$misc_max external static fixed bin(17,0) dcl 6-158 cobol_$next_tag external static fixed bin(17,0) dcl 6-128 cobol_$non_source_offset external static fixed bin(17,0) dcl 6-176 cobol_$ntbuf_ptr external static pointer dcl 6-82 cobol_$obj_seg_name external static char(32) dcl 6-208 cobol_$op_con_ptr external static pointer dcl 6-80 cobol_$para_eop_flag external static fixed bin(17,0) dcl 6-138 cobol_$pd_map_index external static fixed bin(17,0) dcl 6-116 cobol_$pd_map_max external static fixed bin(17,0) dcl 6-160 cobol_$pd_map_ptr external static pointer dcl 6-28 cobol_$pd_map_sw external static fixed bin(17,0) dcl 6-126 cobol_$perform_list_ptr external static pointer dcl 6-36 cobol_$perform_para_index external static fixed bin(17,0) dcl 6-148 cobol_$perform_sect_index external static fixed bin(17,0) dcl 6-150 cobol_$priority_no external static fixed bin(17,0) dcl 6-140 cobol_$ptr_assumption_ind external static fixed bin(17,0) dcl 6-144 cobol_$ptr_status_ptr external static pointer dcl 6-56 cobol_$reg_assumption_ind external static fixed bin(17,0) dcl 6-146 cobol_$reg_status_ptr external static pointer dcl 6-58 cobol_$reloc_def_base_ptr external static pointer dcl 6-20 cobol_$reloc_def_max external static fixed bin(24,0) dcl 6-108 cobol_$reloc_link_base_ptr external static pointer dcl 6-22 cobol_$reloc_link_max external static fixed bin(24,0) dcl 6-110 cobol_$reloc_sym_base_ptr external static pointer dcl 6-24 cobol_$reloc_sym_max external static fixed bin(24,0) dcl 6-112 cobol_$reloc_text_base_ptr external static pointer dcl 6-18 cobol_$reloc_text_max external static fixed bin(24,0) dcl 6-106 cobol_$reloc_work_base_ptr external static pointer dcl 6-26 cobol_$reloc_work_max external static fixed bin(24,0) dcl 6-114 cobol_$reswd_ptr external static pointer dcl 6-78 cobol_$same_sort_merge_proc external static bit(1) dcl 6-214 cobol_$scratch_dir external static char(168) dcl 6-206 cobol_$sect_eop_flag external static fixed bin(17,0) dcl 6-136 cobol_$seg_init_flag external static fixed bin(17,0) dcl 6-132 cobol_$seg_init_list_ptr external static pointer dcl 6-40 cobol_$stack_off external static fixed bin(17,0) dcl 6-120 cobol_$statement_info_ptr external static pointer dcl 6-76 cobol_$sym_max external static fixed bin(17,0) dcl 6-104 cobol_$sym_wd_off external static fixed bin(17,0) dcl 6-102 cobol_$tag_table_max external static fixed bin(17,0) dcl 6-166 cobol_$temp_token_area_ptr external static pointer dcl 6-42 cobol_$temp_token_max external static fixed bin(17,0) dcl 6-168 cobol_$temp_token_ptr external static pointer dcl 6-44 cobol_$token_block1_ptr external static pointer dcl 6-46 cobol_$token_block2_ptr external static pointer dcl 6-48 cobol_$value_cnt external static fixed bin(17,0) dcl 6-194 cobol_$ws_charcnt external static fixed bin(17,0) dcl 6-186 cobol_$ws_wdoff external static fixed bin(17,0) dcl 6-200 cobol_$xref_bypass external static bit(1) dcl 6-212 cobol_$xref_chain_ptr external static pointer dcl 6-74 cobol_$xref_token_ptr external static pointer dcl 6-72 cobol_afp defined pointer dcl 7-11 cobol_analin_fileno defined pointer dcl 7-13 cobol_cmfp defined pointer dcl 7-21 cobol_com_fileno defined pointer dcl 7-23 cobol_com_ptr defined pointer dcl 7-25 cobol_curr_in defined pointer dcl 7-53 cobol_curr_out defined pointer dcl 7-55 cobol_data_wd_off defined fixed bin(17,0) dcl 6-119 cobol_dfp defined pointer dcl 7-27 cobol_eltp defined pointer dcl 7-19 cobol_ext_$cobol_afp external static pointer dcl 7-10 cobol_ext_$cobol_analin_fileno external static pointer dcl 7-12 cobol_ext_$cobol_cmfp external static pointer dcl 7-20 cobol_ext_$cobol_com_fileno external static pointer dcl 7-22 cobol_ext_$cobol_com_ptr external static pointer dcl 7-24 cobol_ext_$cobol_curr_in external static pointer dcl 7-52 cobol_ext_$cobol_curr_out external static pointer dcl 7-54 cobol_ext_$cobol_dfp external static pointer dcl 7-26 cobol_ext_$cobol_eltp external static pointer dcl 7-18 cobol_ext_$cobol_fileno1 external static fixed bin(24,0) dcl 7-78 cobol_ext_$cobol_hfp external static pointer dcl 7-28 cobol_ext_$cobol_lpr external static char(5) packed unaligned dcl 7-95 cobol_ext_$cobol_m1fp external static pointer dcl 7-30 cobol_ext_$cobol_m2fp external static pointer dcl 7-32 cobol_ext_$cobol_min1_fileno external static pointer dcl 7-34 cobol_ext_$cobol_min2_fileno_ptr external static pointer dcl 7-36 cobol_ext_$cobol_name_fileno external static pointer dcl 7-38 cobol_ext_$cobol_name_fileno_ptr external static pointer dcl 7-40 cobol_ext_$cobol_ntfp external static pointer dcl 7-42 cobol_ext_$cobol_options external static char(120) packed unaligned dcl 7-97 cobol_ext_$cobol_options_len external static fixed bin(24,0) dcl 7-80 cobol_ext_$cobol_pdofp external static pointer dcl 7-44 cobol_ext_$cobol_pdout_fileno external static fixed bin(24,0) dcl 7-82 cobol_ext_$cobol_pfp external static pointer dcl 7-46 cobol_ext_$cobol_print_fileno external static fixed bin(24,0) dcl 7-84 cobol_ext_$cobol_rm2fp external static pointer dcl 7-48 cobol_ext_$cobol_rmin2_fileno external static fixed bin(24,0) dcl 7-86 cobol_ext_$cobol_rmin2fp external static pointer dcl 7-50 cobol_ext_$cobol_rwdd external static pointer dcl 7-72 cobol_ext_$cobol_rwpd external static pointer dcl 7-74 cobol_ext_$cobol_sfp external static pointer dcl 7-56 cobol_ext_$cobol_w1p external static pointer dcl 7-58 cobol_ext_$cobol_w2p external static pointer dcl 7-60 cobol_ext_$cobol_w3p external static pointer dcl 7-62 cobol_ext_$cobol_w5p external static pointer dcl 7-64 cobol_ext_$cobol_w6p external static pointer dcl 7-66 cobol_ext_$cobol_w7p external static pointer dcl 7-68 cobol_ext_$cobol_x1_fileno external static fixed bin(24,0) dcl 7-88 cobol_ext_$cobol_x2_fileno external static fixed bin(24,0) dcl 7-90 cobol_ext_$cobol_x3_fileno external static fixed bin(24,0) dcl 7-92 cobol_ext_$cobol_x3fp external static pointer dcl 7-70 cobol_ext_$cobol_xlast8 external static bit(1) packed unaligned dcl 7-100 cobol_ext_$report_exists external static bit(1) packed unaligned dcl 7-102 cobol_ext_$report_first_token external static pointer dcl 7-14 cobol_ext_$report_last_token external static pointer dcl 7-16 cobol_fileno1 defined fixed bin(24,0) dcl 7-79 cobol_hfp defined pointer dcl 7-29 cobol_lpr defined char(5) packed unaligned dcl 7-96 cobol_m1fp defined pointer dcl 7-31 cobol_m2fp defined pointer dcl 7-33 cobol_min1_fileno defined pointer dcl 7-35 cobol_min2_fileno_ptr defined pointer dcl 7-37 cobol_name_fileno defined pointer dcl 7-39 cobol_name_fileno_ptr defined pointer dcl 7-41 cobol_ntfp defined pointer dcl 7-43 cobol_options defined char(120) packed unaligned dcl 7-98 cobol_options_len defined fixed bin(24,0) dcl 7-81 cobol_pdofp defined pointer dcl 7-45 cobol_pdout_fileno defined fixed bin(24,0) dcl 7-83 cobol_pfp defined pointer dcl 7-47 cobol_print_fileno defined fixed bin(24,0) dcl 7-85 cobol_rm2fp defined pointer dcl 7-49 cobol_rmin2_fileno defined fixed bin(24,0) dcl 7-87 cobol_rmin2fp defined pointer dcl 7-51 cobol_rwdd defined pointer dcl 7-73 cobol_rwpd defined pointer dcl 7-75 cobol_sfp defined pointer dcl 7-57 cobol_w1p defined pointer dcl 7-59 cobol_w2p defined pointer dcl 7-61 cobol_w3p defined pointer dcl 7-63 cobol_w5p defined pointer dcl 7-65 cobol_w6p defined pointer dcl 7-67 cobol_w7p defined pointer dcl 7-69 cobol_x1_fileno defined fixed bin(24,0) dcl 7-89 cobol_x2_fileno defined fixed bin(24,0) dcl 7-91 cobol_x3_fileno defined fixed bin(24,0) dcl 7-93 cobol_x3fp defined pointer dcl 7-71 cobol_xlast8 defined bit(1) packed unaligned dcl 7-101 compile_count defined fixed bin(17,0) dcl 6-143 coms_charcnt defined fixed bin(17,0) dcl 6-189 coms_wdoff defined fixed bin(17,0) dcl 6-203 con_end_ptr defined pointer dcl 6-11 con_wd_off defined fixed bin(17,0) dcl 6-93 cons_charcnt defined fixed bin(17,0) dcl 6-193 constant_offset defined fixed bin(17,0) dcl 6-157 data_init_flag defined fixed bin(17,0) dcl 6-131 date_compiled_sw defined fixed bin(17,0) dcl 6-181 debug_enable defined fixed bin(17,0) dcl 6-175 def_base_ptr defined pointer dcl 6-13 def_max defined fixed bin(17,0) dcl 6-97 def_wd_off defined fixed bin(17,0) dcl 6-95 diag_ptr defined pointer dcl 6-71 eln_max defined fixed bin(17,0) dcl 6-173 eln_ptr defined pointer dcl 6-69 fixup_max defined fixed bin(17,0) dcl 6-165 fixup_ptr defined pointer dcl 6-31 fs_charcnt defined fixed bin(17,0) dcl 6-185 fs_wdoff defined fixed bin(17,0) dcl 6-199 include_cnt defined fixed bin(17,0) dcl 6-183 include_info_ptr defined pointer dcl 6-87 init_stack_off defined fixed bin(17,0) dcl 6-125 initval_base_ptr defined pointer dcl 6-33 initval_file_ptr defined pointer dcl 6-35 initval_flag defined fixed bin(17,0) dcl 6-179 link_base_ptr defined pointer dcl 6-15 link_max defined fixed bin(17,0) dcl 6-101 link_wd_off defined fixed bin(17,0) dcl 6-99 list_off defined fixed bin(17,0) dcl 6-155 list_ptr defined pointer dcl 6-65 ls_charcnt defined fixed bin(17,0) dcl 6-191 main_pcs_ptr defined pointer dcl 6-85 map_data_max defined fixed bin(17,0) dcl 6-163 map_data_ptr defined pointer dcl 6-55 max_stack_off defined fixed bin(17,0) dcl 6-123 minpral5_ptr defined pointer dcl 6-51 misc_base_ptr defined pointer dcl 6-61 misc_end_ptr defined pointer dcl 6-63 misc_max defined fixed bin(17,0) dcl 6-159 next_tag defined fixed bin(17,0) dcl 6-129 non_source_offset defined fixed bin(17,0) dcl 6-177 ntbuf_ptr defined pointer dcl 6-83 obj_seg_name defined char(32) dcl 6-209 op_con_ptr defined pointer dcl 6-81 para_eop_flag defined fixed bin(17,0) dcl 6-139 pd_map_index defined fixed bin(17,0) dcl 6-117 pd_map_max defined fixed bin(17,0) dcl 6-161 pd_map_ptr defined pointer dcl 6-29 pd_map_sw defined fixed bin(17,0) dcl 6-127 perform_list_ptr defined pointer dcl 6-37 perform_para_index defined fixed bin(17,0) dcl 6-149 perform_sect_index defined fixed bin(17,0) dcl 6-151 priority_no defined fixed bin(17,0) dcl 6-141 ptr_assumption_ind defined fixed bin(17,0) dcl 6-145 ptr_status_ptr defined pointer dcl 6-57 reg_assumption_ind defined fixed bin(17,0) dcl 6-147 reg_status_ptr defined pointer dcl 6-59 reloc_def_base_ptr defined pointer dcl 6-21 reloc_def_max defined fixed bin(24,0) dcl 6-109 reloc_link_base_ptr defined pointer dcl 6-23 reloc_link_max defined fixed bin(24,0) dcl 6-111 reloc_sym_base_ptr defined pointer dcl 6-25 reloc_sym_max defined fixed bin(24,0) dcl 6-113 reloc_text_base_ptr defined pointer dcl 6-19 reloc_text_max defined fixed bin(24,0) dcl 6-107 reloc_work_base_ptr defined pointer dcl 6-27 reloc_work_max defined fixed bin(24,0) dcl 6-115 report_exists defined bit(1) packed unaligned dcl 7-103 report_first_token defined pointer dcl 7-15 report_last_token defined pointer dcl 7-17 reswd_ptr defined pointer dcl 6-79 same_sort_merge_proc defined bit(1) dcl 6-215 scratch_dir defined char(168) dcl 6-207 sect_eop_flag defined fixed bin(17,0) dcl 6-137 seg_init_flag defined fixed bin(17,0) dcl 6-133 seg_init_list_ptr defined pointer dcl 6-41 stack_off defined fixed bin(17,0) dcl 6-121 statement_info_ptr defined pointer dcl 6-77 sym_base_ptr defined pointer dcl 6-17 sym_max defined fixed bin(17,0) dcl 6-105 sym_wd_off defined fixed bin(17,0) dcl 6-103 tag_table_max defined fixed bin(17,0) dcl 6-167 tag_table_ptr defined pointer dcl 6-53 temp_token_area_ptr defined pointer dcl 6-43 temp_token_max defined fixed bin(17,0) dcl 6-169 temp_token_ptr defined pointer dcl 6-45 text_base_ptr defined pointer dcl 6-9 text_wd_off defined fixed bin(17,0) dcl 6-91 token_block1_ptr defined pointer dcl 6-47 token_block2_ptr defined pointer dcl 6-49 value based structure level 1 dcl 3-6 value_cnt defined fixed bin(17,0) dcl 6-195 ws_charcnt defined fixed bin(17,0) dcl 6-187 ws_wdoff defined fixed bin(17,0) dcl 6-201 xref_bypass defined bit(1) dcl 6-213 xref_chain_ptr defined pointer dcl 6-75 xref_token_ptr defined pointer dcl 6-73 NAMES DECLARED BY EXPLICIT CONTEXT. cobol_define_tag 000302 constant entry external dcl 155 cobol_define_tag_nc 000345 constant entry external dcl 178 cobol_equate_tag 000377 constant entry external dcl 200 cobol_fixup 000107 constant entry external dcl 28 cobol_make_fixup 000543 constant entry external dcl 266 cobol_make_tagref 000441 constant entry external dcl 232 define_error 000664 constant label dcl 286 ref 164 188 equate_error 000716 constant label dcl 291 error 000762 constant label dcl 297 ref 289 295 eval_equate 001015 constant entry internal dcl 110 ref 56 fix_cont 000274 constant label dcl 103 ref 284 fixup_error 000567 constant label dcl 279 set ref 78 start_define_tag 000307 constant label dcl 160 start_define_tag_nc 000352 constant label dcl 184 start_equate_tag 000404 constant label dcl 217 start_fixup 000114 constant label dcl 56 start_make_fixup 000550 constant label dcl 271 start_make_tagref 000446 constant label dcl 239 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 1312 1352 1101 1322 Length 1714 1101 40 325 211 2 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME cobol_fixup 184 external procedure is an external procedure. eval_equate internal procedure shares stack frame of external procedure cobol_fixup. STORAGE FOR INTERNAL STATIC VARIABLES. LOC IDENTIFIER BLOCK NAME 000010 fixdef cobol_fixup STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME cobol_fixup 000100 segptr cobol_fixup 000110 wptr cobol_fixup 000112 i cobol_fixup 000113 j cobol_fixup 000114 k cobol_fixup 000115 utemp cobol_fixup 000116 error_info cobol_fixup 000176 i eval_equate 000177 new eval_equate 000200 old eval_equate 000201 tt eval_equate 000202 tn eval_equate 000203 val eval_equate THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc call_ext_out return_mac ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. cobol_reset_r$in_line ioa_$rsnnl signal_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. cobol_$def_base_ptr cobol_$fixup_ptr cobol_$link_base_ptr cobol_$map_data_ptr cobol_$sym_base_ptr cobol_$tag_table_ptr cobol_$text_base_ptr cobol_$text_wd_off LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 28 000104 56 000114 59 000115 60 000121 61 000124 62 000127 64 000132 67 000143 70 000155 71 000165 76 000167 78 000173 81 000174 82 000200 84 000203 87 000204 88 000211 89 000214 90 000227 92 000240 94 000243 96 000254 97 000261 98 000262 100 000270 103 000274 106 000276 155 000277 160 000307 164 000312 167 000317 168 000324 171 000330 173 000340 178 000341 184 000352 188 000355 190 000362 193 000367 195 000374 200 000375 217 000404 222 000421 225 000424 227 000434 232 000435 239 000446 242 000462 243 000465 245 000471 247 000500 248 000502 249 000506 251 000507 252 000511 253 000513 254 000515 255 000521 256 000526 257 000532 261 000533 262 000540 266 000541 271 000550 273 000556 274 000565 275 000566 279 000567 281 000572 283 000631 284 000663 286 000664 288 000667 289 000715 291 000716 293 000721 295 000761 297 000762 303 001014 110 001015 117 001016 120 001023 122 001024 124 001026 126 001037 127 001044 129 001051 132 001055 135 001060 137 001061 139 001064 142 001066 143 001070 145 001072 148 001077 149 001100 ----------------------------------------------------------- Historical Background This edition of the Multics software materials and documentation is provided and donated to Massachusetts Institute of Technology by Group BULL including BULL HN Information Systems Inc. as a contribution to computer science knowledge. This donation is made also to give evidence of the common contributions of Massachusetts Institute of Technology, Bell Laboratories, General Electric, Honeywell Information Systems Inc., Honeywell BULL Inc., Groupe BULL and BULL HN Information Systems Inc. to the development of this operating system. Multics development was initiated by Massachusetts Institute of Technology Project MAC (1963-1970), renamed the MIT Laboratory for Computer Science and Artificial Intelligence in the mid 1970s, under the leadership of Professor Fernando Jose Corbato. Users consider that Multics provided the best software architecture for managing computer hardware properly and for executing programs. Many subsequent operating systems incorporated Multics principles. Multics was distributed in 1975 to 2000 by Group Bull in Europe , and in the U.S. by Bull HN Information Systems Inc., as successor in interest by change in name only to Honeywell Bull Inc. and Honeywell Information Systems Inc. . ----------------------------------------------------------- Permission to use, copy, modify, and distribute these programs and their documentation for any purpose and without fee is hereby granted,provided that the below copyright notice and historical background appear in all copies and that both the copyright notice and historical background and this permission notice appear in supporting documentation, and that the names of MIT, HIS, BULL or BULL HN not be used in advertising or publicity pertaining to distribution of the programs without specific prior written permission. Copyright 1972 by Massachusetts Institute of Technology and Honeywell Information Systems Inc. Copyright 2006 by BULL HN Information Systems Inc. Copyright 2006 by Bull SAS All Rights Reserved