COMPILATION LISTING OF SEGMENT cobol_stop_gen 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 0953.6 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_stop_gen.pl1 Reformatted code to new Cobol standard. 19* END HISTORY COMMENTS */ 20 21 22 /* Modified on 06/11/81 by FCH, OPERATOR(94) used for STOP RUN if CD INITIAL */ 23 /* Modified on 01/14/77 by ORN to signal command_abort_ rather than cobol_compiler_error */ 24 /* Modified since Version 2.0 */ 25 26 /*{*/ 27 /* format: style3 */ 28 cobol_stop_gen: 29 proc (in_token_ptr); 30 31 /* 32*The procedure cobol_stop_gen generates the code necessary to imple- 33*ment the STOP statement. The general format of the STOP state- 34*ment is: 35* 36* S_T_O_P_ {R_U_N_|literal} 37* 38*If RUN is specified, execution of the run-unit ceases and control 39*is transferred to the operating system. This is accomplished by 40*calling cobol_stoprun_, a program supplied as part of the run 41*time package. 42* 43*If literal is specified, the execution of the run-unit is sus- 44*pended and the literal plus prog_id, as contained in the stat 45*structure of the program, is communicated to the terminal. A 46*start command issued from the terminal reactivates the run-unit. 47*The DISPLAY generator is called to generate the code necessary to 48*transmit the desired message to the terminal and the system sub- 49*routine cu_$cl is called to reach command level. Execution is 50*resumed with the instruction following the call to cu_$cl. 51* 52*U__s_a_g_e:_ 53* 54* declare cobol_stop_gen entry (ptr); 55* 56* call cobol_stop_gen(in_token_ptr); 57* 58* */ 59 60 61 /* 62*G__e_n_e_r_a_t_e_d_C__o_d_e:_ 63* 64*STOP RUN - 65* 66*For the STOP RUN statement, code is generated to place the line 67*number of the STOP RUN source statement in the program's stat 68*structure and to call cobol_stoprun_, a program supplied as part 69*of the run time package. cobol_stoprun_ has no parameters. 70* 71*The code generated to set line_no in stat and call cobol_stoprun_ is 72*as follows: 73* 74*loc_a lda iln1,dl 75* ldq iln2,dl 76* staq pr4|36 stat.line_no 77* eax1 pr6|46 78* fld 0,dl 79* epp2 pr4|ep_c_sr_,* 80* tsx0 pr0|call_eo 81* tra loc_a_relp,ic 82* 83*where: 84* 85*iln1 and iln2 are the two parts of the internal line number of 86* the source line containing the STOP RUN statement 87* as determined at compile time. 88* 89*ep_c_sr_ is the offset, relative to the base of the Linkage 90* Section, of an execution time pointer (created as a 91* Type 4 link in the Object Segment) to the entry 92* point of cobol_stoprun_. 93* 94*call_eo is the location, relative to the label operator_ 95* table in cobol_operators_, of the first instruction 96* of the PLI call operator call_ext_out. The current 97* value of call_eo is 6. 98* 99*loc_a_relp is the offset, relative to the instruction in which 100* it appears, of the first instruction generated to 101* implement the STOP RUN statement (it may be either 102* the instruction labeled loc_a in the above code or 103* an instruction generated to load pr4 to point to 104* the Linkage Section). 105* 106*STOP literal - 107* 108*For the STOP literal statement, code is generated to print a mes- 109*sage comprising the program identification (stat.prog_id), a 110*colon space, and the literal on the terminal and to suspend the 111*execution of the run-unit. Mc_stop_run calls cobol_display_gen to 112*generate the code for printing the message at the terminal and 113*itself generates the code for calling system subroutine cu_$cl 114*which affects the required suspension of execution. A description 115*of the functionality of cu_$cl may be found in the MPM. The code 116*generated to call cu_$cl, which has no arguments, is as follows: 117* 118* eax1 pr6|46 119* fld 0,dl 120* epp2 pr4|ep_cu_$cl,* 121* tsx0 pr0|call_eo 122* 123*where: 124* 125*ep_cu_$cl is the offset, relative to the base of the Linkage Sec- 126* tion, of an execution time pointer (created as a Type 4 127* link in the Object Segment) to the entry point of 128* cu_$cl. 129*all_eo is the location, relative to the label operator_table 130* in cobol_operators_, of the first instruction of the PLI 131* call operator call_ext_out. The current value of 132* call_eo is 6. 133* 134*R__e_l_o_c_a_t_i_o_n_I__n_f_o_r_m_a_t_i_o_n:_ 135* 136*All instructions generated directly by cobol_stop_gen except those 137*referencing data in the Linkage Section of the Object Segment are 138*non-relocatable. The relocation code generated for each half of 139*each non-relocatable instruction is "00000"b. 140* 141*Instructions generated directly by cobol_stop_gen that reference 142*data in the Linkage Section i.e. those instructions in the code 143*sequence of the form 144* pr4| 145*are relocatable with respect to their left hand half and non-re- 146*locatable with respect to thier right hand half. The relocation 147*code generated for the relocatable half of each such instruction 148*is "11001"b, when the operand referenced by the instruction is 149*internal data, and "10100"b, when it is a link. In either case, 150*the code generated for the non_relocatable half is "00000"b. 151* 152*D__a_t_a:_ 153* 154* % include cobol_; 155* 156* Items in cobol_ include file used (u) and/or set (s) by 157* cobol_stop_gen: 158* 159* cobol_ptr (u) 160* temp_token_ptr (u) 161* text_wd_off (u) 162* 163* */ 164 165 dcl inst_seq (4) bit (18) unaligned static init ("000000000000000000"b, "010011101000000111"b, 166 /* lda iln1,dl */ 167 "000000000000000000"b, "010011110000000111"b); 168 /* ldq iln2,dl */ 169 170 dcl tra_ic (2) bit (18) unaligned static init ("000000000000000000"b, "111001000000000100"b); 171 /* tra loc-a-relp,ic */ 172 173 declare 1 token3 aligned static, 174 2 size fixed bin aligned init (25), 175 2 line fixed bin aligned init (0), 176 2 column fixed bin aligned init (0), 177 2 type fixed bin aligned init (3), 178 2 lit_type bit (1) unaligned init ("0"b), 179 2 all_lit bit (1) unaligned init ("0"b), 180 2 filler1 bit (6) unaligned init ((6)"0"b), 181 2 lit_size fixed bin aligned init (2), 182 2 string char (2) aligned init (": "); 183 184 declare 1 display_eos aligned static, 185 2 size fixed bin aligned init (38), 186 2 line fixed bin aligned init (0), 187 2 column fixed bin aligned init (0), 188 2 type fixed bin aligned init (19), 189 2 verb fixed bin aligned init (42), 190 2 e fixed bin aligned init (3), 191 2 h fixed bin aligned init (0), 192 2 i fixed bin aligned init (0), 193 2 j fixed bin aligned init (0), 194 2 a bit (3) unaligned init ("001"b), 195 2 b bit (1) unaligned init ("0"b), 196 2 c bit (1) unaligned init ("0"b), 197 2 d bit (2) unaligned init ("00"b), 198 2 f bit (2) unaligned init ("00"b), 199 2 g bit (2) unaligned init ("00"b), 200 2 k bit (5) unaligned init ((5)"0"b); 201 /* Local Data */ 202 203 declare offset fixed bin, /* Word offset. */ 204 line_no fixed bin, /* Line number from type1 token. */ 205 local_in_token_ptr ptr, /* Ptr to in_token structure */ 206 /* passed to display generator. */ 207 type9_token_ptr ptr; /* Ptr to type 9 token for */ 208 /* stat.prog_id. */ 209 210 dcl next_tag1; 211 212 dcl dn_ptr ptr; /* Ptr to data_name token. */ 213 214 215 declare 1 seg_ovfl_error aligned static, 216 2 my_name char (32) init ("cobol_stop_gen"), 217 2 message_len fixed bin init (40), 218 2 message char (40) init ("temp_token_area segment length exceeded!"); 219 220 /* 221*P__r_o_c_e_d_u_r_e_s_C__a_l_l_e_d:_ 222* */ 223 224 dcl cobol_display_gen entry (ptr), 225 cobol_emit entry (ptr, ptr, fixed bin), 226 cobol_reg_manager$before_op 227 entry (fixed bin), 228 cobol_make_type9$alphanumeric 229 entry (ptr, fixed bin, fixed bin, fixed bin), 230 cobol_reg_manager$after_op 231 entry (fixed bin), 232 cobol_call_op entry (fixed bin, fixed bin), 233 cobol_define_tag entry (fixed bin), 234 signal_ entry (char (*), ptr, ptr); 235 236 /* 237*B__u_i_l_t-__i_n_F__u_n_c_t_i_o_n_s_U__s_e_d:_ 238* */ 239 240 dcl addr builtin, 241 addrel builtin, 242 binary builtin, 243 null builtin, 244 rel builtin, 245 substr builtin, 246 unspec builtin; 247 248 /*}*/ 249 1 1 1 2 /* BEGIN INCLUDE FILE ... cobol_.incl.pl1 */ 1 3 /* last modified Feb 4, 1977 by ORN */ 1 4 1 5 /* This file defines all external data used in the generator phase of Multics Cobol */ 1 6 1 7 /* POINTERS */ 1 8 dcl cobol_$text_base_ptr ptr ext; 1 9 dcl text_base_ptr ptr defined (cobol_$text_base_ptr); 1 10 dcl cobol_$con_end_ptr ptr ext; 1 11 dcl con_end_ptr ptr defined (cobol_$con_end_ptr); 1 12 dcl cobol_$def_base_ptr ptr ext; 1 13 dcl def_base_ptr ptr defined (cobol_$def_base_ptr); 1 14 dcl cobol_$link_base_ptr ptr ext; 1 15 dcl link_base_ptr ptr defined (cobol_$link_base_ptr); 1 16 dcl cobol_$sym_base_ptr ptr ext; 1 17 dcl sym_base_ptr ptr defined (cobol_$sym_base_ptr); 1 18 dcl cobol_$reloc_text_base_ptr ptr ext; 1 19 dcl reloc_text_base_ptr ptr defined (cobol_$reloc_text_base_ptr); 1 20 dcl cobol_$reloc_def_base_ptr ptr ext; 1 21 dcl reloc_def_base_ptr ptr defined (cobol_$reloc_def_base_ptr); 1 22 dcl cobol_$reloc_link_base_ptr ptr ext; 1 23 dcl reloc_link_base_ptr ptr defined (cobol_$reloc_link_base_ptr); 1 24 dcl cobol_$reloc_sym_base_ptr ptr ext; 1 25 dcl reloc_sym_base_ptr ptr defined (cobol_$reloc_sym_base_ptr); 1 26 dcl cobol_$reloc_work_base_ptr ptr ext; 1 27 dcl reloc_work_base_ptr ptr defined (cobol_$reloc_work_base_ptr); 1 28 dcl cobol_$pd_map_ptr ptr ext; 1 29 dcl pd_map_ptr ptr defined (cobol_$pd_map_ptr); 1 30 dcl cobol_$fixup_ptr ptr ext; 1 31 dcl fixup_ptr ptr defined (cobol_$fixup_ptr); 1 32 dcl cobol_$initval_base_ptr ptr ext; 1 33 dcl initval_base_ptr ptr defined (cobol_$initval_base_ptr); 1 34 dcl cobol_$initval_file_ptr ptr ext; 1 35 dcl initval_file_ptr ptr defined (cobol_$initval_file_ptr); 1 36 dcl cobol_$perform_list_ptr ptr ext; 1 37 dcl perform_list_ptr ptr defined (cobol_$perform_list_ptr); 1 38 dcl cobol_$alter_list_ptr ptr ext; 1 39 dcl alter_list_ptr ptr defined (cobol_$alter_list_ptr); 1 40 dcl cobol_$seg_init_list_ptr ptr ext; 1 41 dcl seg_init_list_ptr ptr defined (cobol_$seg_init_list_ptr); 1 42 dcl cobol_$temp_token_area_ptr ptr ext; 1 43 dcl temp_token_area_ptr ptr defined (cobol_$temp_token_area_ptr); 1 44 dcl cobol_$temp_token_ptr ptr ext; 1 45 dcl temp_token_ptr ptr defined (cobol_$temp_token_ptr); 1 46 dcl cobol_$token_block1_ptr ptr ext; 1 47 dcl token_block1_ptr ptr defined (cobol_$token_block1_ptr); 1 48 dcl cobol_$token_block2_ptr ptr ext; 1 49 dcl token_block2_ptr ptr defined (cobol_$token_block2_ptr); 1 50 dcl cobol_$minpral5_ptr ptr ext; 1 51 dcl minpral5_ptr ptr defined (cobol_$minpral5_ptr); 1 52 dcl cobol_$tag_table_ptr ptr ext; 1 53 dcl tag_table_ptr ptr defined (cobol_$tag_table_ptr); 1 54 dcl cobol_$map_data_ptr ptr ext; 1 55 dcl map_data_ptr ptr defined (cobol_$map_data_ptr); 1 56 dcl cobol_$ptr_status_ptr ptr ext; 1 57 dcl ptr_status_ptr ptr defined (cobol_$ptr_status_ptr); 1 58 dcl cobol_$reg_status_ptr ptr ext; 1 59 dcl reg_status_ptr ptr defined (cobol_$reg_status_ptr); 1 60 dcl cobol_$misc_base_ptr ptr ext; 1 61 dcl misc_base_ptr ptr defined (cobol_$misc_base_ptr); 1 62 dcl cobol_$misc_end_ptr ptr ext; 1 63 dcl misc_end_ptr ptr defined (cobol_$misc_end_ptr); 1 64 dcl cobol_$list_ptr ptr ext; 1 65 dcl list_ptr ptr defined (cobol_$list_ptr); 1 66 dcl cobol_$allo1_ptr ptr ext; 1 67 dcl allo1_ptr ptr defined (cobol_$allo1_ptr); 1 68 dcl cobol_$eln_ptr ptr ext; 1 69 dcl eln_ptr ptr defined (cobol_$eln_ptr); 1 70 dcl cobol_$diag_ptr ptr ext; 1 71 dcl diag_ptr ptr defined (cobol_$diag_ptr); 1 72 dcl cobol_$xref_token_ptr ptr ext; 1 73 dcl xref_token_ptr ptr defined (cobol_$xref_token_ptr); 1 74 dcl cobol_$xref_chain_ptr ptr ext; 1 75 dcl xref_chain_ptr ptr defined (cobol_$xref_chain_ptr); 1 76 dcl cobol_$statement_info_ptr ptr ext; 1 77 dcl statement_info_ptr ptr defined (cobol_$statement_info_ptr); 1 78 dcl cobol_$reswd_ptr ptr ext; 1 79 dcl reswd_ptr ptr defined (cobol_$reswd_ptr); 1 80 dcl cobol_$op_con_ptr ptr ext; 1 81 dcl op_con_ptr ptr defined (cobol_$op_con_ptr); 1 82 dcl cobol_$ntbuf_ptr ptr ext; 1 83 dcl ntbuf_ptr ptr defined (cobol_$ntbuf_ptr); 1 84 dcl cobol_$main_pcs_ptr ptr ext; 1 85 dcl main_pcs_ptr ptr defined (cobol_$main_pcs_ptr); 1 86 dcl cobol_$include_info_ptr ptr ext; 1 87 dcl include_info_ptr ptr defined (cobol_$include_info_ptr); 1 88 1 89 /* FIXED BIN */ 1 90 dcl cobol_$text_wd_off fixed bin ext; 1 91 dcl text_wd_off fixed bin defined (cobol_$text_wd_off); 1 92 dcl cobol_$con_wd_off fixed bin ext; 1 93 dcl con_wd_off fixed bin defined (cobol_$con_wd_off); 1 94 dcl cobol_$def_wd_off fixed bin ext; 1 95 dcl def_wd_off fixed bin defined (cobol_$def_wd_off); 1 96 dcl cobol_$def_max fixed bin ext; 1 97 dcl def_max fixed bin defined (cobol_$def_max); 1 98 dcl cobol_$link_wd_off fixed bin ext; 1 99 dcl link_wd_off fixed bin defined (cobol_$link_wd_off); 1 100 dcl cobol_$link_max fixed bin ext; 1 101 dcl link_max fixed bin defined (cobol_$link_max); 1 102 dcl cobol_$sym_wd_off fixed bin ext; 1 103 dcl sym_wd_off fixed bin defined (cobol_$sym_wd_off); 1 104 dcl cobol_$sym_max fixed bin ext; 1 105 dcl sym_max fixed bin defined (cobol_$sym_max); 1 106 dcl cobol_$reloc_text_max fixed bin(24) ext; 1 107 dcl reloc_text_max fixed bin(24) defined (cobol_$reloc_text_max); 1 108 dcl cobol_$reloc_def_max fixed bin(24) ext; 1 109 dcl reloc_def_max fixed bin(24) defined (cobol_$reloc_def_max); 1 110 dcl cobol_$reloc_link_max fixed bin(24) ext; 1 111 dcl reloc_link_max fixed bin(24) defined (cobol_$reloc_link_max); 1 112 dcl cobol_$reloc_sym_max fixed bin(24) ext; 1 113 dcl reloc_sym_max fixed bin(24) defined (cobol_$reloc_sym_max); 1 114 dcl cobol_$reloc_work_max fixed bin(24) ext; 1 115 dcl reloc_work_max fixed bin(24) defined (cobol_$reloc_work_max); 1 116 dcl cobol_$pd_map_index fixed bin ext; 1 117 dcl pd_map_index fixed bin defined (cobol_$pd_map_index); 1 118 dcl cobol_$cobol_data_wd_off fixed bin ext; 1 119 dcl cobol_data_wd_off fixed bin defined (cobol_$cobol_data_wd_off); 1 120 dcl cobol_$stack_off fixed bin ext; 1 121 dcl stack_off fixed bin defined (cobol_$stack_off); 1 122 dcl cobol_$max_stack_off fixed bin ext; 1 123 dcl max_stack_off fixed bin defined (cobol_$max_stack_off); 1 124 dcl cobol_$init_stack_off fixed bin ext; 1 125 dcl init_stack_off fixed bin defined (cobol_$init_stack_off); 1 126 dcl cobol_$pd_map_sw fixed bin ext; 1 127 dcl pd_map_sw fixed bin defined (cobol_$pd_map_sw); 1 128 dcl cobol_$next_tag fixed bin ext; 1 129 dcl next_tag fixed bin defined (cobol_$next_tag); 1 130 dcl cobol_$data_init_flag fixed bin ext; 1 131 dcl data_init_flag fixed bin defined (cobol_$data_init_flag); 1 132 dcl cobol_$seg_init_flag fixed bin ext; 1 133 dcl seg_init_flag fixed bin defined (cobol_$seg_init_flag); 1 134 dcl cobol_$alter_flag fixed bin ext; 1 135 dcl alter_flag fixed bin defined (cobol_$alter_flag); 1 136 dcl cobol_$sect_eop_flag fixed bin ext; 1 137 dcl sect_eop_flag fixed bin defined (cobol_$sect_eop_flag); 1 138 dcl cobol_$para_eop_flag fixed bin ext; 1 139 dcl para_eop_flag fixed bin defined (cobol_$para_eop_flag); 1 140 dcl cobol_$priority_no fixed bin ext; 1 141 dcl priority_no fixed bin defined (cobol_$priority_no); 1 142 dcl cobol_$compile_count fixed bin ext; 1 143 dcl compile_count fixed bin defined (cobol_$compile_count); 1 144 dcl cobol_$ptr_assumption_ind fixed bin ext; 1 145 dcl ptr_assumption_ind fixed bin defined (cobol_$ptr_assumption_ind); 1 146 dcl cobol_$reg_assumption_ind fixed bin ext; 1 147 dcl reg_assumption_ind fixed bin defined (cobol_$reg_assumption_ind); 1 148 dcl cobol_$perform_para_index fixed bin ext; 1 149 dcl perform_para_index fixed bin defined (cobol_$perform_para_index); 1 150 dcl cobol_$perform_sect_index fixed bin ext; 1 151 dcl perform_sect_index fixed bin defined (cobol_$perform_sect_index); 1 152 dcl cobol_$alter_index fixed bin ext; 1 153 dcl alter_index fixed bin defined (cobol_$alter_index); 1 154 dcl cobol_$list_off fixed bin ext; 1 155 dcl list_off fixed bin defined (cobol_$list_off); 1 156 dcl cobol_$constant_offset fixed bin ext; 1 157 dcl constant_offset fixed bin defined (cobol_$constant_offset); 1 158 dcl cobol_$misc_max fixed bin ext; 1 159 dcl misc_max fixed bin defined (cobol_$misc_max); 1 160 dcl cobol_$pd_map_max fixed bin ext; 1 161 dcl pd_map_max fixed bin defined (cobol_$pd_map_max); 1 162 dcl cobol_$map_data_max fixed bin ext; 1 163 dcl map_data_max fixed bin defined (cobol_$map_data_max); 1 164 dcl cobol_$fixup_max fixed bin ext; 1 165 dcl fixup_max fixed bin defined (cobol_$fixup_max); 1 166 dcl cobol_$tag_table_max fixed bin ext; 1 167 dcl tag_table_max fixed bin defined (cobol_$tag_table_max); 1 168 dcl cobol_$temp_token_max fixed bin ext; 1 169 dcl temp_token_max fixed bin defined (cobol_$temp_token_max); 1 170 dcl cobol_$allo1_max fixed bin ext; 1 171 dcl allo1_max fixed bin defined (cobol_$allo1_max); 1 172 dcl cobol_$eln_max fixed bin ext; 1 173 dcl eln_max fixed bin defined (cobol_$eln_max); 1 174 dcl cobol_$debug_enable fixed bin ext; 1 175 dcl debug_enable fixed bin defined (cobol_$debug_enable); 1 176 dcl cobol_$non_source_offset fixed bin ext; 1 177 dcl non_source_offset fixed bin defined (cobol_$non_source_offset); 1 178 dcl cobol_$initval_flag fixed bin ext; 1 179 dcl initval_flag fixed bin defined (cobol_$initval_flag); 1 180 dcl cobol_$date_compiled_sw fixed bin ext; 1 181 dcl date_compiled_sw fixed bin defined (cobol_$date_compiled_sw); 1 182 dcl cobol_$include_cnt fixed bin ext; 1 183 dcl include_cnt fixed bin defined (cobol_$include_cnt); 1 184 dcl cobol_$fs_charcnt fixed bin ext; 1 185 dcl fs_charcnt fixed bin defined (cobol_$fs_charcnt); 1 186 dcl cobol_$ws_charcnt fixed bin ext; 1 187 dcl ws_charcnt fixed bin defined (cobol_$ws_charcnt); 1 188 dcl cobol_$coms_charcnt fixed bin ext; 1 189 dcl coms_charcnt fixed bin defined (cobol_$coms_charcnt); 1 190 dcl cobol_$ls_charcnt fixed bin ext; 1 191 dcl ls_charcnt fixed bin defined (cobol_$ls_charcnt); 1 192 dcl cobol_$cons_charcnt fixed bin ext; 1 193 dcl cons_charcnt fixed bin defined (cobol_$cons_charcnt); 1 194 dcl cobol_$value_cnt fixed bin ext; 1 195 dcl value_cnt fixed bin defined (cobol_$value_cnt); 1 196 dcl cobol_$cd_cnt fixed bin ext; 1 197 dcl cd_cnt fixed bin defined (cobol_$cd_cnt); 1 198 dcl cobol_$fs_wdoff fixed bin ext; 1 199 dcl fs_wdoff fixed bin defined (cobol_$fs_wdoff); 1 200 dcl cobol_$ws_wdoff fixed bin ext; 1 201 dcl ws_wdoff fixed bin defined (cobol_$ws_wdoff); 1 202 dcl cobol_$coms_wdoff fixed bin ext; 1 203 dcl coms_wdoff fixed bin defined (cobol_$coms_wdoff); 1 204 1 205 /* CHARACTER */ 1 206 dcl cobol_$scratch_dir char (168) aligned ext; 1 207 dcl scratch_dir char (168) aligned defined (cobol_$scratch_dir); /* -42- */ 1 208 dcl cobol_$obj_seg_name char (32) aligned ext; 1 209 dcl obj_seg_name char (32) aligned defined (cobol_$obj_seg_name); /* -8- */ 1 210 1 211 /* BIT */ 1 212 dcl cobol_$xref_bypass bit(1) aligned ext; 1 213 dcl xref_bypass bit(1) aligned defined (cobol_$xref_bypass); /* -1- */ 1 214 dcl cobol_$same_sort_merge_proc bit(1) aligned ext; 1 215 dcl same_sort_merge_proc bit(1) aligned defined (cobol_$same_sort_merge_proc); /* -1- */ 1 216 1 217 1 218 /* END INCLUDE FILE ... cobol_incl.pl1*/ 1 219 1 220 250 2 1 2 2 /* BEGIN INCLUDE FILE ... cobol_type1.incl.pl1 */ 2 3 /* Last modified on 11/19/76 by ORN */ 2 4 2 5 /* 2 6*A reserved word token is created in the minpral files for each occurrence 2 7*of a reserved word in the source program. The value of the key field 2 8*indicates the specific reserved word which a type 1 token represents. 2 9**/ 2 10 2 11 dcl rw_ptr ptr; 2 12 2 13 /* BEGIN DECLARATION OF TYPE1 (RESERVED WORD) TOKEN */ 2 14 dcl 1 reserved_word based (rw_ptr), 3 1 3 2 /* begin include file ... cobol_TYPE1.incl.pl1 */ 3 3 /* Last modified on 11/17/76 by ORN */ 3 4 /* Last modified on 12/28/76 by FCH */ 3 5 /* Last modified on 12/16/80 by FCH */ 3 6 3 7 /* header */ 3 8 2 size fixed bin, 3 9 2 line fixed bin, 3 10 2 column fixed bin, 3 11 2 type fixed bin, 3 12 /* body */ 3 13 2 key fixed bin, 3 14 /* procedure division class bits */ 3 15 2 verb bit (1), 3 16 2 arith_op bit (1), 3 17 2 figcon bit (1), 3 18 2 terminator bit (1), 3 19 2 end_dec bit (1), 3 20 2 rel_op bit (1), 3 21 2 imper_verb bit (1), 3 22 2 end_cobol bit (1), 3 23 /* data division class bits */ 3 24 2 section_header bit (1), 3 25 2 fs_ind bit (1), 3 26 2 fd_clause bit (1), 3 27 2 dd_clause bit (1), 3 28 2 cd_input bit (1), 3 29 2 cd_output bit (1), 3 30 2 cset_name bit (1), 3 31 2 ss_division bit (1), 3 32 2 repl_jump_ind bit (4), 3 33 2 ided_recovery bit (1), 3 34 2 report_writer bit (5), 3 35 2 ss_desc_entry bit (1), 3 36 2 jump_index fixed bin, 3 37 2 length fixed bin, 3 38 2 name char(0 refer(reserved_word.length)); 3 39 3 40 3 41 3 42 /* end include file ... cobol_TYPE1.incl.pl1 */ 3 43 2 15 2 16 /* END DECLARATION OF TYPE1 (RESERVED WORD) TOKEN */ 2 17 2 18 /* END INCLUDE FILE ... cobol_type1.incl.pl1 */ 2 19 251 4 1 4 2 /* BEGIN INCLUDE FILE ... cobol_type9.incl.pl1 */ 4 3 /* Last modified on 11/19/76 by ORN */ 4 4 4 5 /* 4 6*A type 9 data name token is entered into the name table by the data 4 7*division syntax phase for each data name described in the data division. 4 8*The replacement phase subsequently replaces type 8 user word references 4 9*to data names in the procedure division minpral file with the corresponding 4 10*type 9 tokens from the name table. 4 11**/ 4 12 4 13 /* dcl dn_ptr ptr; */ 4 14 4 15 /* BEGIN DECLARATION OF TYPE9 (DATA NAME) TOKEN */ 4 16 dcl 1 data_name based (dn_ptr), 5 1 5 2 /* begin include file ... cobol_TYPE9.incl.pl1 */ 5 3 /* Last modified on 06/19/77 by ORN */ 5 4 /* Last modified on 12/28/76 by FCH */ 5 5 5 6 /* header */ 5 7 2 size fixed bin, 5 8 2 line fixed bin, 5 9 2 column fixed bin, 5 10 2 type fixed bin, 5 11 /* body */ 5 12 2 string_ptr ptr, 5 13 2 prev_rec ptr, 5 14 2 searched bit (1), 5 15 2 duplicate bit (1), 5 16 2 saved bit (1), 5 17 2 debug_ind bit (1), 5 18 2 filler2 bit (3), 5 19 2 used_as_sub bit (1), 5 20 2 def_line fixed bin, 5 21 2 level fixed bin, 5 22 2 linkage fixed bin, 5 23 2 file_num fixed bin, 5 24 2 size_rtn fixed bin, 5 25 2 item_length fixed bin(24), 5 26 2 places_left fixed bin, 5 27 2 places_right fixed bin, 5 28 /* description */ 5 29 2 file_section bit (1), 5 30 2 working_storage bit (1), 5 31 2 constant_section bit (1), 5 32 2 linkage_section bit (1), 5 33 2 communication_section bit (1), 5 34 2 report_section bit (1), 5 35 2 level_77 bit (1), 5 36 2 level_01 bit (1), 5 37 2 non_elementary bit (1), 5 38 2 elementary bit (1), 5 39 2 filler_item bit (1), 5 40 2 s_of_rdf bit (1), 5 41 2 o_of_rdf bit (1), 5 42 2 bin_18 bit (1), 5 43 2 bin_36 bit (1), 5 44 2 pic_has_l bit (1), 5 45 2 pic_is_do bit (1), 5 46 2 numeric bit (1), 5 47 2 numeric_edited bit (1), 5 48 2 alphanum bit (1), 5 49 2 alphanum_edited bit (1), 5 50 2 alphabetic bit (1), 5 51 2 alphabetic_edited bit (1), 5 52 2 pic_has_p bit (1), 5 53 2 pic_has_ast bit (1), 5 54 2 item_signed bit(1), 5 55 2 sign_separate bit (1), 5 56 2 display bit (1), 5 57 2 comp bit (1), 5 58 2 ascii_packed_dec_h bit (1), /* as of 8/16/76 this field used for comp8. */ 5 59 2 ascii_packed_dec bit (1), 5 60 2 ebcdic_packed_dec bit (1), 5 61 2 bin_16 bit (1), 5 62 2 bin_32 bit (1), 5 63 2 usage_index bit (1), 5 64 2 just_right bit (1), 5 65 2 compare_argument bit (1), 5 66 2 sync bit (1), 5 67 2 temporary bit (1), 5 68 2 bwz bit (1), 5 69 2 variable_length bit (1), 5 70 2 subscripted bit (1), 5 71 2 occurs_do bit (1), 5 72 2 key_a bit (1), 5 73 2 key_d bit (1), 5 74 2 indexed_by bit (1), 5 75 2 value_numeric bit (1), 5 76 2 value_non_numeric bit (1), 5 77 2 value_signed bit (1), 5 78 2 sign_type bit (3), 5 79 2 pic_integer bit (1), 5 80 2 ast_when_zero bit (1), 5 81 2 label_record bit (1), 5 82 2 sign_clause_occurred bit (1), 5 83 2 okey_dn bit (1), 5 84 2 subject_of_keyis bit (1), 5 85 2 exp_redefining bit (1), 5 86 2 sync_in_rec bit (1), 5 87 2 rounded bit (1), 5 88 2 ad_bit bit (1), 5 89 2 debug_all bit (1), 5 90 2 overlap bit (1), 5 91 2 sum_counter bit (1), 5 92 2 exp_occurs bit (1), 5 93 2 linage_counter bit (1), 5 94 2 rnm_01 bit (1), 5 95 2 aligned bit (1), 5 96 2 not_user_writable bit (1), 5 97 2 database_key bit (1), 5 98 2 database_data_item bit (1), 5 99 2 seg_num fixed bin, 5 100 2 offset fixed bin(24), 5 101 2 initial_ptr fixed bin, 5 102 2 edit_ptr fixed bin, 5 103 2 occurs_ptr fixed bin, 5 104 2 do_rec char(5), 5 105 2 bitt bit (1), 5 106 2 byte bit (1), 5 107 2 half_word bit (1), 5 108 2 word bit (1), 5 109 2 double_word bit (1), 5 110 2 half_byte bit (1), 5 111 2 filler5 bit (1), 5 112 2 bit_offset bit (4), 5 113 2 son_cnt bit (16), 5 114 2 max_red_size fixed bin(24), 5 115 2 name_size fixed bin, 5 116 2 name char(0 refer(data_name.name_size)); 5 117 5 118 5 119 5 120 /* end include file ... cobol_TYPE9.incl.pl1 */ 5 121 4 17 4 18 /* END DECLARATION OF TYPE9 (DATA NAME) TOKEN */ 4 19 4 20 /* END INCLUDE FILE ... cobol_type9.incl.pl1 */ 4 21 252 6 1 6 2 /* BEGIN INCLUDE FILE ... cobol_type19.incl.pl1 */ 6 3 /* last modified on 11/19/76 by ORN */ 6 4 6 5 /* 6 6*A type 19 end of statement token is created in the procedure division 6 7*minpral file at the end of each minpral statement generated by the 6 8*procedure division syntax phase. A minpral statement may be a complete or 6 9*partial source language statement. A type 19 token contains information 6 10*describing the statement which it delimits. 6 11**/ 6 12 6 13 dcl eos_ptr ptr; 6 14 6 15 /* BEGIN DECLARATION OF TYPE19 (END STATEMENT) TOKEN */ 6 16 dcl 1 end_stmt based (eos_ptr), 7 1 7 2 /* begin include file ... cobol_TYPE19.incl.pl1 */ 7 3 /* Last modified on 11/17/76 by ORN */ 7 4 7 5 /* header */ 7 6 2 size fixed bin, 7 7 2 line fixed bin, 7 8 2 column fixed bin, 7 9 2 type fixed bin, 7 10 /* body */ 7 11 2 verb fixed bin, 7 12 2 e fixed bin, 7 13 2 h fixed bin, 7 14 2 i fixed bin, 7 15 2 j fixed bin, 7 16 2 a bit (3), 7 17 2 b bit (1), 7 18 2 c bit (1), 7 19 2 d bit (2), 7 20 2 f bit (2), 7 21 2 g bit (2), 7 22 2 k bit (5), 7 23 2 always_an bit (1); 7 24 7 25 /* end include file ... cobol_TYPE19.incl.pl1 */ 7 26 6 17 6 18 /* END DECLARATION OF TYPE19 (END STATEMENT) TOKEN */ 6 19 6 20 /* 6 21*FIELD CONTENTS 6 22* 6 23*size The total size in bytes of this end of statement token. 6 24*line 0 6 25*column 0 6 26*type 19 6 27*verb A value indicating the verb in this statement 6 28* 1 = accept 6 29* 2 = add 6 30* 3 = on size error 6 31* 4 = alter 6 32* 5 = call 6 33* 7 = cancel 6 34* 8 = close 6 35* 9 = divide 6 36* 10 = multiply 6 37* 11 = subtract 6 38* 12 = exit 6 39* 14 = go 6 40* 15 = merge 6 41* 16 = initiate 6 42* 17 = inspect 6 43* 18 = move 6 44* 19 = open 6 45* 20 = perform 6 46* 21 = read 6 47* 23 = receive 6 48* 24 = release 6 49* 25 = return 6 50* 26 = search 6 51* 27 = rewrite 6 52* 29 = seek 6 53* 30 = send 6 54* 31 = set 6 55* 33 = stop 6 56* 34 = string 6 57* 35 = suspend 6 58* 36 = terminate 6 59* 37 = unstring 6 60* 38 = write 6 61* 39 = use 6 62* 40 = compute 6 63* 41 = disable 6 64* 42 = display 6 65* 43 = enable 6 66* 45 = generate 6 67* 46 = hold 6 68* 48 = process 6 69* 49 = sort 6 70* 52 = procedure 6 71* 53 = declaratives 6 72* 54 = section name 6 73* 55 = paragraph name 6 74* 98 = end 6 75*e,h,i,j The significance of these fields differs with each 6 76* statement. These fields are normally used as counters. 6 77*a,b,c,d,f,g,k The significance of these fields differs with each 6 78* statement. These fields are normally used as indicators. 6 79**/ 6 80 6 81 /* END INCLUDE FILE ... cobol_type19.incl.pl1 */ 6 82 253 8 1 8 2 /* BEGIN INCLUDE FILE ... cobol_in_token.incl.pl1 */ 8 3 8 4 /* Last modified August 22, 1974 by AEG */ 8 5 8 6 8 7 declare in_token_ptr ptr; 8 8 8 9 declare 1 in_token aligned based(in_token_ptr), 8 10 2 n fixed bin aligned, 8 11 2 code fixed bin aligned, 8 12 2 token_ptr(0 refer(in_token.n)) ptr aligned; 8 13 8 14 8 15 /* END INCLUDE FILE ... cobol_in_token.incl.pl1 */ 8 16 254 255 256 257 /*************************************/ 258 259 /*[4.4-1]*/ 260 dcl A bit (3), 261 op_num fixed bin; 262 start: /*[4.4-1]*/ 263 A = in_token.token_ptr (in_token.n) -> end_stmt.a; 264 265 /*[4.4-1]*/ 266 if A ^= "001"b 267 then goto stop_run; 268 269 else goto stop_literal; 270 271 /* Implementation for STOP RUN statement */ 272 273 stop_run: 274 line_no = in_token.token_ptr (1) -> reserved_word.line; 275 276 /* Insert table look-up to determine iln1 and iln2. In mean- */ 277 /* time, use line_no as iln1 and 0 as iln2. */ 278 279 /*[4.4-1]*/ 280 if A = "010"b 281 then op_num = 94; 282 else op_num = 48; 283 284 inst_seq (1) = substr (unspec (line_no), 19, 18); 285 next_tag1 = cobol_$next_tag; 286 cobol_$next_tag = cobol_$next_tag + 1; 287 call cobol_reg_manager$before_op (0); 288 call cobol_define_tag (next_tag1); 289 call cobol_emit (addr (inst_seq), null (), 2); /*[4.4-1]*/ 290 call cobol_call_op (op_num, next_tag1); 291 292 return; 293 294 /* Implementation of STOP literal. */ 295 296 stop_literal: 297 if 262143 - binary (rel (temp_token_ptr), 17) < 40 298 then goto signal_seg_ovfl; 299 300 if substr (rel (temp_token_ptr), 18, 1) = "1"b 301 then temp_token_ptr = addrel (temp_token_ptr, 1); 302 303 local_in_token_ptr = temp_token_ptr; 304 type9_token_ptr = addrel (local_in_token_ptr, 12); 305 temp_token_ptr = addrel (local_in_token_ptr, 40); 306 call cobol_make_type9$alphanumeric (type9_token_ptr, 3002, 76, 65); 307 type9_token_ptr -> data_name.size_rtn = -1; 308 type9_token_ptr -> data_name.variable_length = "1"b; 309 local_in_token_ptr -> in_token.n = 5; 310 local_in_token_ptr -> in_token.code = 0; 311 local_in_token_ptr -> in_token.token_ptr (1) = in_token_ptr -> in_token.token_ptr (1); 312 local_in_token_ptr -> in_token.token_ptr (2) = type9_token_ptr; 313 local_in_token_ptr -> in_token.token_ptr (3) = addr (token3); 314 local_in_token_ptr -> in_token.token_ptr (4) = in_token_ptr -> in_token.token_ptr (2); 315 local_in_token_ptr -> in_token.token_ptr (5) = addr (display_eos); 316 call cobol_display_gen (local_in_token_ptr); 317 call cobol_reg_manager$after_op (0); 318 call cobol_call_op (43, 0); 319 320 return; 321 322 signal_seg_ovfl: 323 call signal_ ("command_abort_", null, addr (seg_ovfl_error)); 324 return; 325 326 end cobol_stop_gen; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 05/24/89 0832.5 cobol_stop_gen.pl1 >spec>install>MR12.3-1048>cobol_stop_gen.pl1 250 1 11/11/82 1712.7 cobol_.incl.pl1 >ldd>include>cobol_.incl.pl1 251 2 03/27/82 0439.8 cobol_type1.incl.pl1 >ldd>include>cobol_type1.incl.pl1 2-15 3 11/11/82 1712.8 cobol_TYPE1.incl.pl1 >ldd>include>cobol_TYPE1.incl.pl1 252 4 03/27/82 0439.9 cobol_type9.incl.pl1 >ldd>include>cobol_type9.incl.pl1 4-17 5 11/11/82 1712.7 cobol_TYPE9.incl.pl1 >ldd>include>cobol_TYPE9.incl.pl1 253 6 03/27/82 0439.8 cobol_type19.incl.pl1 >ldd>include>cobol_type19.incl.pl1 6-17 7 03/27/82 0439.6 cobol_TYPE19.incl.pl1 >ldd>include>cobol_TYPE19.incl.pl1 254 8 11/11/82 1712.7 cobol_in_token.incl.pl1 >ldd>include>cobol_in_token.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. A 000107 automatic bit(3) packed unaligned dcl 260 set ref 262* 266 280 a 11 based bit(3) level 2 packed packed unaligned dcl 6-16 ref 262 addr builtin function dcl 240 ref 289 289 313 315 322 322 addrel builtin function dcl 240 ref 300 304 305 binary builtin function dcl 240 ref 296 cobol_$next_tag 000100 external static fixed bin(17,0) dcl 1-128 set ref 285 286* 286 cobol_$temp_token_ptr 000076 external static pointer dcl 1-44 set ref 296 296 300 300 300* 300 300 300 303 303 305* 305 cobol_call_op 000070 constant entry external dcl 224 ref 290 318 cobol_define_tag 000072 constant entry external dcl 224 ref 288 cobol_display_gen 000056 constant entry external dcl 224 ref 316 cobol_emit 000060 constant entry external dcl 224 ref 289 cobol_make_type9$alphanumeric 000064 constant entry external dcl 224 ref 306 cobol_reg_manager$after_op 000066 constant entry external dcl 224 ref 317 cobol_reg_manager$before_op 000062 constant entry external dcl 224 ref 287 code 1 based fixed bin(17,0) level 2 dcl 8-9 set ref 310* data_name based structure level 1 unaligned dcl 4-16 display_eos 000021 internal static structure level 1 dcl 184 set ref 315 end_stmt based structure level 1 unaligned dcl 6-16 in_token based structure level 1 dcl 8-9 in_token_ptr parameter pointer dcl 8-7 ref 28 262 262 273 311 314 inst_seq 000010 internal static bit(18) initial array packed unaligned dcl 165 set ref 284* 289 289 line 1 based fixed bin(17,0) level 2 dcl 2-14 ref 273 line_no 000100 automatic fixed bin(17,0) dcl 203 set ref 273* 284 local_in_token_ptr 000102 automatic pointer dcl 203 set ref 303* 304 305 309 310 311 312 313 314 315 316* n based fixed bin(17,0) level 2 dcl 8-9 set ref 262 309* next_tag1 000106 automatic fixed bin(17,0) dcl 210 set ref 285* 288* 290* null builtin function dcl 240 ref 289 289 322 322 op_num 000110 automatic fixed bin(17,0) dcl 260 set ref 280* 282* 290* rel builtin function dcl 240 ref 296 300 reserved_word based structure level 1 unaligned dcl 2-14 seg_ovfl_error 000033 internal static structure level 1 dcl 215 set ref 322 322 signal_ 000074 constant entry external dcl 224 ref 322 size_rtn 15 based fixed bin(17,0) level 2 dcl 4-16 set ref 307* substr builtin function dcl 240 ref 284 300 temp_token_ptr defined pointer dcl 1-45 set ref 296 300 300* 300 303 305* token3 000012 internal static structure level 1 dcl 173 set ref 313 token_ptr 2 based pointer array level 2 dcl 8-9 set ref 262 273 311* 311 312* 313* 314* 314 315* type9_token_ptr 000104 automatic pointer dcl 203 set ref 304* 306* 307 308 312 unspec builtin function dcl 240 ref 284 variable_length 22(04) based bit(1) level 2 packed packed unaligned dcl 4-16 set ref 308* NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. allo1_max defined fixed bin(17,0) dcl 1-171 allo1_ptr defined pointer dcl 1-67 alter_flag defined fixed bin(17,0) dcl 1-135 alter_index defined fixed bin(17,0) dcl 1-153 alter_list_ptr defined pointer dcl 1-39 cd_cnt defined fixed bin(17,0) dcl 1-197 cobol_$allo1_max external static fixed bin(17,0) dcl 1-170 cobol_$allo1_ptr external static pointer dcl 1-66 cobol_$alter_flag external static fixed bin(17,0) dcl 1-134 cobol_$alter_index external static fixed bin(17,0) dcl 1-152 cobol_$alter_list_ptr external static pointer dcl 1-38 cobol_$cd_cnt external static fixed bin(17,0) dcl 1-196 cobol_$cobol_data_wd_off external static fixed bin(17,0) dcl 1-118 cobol_$compile_count external static fixed bin(17,0) dcl 1-142 cobol_$coms_charcnt external static fixed bin(17,0) dcl 1-188 cobol_$coms_wdoff external static fixed bin(17,0) dcl 1-202 cobol_$con_end_ptr external static pointer dcl 1-10 cobol_$con_wd_off external static fixed bin(17,0) dcl 1-92 cobol_$cons_charcnt external static fixed bin(17,0) dcl 1-192 cobol_$constant_offset external static fixed bin(17,0) dcl 1-156 cobol_$data_init_flag external static fixed bin(17,0) dcl 1-130 cobol_$date_compiled_sw external static fixed bin(17,0) dcl 1-180 cobol_$debug_enable external static fixed bin(17,0) dcl 1-174 cobol_$def_base_ptr external static pointer dcl 1-12 cobol_$def_max external static fixed bin(17,0) dcl 1-96 cobol_$def_wd_off external static fixed bin(17,0) dcl 1-94 cobol_$diag_ptr external static pointer dcl 1-70 cobol_$eln_max external static fixed bin(17,0) dcl 1-172 cobol_$eln_ptr external static pointer dcl 1-68 cobol_$fixup_max external static fixed bin(17,0) dcl 1-164 cobol_$fixup_ptr external static pointer dcl 1-30 cobol_$fs_charcnt external static fixed bin(17,0) dcl 1-184 cobol_$fs_wdoff external static fixed bin(17,0) dcl 1-198 cobol_$include_cnt external static fixed bin(17,0) dcl 1-182 cobol_$include_info_ptr external static pointer dcl 1-86 cobol_$init_stack_off external static fixed bin(17,0) dcl 1-124 cobol_$initval_base_ptr external static pointer dcl 1-32 cobol_$initval_file_ptr external static pointer dcl 1-34 cobol_$initval_flag external static fixed bin(17,0) dcl 1-178 cobol_$link_base_ptr external static pointer dcl 1-14 cobol_$link_max external static fixed bin(17,0) dcl 1-100 cobol_$link_wd_off external static fixed bin(17,0) dcl 1-98 cobol_$list_off external static fixed bin(17,0) dcl 1-154 cobol_$list_ptr external static pointer dcl 1-64 cobol_$ls_charcnt external static fixed bin(17,0) dcl 1-190 cobol_$main_pcs_ptr external static pointer dcl 1-84 cobol_$map_data_max external static fixed bin(17,0) dcl 1-162 cobol_$map_data_ptr external static pointer dcl 1-54 cobol_$max_stack_off external static fixed bin(17,0) dcl 1-122 cobol_$minpral5_ptr external static pointer dcl 1-50 cobol_$misc_base_ptr external static pointer dcl 1-60 cobol_$misc_end_ptr external static pointer dcl 1-62 cobol_$misc_max external static fixed bin(17,0) dcl 1-158 cobol_$non_source_offset external static fixed bin(17,0) dcl 1-176 cobol_$ntbuf_ptr external static pointer dcl 1-82 cobol_$obj_seg_name external static char(32) dcl 1-208 cobol_$op_con_ptr external static pointer dcl 1-80 cobol_$para_eop_flag external static fixed bin(17,0) dcl 1-138 cobol_$pd_map_index external static fixed bin(17,0) dcl 1-116 cobol_$pd_map_max external static fixed bin(17,0) dcl 1-160 cobol_$pd_map_ptr external static pointer dcl 1-28 cobol_$pd_map_sw external static fixed bin(17,0) dcl 1-126 cobol_$perform_list_ptr external static pointer dcl 1-36 cobol_$perform_para_index external static fixed bin(17,0) dcl 1-148 cobol_$perform_sect_index external static fixed bin(17,0) dcl 1-150 cobol_$priority_no external static fixed bin(17,0) dcl 1-140 cobol_$ptr_assumption_ind external static fixed bin(17,0) dcl 1-144 cobol_$ptr_status_ptr external static pointer dcl 1-56 cobol_$reg_assumption_ind external static fixed bin(17,0) dcl 1-146 cobol_$reg_status_ptr external static pointer dcl 1-58 cobol_$reloc_def_base_ptr external static pointer dcl 1-20 cobol_$reloc_def_max external static fixed bin(24,0) dcl 1-108 cobol_$reloc_link_base_ptr external static pointer dcl 1-22 cobol_$reloc_link_max external static fixed bin(24,0) dcl 1-110 cobol_$reloc_sym_base_ptr external static pointer dcl 1-24 cobol_$reloc_sym_max external static fixed bin(24,0) dcl 1-112 cobol_$reloc_text_base_ptr external static pointer dcl 1-18 cobol_$reloc_text_max external static fixed bin(24,0) dcl 1-106 cobol_$reloc_work_base_ptr external static pointer dcl 1-26 cobol_$reloc_work_max external static fixed bin(24,0) dcl 1-114 cobol_$reswd_ptr external static pointer dcl 1-78 cobol_$same_sort_merge_proc external static bit(1) dcl 1-214 cobol_$scratch_dir external static char(168) dcl 1-206 cobol_$sect_eop_flag external static fixed bin(17,0) dcl 1-136 cobol_$seg_init_flag external static fixed bin(17,0) dcl 1-132 cobol_$seg_init_list_ptr external static pointer dcl 1-40 cobol_$stack_off external static fixed bin(17,0) dcl 1-120 cobol_$statement_info_ptr external static pointer dcl 1-76 cobol_$sym_base_ptr external static pointer dcl 1-16 cobol_$sym_max external static fixed bin(17,0) dcl 1-104 cobol_$sym_wd_off external static fixed bin(17,0) dcl 1-102 cobol_$tag_table_max external static fixed bin(17,0) dcl 1-166 cobol_$tag_table_ptr external static pointer dcl 1-52 cobol_$temp_token_area_ptr external static pointer dcl 1-42 cobol_$temp_token_max external static fixed bin(17,0) dcl 1-168 cobol_$text_base_ptr external static pointer dcl 1-8 cobol_$text_wd_off external static fixed bin(17,0) dcl 1-90 cobol_$token_block1_ptr external static pointer dcl 1-46 cobol_$token_block2_ptr external static pointer dcl 1-48 cobol_$value_cnt external static fixed bin(17,0) dcl 1-194 cobol_$ws_charcnt external static fixed bin(17,0) dcl 1-186 cobol_$ws_wdoff external static fixed bin(17,0) dcl 1-200 cobol_$xref_bypass external static bit(1) dcl 1-212 cobol_$xref_chain_ptr external static pointer dcl 1-74 cobol_$xref_token_ptr external static pointer dcl 1-72 cobol_data_wd_off defined fixed bin(17,0) dcl 1-119 compile_count defined fixed bin(17,0) dcl 1-143 coms_charcnt defined fixed bin(17,0) dcl 1-189 coms_wdoff defined fixed bin(17,0) dcl 1-203 con_end_ptr defined pointer dcl 1-11 con_wd_off defined fixed bin(17,0) dcl 1-93 cons_charcnt defined fixed bin(17,0) dcl 1-193 constant_offset defined fixed bin(17,0) dcl 1-157 data_init_flag defined fixed bin(17,0) dcl 1-131 date_compiled_sw defined fixed bin(17,0) dcl 1-181 debug_enable defined fixed bin(17,0) dcl 1-175 def_base_ptr defined pointer dcl 1-13 def_max defined fixed bin(17,0) dcl 1-97 def_wd_off defined fixed bin(17,0) dcl 1-95 diag_ptr defined pointer dcl 1-71 dn_ptr automatic pointer dcl 212 eln_max defined fixed bin(17,0) dcl 1-173 eln_ptr defined pointer dcl 1-69 eos_ptr automatic pointer dcl 6-13 fixup_max defined fixed bin(17,0) dcl 1-165 fixup_ptr defined pointer dcl 1-31 fs_charcnt defined fixed bin(17,0) dcl 1-185 fs_wdoff defined fixed bin(17,0) dcl 1-199 include_cnt defined fixed bin(17,0) dcl 1-183 include_info_ptr defined pointer dcl 1-87 init_stack_off defined fixed bin(17,0) dcl 1-125 initval_base_ptr defined pointer dcl 1-33 initval_file_ptr defined pointer dcl 1-35 initval_flag defined fixed bin(17,0) dcl 1-179 link_base_ptr defined pointer dcl 1-15 link_max defined fixed bin(17,0) dcl 1-101 link_wd_off defined fixed bin(17,0) dcl 1-99 list_off defined fixed bin(17,0) dcl 1-155 list_ptr defined pointer dcl 1-65 ls_charcnt defined fixed bin(17,0) dcl 1-191 main_pcs_ptr defined pointer dcl 1-85 map_data_max defined fixed bin(17,0) dcl 1-163 map_data_ptr defined pointer dcl 1-55 max_stack_off defined fixed bin(17,0) dcl 1-123 minpral5_ptr defined pointer dcl 1-51 misc_base_ptr defined pointer dcl 1-61 misc_end_ptr defined pointer dcl 1-63 misc_max defined fixed bin(17,0) dcl 1-159 next_tag defined fixed bin(17,0) dcl 1-129 non_source_offset defined fixed bin(17,0) dcl 1-177 ntbuf_ptr defined pointer dcl 1-83 obj_seg_name defined char(32) dcl 1-209 offset automatic fixed bin(17,0) dcl 203 op_con_ptr defined pointer dcl 1-81 para_eop_flag defined fixed bin(17,0) dcl 1-139 pd_map_index defined fixed bin(17,0) dcl 1-117 pd_map_max defined fixed bin(17,0) dcl 1-161 pd_map_ptr defined pointer dcl 1-29 pd_map_sw defined fixed bin(17,0) dcl 1-127 perform_list_ptr defined pointer dcl 1-37 perform_para_index defined fixed bin(17,0) dcl 1-149 perform_sect_index defined fixed bin(17,0) dcl 1-151 priority_no defined fixed bin(17,0) dcl 1-141 ptr_assumption_ind defined fixed bin(17,0) dcl 1-145 ptr_status_ptr defined pointer dcl 1-57 reg_assumption_ind defined fixed bin(17,0) dcl 1-147 reg_status_ptr defined pointer dcl 1-59 reloc_def_base_ptr defined pointer dcl 1-21 reloc_def_max defined fixed bin(24,0) dcl 1-109 reloc_link_base_ptr defined pointer dcl 1-23 reloc_link_max defined fixed bin(24,0) dcl 1-111 reloc_sym_base_ptr defined pointer dcl 1-25 reloc_sym_max defined fixed bin(24,0) dcl 1-113 reloc_text_base_ptr defined pointer dcl 1-19 reloc_text_max defined fixed bin(24,0) dcl 1-107 reloc_work_base_ptr defined pointer dcl 1-27 reloc_work_max defined fixed bin(24,0) dcl 1-115 reswd_ptr defined pointer dcl 1-79 rw_ptr automatic pointer dcl 2-11 same_sort_merge_proc defined bit(1) dcl 1-215 scratch_dir defined char(168) dcl 1-207 sect_eop_flag defined fixed bin(17,0) dcl 1-137 seg_init_flag defined fixed bin(17,0) dcl 1-133 seg_init_list_ptr defined pointer dcl 1-41 stack_off defined fixed bin(17,0) dcl 1-121 statement_info_ptr defined pointer dcl 1-77 sym_base_ptr defined pointer dcl 1-17 sym_max defined fixed bin(17,0) dcl 1-105 sym_wd_off defined fixed bin(17,0) dcl 1-103 tag_table_max defined fixed bin(17,0) dcl 1-167 tag_table_ptr defined pointer dcl 1-53 temp_token_area_ptr defined pointer dcl 1-43 temp_token_max defined fixed bin(17,0) dcl 1-169 text_base_ptr defined pointer dcl 1-9 text_wd_off defined fixed bin(17,0) dcl 1-91 token_block1_ptr defined pointer dcl 1-47 token_block2_ptr defined pointer dcl 1-49 tra_ic internal static bit(18) initial array packed unaligned dcl 170 value_cnt defined fixed bin(17,0) dcl 1-195 ws_charcnt defined fixed bin(17,0) dcl 1-187 ws_wdoff defined fixed bin(17,0) dcl 1-201 xref_bypass defined bit(1) dcl 1-213 xref_chain_ptr defined pointer dcl 1-75 xref_token_ptr defined pointer dcl 1-73 NAMES DECLARED BY EXPLICIT CONTEXT. cobol_stop_gen 000013 constant entry external dcl 28 signal_seg_ovfl 000266 constant label dcl 322 ref 296 start 000020 constant label dcl 262 stop_literal 000126 constant label dcl 296 ref 269 stop_run 000034 constant label dcl 273 ref 266 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 462 564 316 472 Length 1120 316 102 320 143 46 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME cobol_stop_gen 116 external procedure is an external procedure. STORAGE FOR INTERNAL STATIC VARIABLES. LOC IDENTIFIER BLOCK NAME 000010 inst_seq cobol_stop_gen 000012 token3 cobol_stop_gen 000021 display_eos cobol_stop_gen 000033 seg_ovfl_error cobol_stop_gen STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME cobol_stop_gen 000100 line_no cobol_stop_gen 000102 local_in_token_ptr cobol_stop_gen 000104 type9_token_ptr cobol_stop_gen 000106 next_tag1 cobol_stop_gen 000107 A cobol_stop_gen 000110 op_num cobol_stop_gen 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_call_op cobol_define_tag cobol_display_gen cobol_emit cobol_make_type9$alphanumeric cobol_reg_manager$after_op cobol_reg_manager$before_op signal_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. cobol_$next_tag cobol_$temp_token_ptr LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 28 000010 262 000020 266 000031 269 000033 273 000034 280 000040 282 000045 284 000047 285 000052 286 000054 287 000055 288 000064 289 000073 290 000114 292 000125 296 000126 300 000140 303 000147 304 000152 305 000155 306 000160 307 000202 308 000205 309 000207 310 000211 311 000213 312 000220 313 000222 314 000225 315 000231 316 000233 317 000241 318 000251 320 000265 322 000266 324 000315 ----------------------------------------------------------- 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