1 
  2 /* BEGIN fort_shared_vars.incl.pl1 */
  3 
  4 
  5 
  6 /****^  HISTORY COMMENTS:
  7   1) change(86-07-14,BWong), approve(86-07-14,MCR7286), audit(86-07-17,Ginter),
  8      install(86-07-28,MR12.0-1105):
  9      Fix fortran bug 463.
 10                                                    END HISTORY COMMENTS */
 11 
 12 
 13 /* Created:         June 1976, David Levin
 14 
 15           Modified: 30 Aug 76, David Levin - to add global variables for listing segment.
 16           Modified: 22 Nov 76, Richard Barnes - to add profile_size
 17           Modified: 24 Feb 77, Gabriel Chang - for the optimizer
 18           Modified: 06 Oct 77, Richard Barnes - for the loop optimizer
 19           Modified: 16 Nov 77, David Levin - add next_free_(temp array_ref).
 20           Modified: 09 Oct 78, Paul Smee - for larger common and arrays.
 21           Modified: 03 Apr 79, Paul Smee - add list of include file data.
 22           Modified: 17 May 79, Paul Smee - add cur_statement_list.
 23           Modified: 28 Jun 79, Paul Smee - add compile-time math entry arrays.
 24           Modified: 13 Sep 79, Paul Smee - add default_char_size.
 25           Modified: 18 Dec 79, Richard Barnes - add free and freei
 26           Modified: 03 Mar 80, C R Davis - add must_save_stack_extent.
 27           Modified: 15 Mar 82, T G Oke - add source (line_number, file_number).
 28           Modified: 20 Sept 82, T G Oke - add VLA_is_256K flag
 29           Modified: 22 Sept 82, T G Oke - add area creation info to pass to
 30                listing generator.
 31           Modified: 17 May 83, M Mabey - add declared_options.
 32           Modified: 02 Aug 85, B Wong - 463: changed 'must_save_stack_extent'
 33                to 'pad' since the variable is no longer used.
 34 */
 35 
 36             2 polish_base               ptr,
 37             2 operand_base              ptr,
 38             2 object_base               ptr,
 39             2 quadruple_base            ptr,
 40             2 opt_base                  ptr,
 41             2 relocation_base           ptr,
 42 
 43             2 cref_base                 ptr,                /* base of cross reference segment */
 44             2 source_line_base          ptr,                /* base of source line offset segment */
 45             2 listing_base              ptr,                /* base of listing info segment */
 46             2 cur_listing               ptr,                /* points to listing info for the active subprogram */
 47 
 48             2 free(2:4)                 ptr,                /* free chains for optimizer */
 49             2 freei                     ptr,                /* .. */
 50 
 51             2 polish_max_len            fixed bin (19),
 52             2 operand_max_len           fixed bin (19),
 53             2 object_max_len            fixed bin (19),
 54             2 quad_max_len              fixed bin (19),
 55             2 opt_max_len               fixed bin (19),
 56 
 57             2 next_free_polish          fixed bin (18),
 58             2 next_free_operand         fixed bin (18),
 59             2 next_free_object          fixed bin (18),
 60             2 next_free_listing         fixed bin (18),
 61             2 next_free_quad            fixed bin (18),
 62             2 next_free_array_ref       fixed bin (18),     /* Chain for freed array_ref nodes. */
 63             2 next_free_temp            fixed bin (18),     /* Chain for freed temporary nodes. */
 64             2 next_free_opt             fixed bin (18),
 65 
 66             2 first_segment             fixed bin,
 67             2 number_of_source_segments fixed bin (8),
 68             2 number_of_lines           fixed bin,
 69             2 number_of_crefs           fixed bin,
 70             2 profile_size              fixed bin,
 71 
 72             2 main_entry_point_name     char (32) varying,
 73 
 74             2 cur_statement             fixed bin (18),
 75             2 cur_statement_list        fixed bin (17),
 76             2 cur_subprogram            fixed bin (18),
 77             2 first_subprogram          fixed bin (18),
 78             2 last_subprogram           fixed bin (18),
 79             2 unnamed_block_data_subprogram
 80                                         fixed bin (18),
 81             2 first_entry_name          fixed bin (18),
 82             2 last_entry_name           fixed bin (18),
 83 
 84             2 constant_info (4)         aligned structure,
 85               3 constant_count          fixed bin (17),
 86               3 first_constant          fixed bin (18),
 87               3 last_constant           fixed bin (18),
 88 
 89             2 options                   aligned,
 90               3 user_options            aligned like fortran_options,
 91               3 system_options          aligned,
 92                 4 is_fast               bit (1) unaligned,
 93                 4 namelist_used         bit (1) unaligned,
 94                 4 compile_only          bit (1) unaligned,
 95                 4 VLA_is_256K           bit (1) unaligned,  /* FLAG 255/256K code */
 96                 4 pad                   bit (32) unaligned,
 97 
 98             2 incl_data                 aligned,
 99               3 incl_count              fixed bin,
100               3 file_list (0:255),
101                 4 source_node_offset    fixed bin (18),
102                 4 incl_len              fixed bin (21),
103                 4 incl_ptr              unaligned ptr,
104 
105             2 create_constant           entry (fixed bin (4), bit (72) aligned) returns (fixed bin (18))
106                                         variable,
107             2 create_char_constant      entry (char (*)) returns (fixed bin (18))
108                                         variable,
109             2 print_message             entry options (variable)
110                                         variable,
111             2 get_next_temp_segment     entry (ptr, fixed bin (18)) returns (ptr)
112                                         variable,
113             2 negate_round (6)          entry (fixed bin (35), bit (72), bit (72), fixed bin (35))
114                                         returns (bit (72)) variable,
115             2 negate_trunc (6)          entry (fixed bin (35), bit (72), bit (72), fixed bin (35))
116                                         returns (bit (72)) variable,
117             2 binop_round (6,6)         entry (fixed bin (35), bit (72), bit (72), fixed bin (35))
118                                         returns (bit (72)) variable,
119             2 binop_trunc (6,6)         entry (fixed bin (35), bit (72), bit (72), fixed bin (35))
120                                         returns (bit (72)) variable,
121             2 comp_parm (6,6)           entry (fixed bin (35), bit (72), bit (72), fixed bin (35))
122                                         returns (bit (72)) variable,
123             2 conv_round (6,6)                    entry (bit (72), fixed bin (35))
124                                         returns (bit (72)) variable,
125             2 conv_trunc (6,6)          entry (bit (72), fixed bin (35))
126                                         returns (bit (72)) variable,
127             2 pad                       bit (1) aligned,
128 
129 /* The following are used by "print_message - decode_source_id" if use_source_info set. */
130 
131             2 use_source_info           bit (1) aligned,
132             2 source_file_number        fixed bin (35),
133             2 source_line_number        fixed bin (35),
134             2 Area_create_first         fixed bin (18),     /* start of text to do creation */
135             2 Area_create_last          fixed bin (18),     /* Last item */
136             2 Area_init_first           fixed bin (18),     /* start of text to init areas */
137             2 Area_init_last            fixed bin (18),     /* Last item */
138             2 declared_options          aligned like fortran_declared;
139 
140 dcl       num_of_word_constants         fixed bin (17) defined (constant_info (1).constant_count);
141 dcl       first_word_constant           fixed bin (18) defined (constant_info (1).first_constant);
142 dcl       last_word_constant            fixed bin (18) defined (constant_info (1).last_constant);
143 
144 dcl       num_of_dw_constants           fixed bin (17) defined (constant_info (2).constant_count);
145 dcl       first_dw_constant             fixed bin (18) defined (constant_info (2).first_constant);
146 dcl       last_dw_constant              fixed bin (18) defined (constant_info (2).last_constant);
147 
148 dcl       num_of_char_constants         fixed bin (17) defined (constant_info (3).constant_count);
149 dcl       first_char_constant           fixed bin (18) defined (constant_info (3).first_constant);
150 dcl       last_char_constant            fixed bin (18) defined (constant_info (3).last_constant);
151 
152 dcl       num_of_block_constants        fixed bin (17) defined (constant_info (4).constant_count);
153 dcl       first_block_constant          fixed bin (18) defined (constant_info (4).first_constant);
154 dcl       last_block_constant           fixed bin (18) defined (constant_info (4).last_constant);
155 
156 /* END   fort_shared_vars.incl.pl1 */