COMPILATION LISTING OF SEGMENT trace_print_ Compiled by: Multics PL/I Compiler, Release 31a, of October 12, 1988 Compiled at: Honeywell Bull, Phoenix AZ, SysM Compiled on: 10/24/88 1528.3 mst Mon Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 4* * * 5* *********************************************************** */ 6 7 /* 8* This program is called by trace_catch_ when the trace or stop conditions are satisfied. 9* When called to trace, it formats and writes a trace message and executes a command line if required. 10* When called to stop, it prints a stop message and checks the watch table. 11* 12* Initial Version: 25 February 1969 by BLW. 13* Modified: December 1974 by S.E. Barr. 14* Modified: 1 May 1975 by RAB for -return_value. 15* Modified: Apr 1982 by Jeffrey D. Ives to use ioa_$ioa_switch for efficiency (instead of ioa_$ioa_stream). 16* Modified: July 1983 by Jeffrey D. Ives for multitasking and to trace unwinds and signals. 17* Modified: May 1984 by Jeffrey D. Ives for new trace interface and to separate trace and stop. 18**/ 19 20 /* format: style2,ifthendo,^indnoniterdo,thendo,^inditerdo,indproc,ind2,dclind5,idind32 */ 21 22 trace_print_: 23 proc (); 24 signal error; 25 26 trace: 27 entry (event_i); 28 29 event_ptr = addr (event_i); 30 if event.version ^= EVENT_VERSION_3 31 then signal error; 32 clock_reading = clock (); 33 34 if event.kind = "ca" 35 then 36 TRACE_CALL: 37 do; 38 if ^trace_$long () 39 then char256var = trace_$entrypoint_name (event.entry_idx); 40 else do; 41 call hcs_$fs_get_path_name ((event.return_ptr), dir_path, bname_length, entry_name, code); 42 if code ^= 0 43 then do; 44 call 45 ioa_$rsnnl ("^a from ^p", char256var, return_string_length, trace_$entrypoint_name (event.entry_idx), 46 event.return_ptr); 47 end; 48 else do; 49 call pl1_frame_$name ((event.callers_sp), bname_ptr, bname_length); 50 51 call interpret_bind_map_ ((event.return_ptr), cname, offset, code); 52 if code ^= 0 53 then do; 54 cname = entry_name; 55 offset = bin (rel (event.return_ptr), 18); 56 end; 57 58 if bname_ptr ^= null () 59 then if cname = bname 60 then bname_ptr = null (); 61 62 if bname_ptr = null () 63 then call 64 ioa_$rsnnl ("^a from ^a", char256var, return_string_length, trace_$entrypoint_name (event.entry_idx), 65 cname); 66 else call 67 ioa_$rsnnl ("^a from ^a$^a", char256var, return_string_length, 68 trace_$entrypoint_name (event.entry_idx), cname, bname); 69 end; 70 end; 71 end TRACE_CALL; 72 else if event.kind = "re" 73 then char256var = trace_$entrypoint_name (event.entry_idx); 74 else if event.kind = "un" 75 then char256var = trace_$entrypoint_name (event.entry_idx) || " unwound"; 76 else if event.kind = "si" 77 then 78 TRACE_SIGNAL: 79 do; 80 if event.arg_list_ptr -> arg_list.header.call_type ^= Interseg_call_type 81 then char256var = "The signal_ routine has been called without an intersegment argument list."; 82 else if event.arg_list_ptr -> arg_list.header.arg_count < 1 83 then char256var = "The signal_ routine has been called without arguments."; 84 else if event.arg_list_ptr -> arg_list.header.desc_count < 1 85 then char256var = "The signal_ routine has been called without argument descriptors."; 86 else if event.arg_list_ptr -> arg_list.desc_ptrs (1) -> arg_descriptor.type ^= char_dtype 87 then char256var = "The first argument to signal_ is not a non-varying character string."; 88 else do; 89 bname_ptr = event.arg_list_ptr -> arg_list.arg_ptrs (1); 90 bname_length = event.arg_list_ptr -> arg_list.desc_ptrs (1) -> arg_descriptor.size; 91 92 call interpret_bind_map_ ((event.return_ptr), cname, offset, code); 93 if code ^= 0 94 then char256var = bname; 95 else call ioa_$rsnnl ("^a from ^a|^o", char256var, return_string_length, bname, cname, offset); 96 97 char256var = char256var || SIGNAL_PTR_STRING (2, "machine conditions"); 98 char256var = char256var || SIGNAL_PTR_STRING (3, "info"); 99 char256var = char256var || SIGNAL_PTR_STRING (4, "crawlout machine conditions"); 100 end; 101 102 SIGNAL_PTR_STRING: 103 proc (arg_list_idx_i, ptr_name_i) returns (char (256) var); 104 dcl arg_list_idx_i fixed bin parm; 105 dcl ptr_name_i char (*) parm; 106 dcl return_string_length fixed bin; 107 dcl signal_ptr_string char (256) var; 108 109 if event.arg_list_ptr -> arg_list.header.arg_count < arg_list_idx_i 110 then signal_ptr_string = ""; 111 else if event.arg_list_ptr -> arg_list.header.desc_count < arg_list_idx_i 112 then signal_ptr_string = ""; 113 else if event.arg_list_ptr -> arg_list.desc_ptrs (arg_list_idx_i) -> arg_descriptor.type ^= pointer_dtype 114 then call 115 ioa_$rsnnl ("The ^a ptr argument to signal_ is not an aligned pointer", signal_ptr_string, 116 return_string_length, ptr_name_i); 117 else if event.arg_list_ptr -> arg_list.arg_ptrs (arg_list_idx_i) -> based_ptr = null () 118 then signal_ptr_string = ""; 119 else if ptr_name_i = "info" 120 then 121 begin; 122 dcl short_message char (8) aligned; 123 dcl long_message char (100) aligned; 124 dcl convert_status_code_ entry (fixed bin (35), char (8) aligned, char (100) aligned); 1 1 /* BEGIN INCLUDE FILE condition_info_header.incl.pl1 BIM 1981 */ 1 2 /* format: style2 */ 1 3 1 4 declare condition_info_header_ptr 1 5 pointer; 1 6 declare 1 condition_info_header 1 7 aligned based (condition_info_header_ptr), 1 8 2 length fixed bin, /* length in words of this structure */ 1 9 2 version fixed bin, /* version number of this structure */ 1 10 2 action_flags aligned, /* tell handler how to proceed */ 1 11 3 cant_restart bit (1) unaligned, /* caller doesn't ever want to be returned to */ 1 12 3 default_restart bit (1) unaligned, /* caller can be returned to with no further action */ 1 13 3 quiet_restart bit (1) unaligned, /* return, and print no message */ 1 14 3 support_signal bit (1) unaligned, /* treat this signal as if the signalling procedure had the support bit set */ 1 15 /* if the signalling procedure had the support bit set, do the same for its caller */ 1 16 3 pad bit (32) unaligned, 1 17 2 info_string char (256) varying, /* may contain printable message */ 1 18 2 status_code fixed bin (35); /* if^=0, code interpretable by com_err_ */ 1 19 1 20 /* END INCLUDE FILE condition_info_header.incl.pl1 */ 125 126 condition_info_header_ptr = event.arg_list_ptr -> arg_list.arg_ptrs (arg_list_idx_i) -> based_ptr; 127 if condition_info_header.version ^= 1 128 then call 129 ioa_$rsnnl (" ^a at ^p (condition_info_header.version = ^d)", signal_ptr_string, return_string_length, 130 ptr_name_i, condition_info_header_ptr, condition_info_header.version); 131 else do; 132 if condition_info_header.status_code = 0 133 then long_message = ""; 134 else call convert_status_code_ (condition_info_header.status_code, short_message, long_message); 135 call 136 ioa_$rsnnl (" ^a: ^a ^a", signal_ptr_string, return_string_length, ptr_name_i, long_message, 137 condition_info_header.info_string); 138 end; 139 end; 140 else call 141 ioa_$rsnnl (" ^a at ^p", signal_ptr_string, return_string_length, ptr_name_i, 142 event.arg_list_ptr -> arg_list.arg_ptrs (arg_list_idx_i) -> based_ptr); 143 144 return (signal_ptr_string); 145 146 end SIGNAL_PTR_STRING; 147 148 end TRACE_SIGNAL; 149 else call ioa_$rsnnl ("Unknown trace event ""^a""", char256var, return_string_length, event.kind); 150 151 /* 152* CLOCK TIME REAL SEC VCPU SEC PF CALL# RECURSION/HIGHEST ENTRYPOINT 153*19:01:00.460 0.000156 0.000156 0<- 1 1/1 wioctl_$control 154**/ 155 156 osw = trace_$output_switch (); 157 158 if trace_$long () 159 then do; 160 if osw.iocb_ptr ^= LAST_OSW_IOCB_PTR_THAT_A_TRACE_MESSAGE_WAS_WRITTEN_TO 161 then call 162 ioa_$ioa_switch (osw.iocb_ptr, "^12a ^25a ^a^13a ^a", " CLOCK TIME ", METERS_STRING_HEADER (), 163 DOTS_STRING (event.frame_count), COUNTS_STRING_HEADER (), " ENTRYPOINT"); 164 call 165 ioa_$ioa_switch (osw.iocb_ptr, "^12a ^25a ^a^13a ^a", trace_time_ (clock_reading), 166 METERS_STRING (event.kind, event.frame), DOTS_STRING (event.frame_count), COUNTS_STRING (event.kind, event.saved), 167 char256var); 168 end; 169 else do; 170 if osw.iocb_ptr ^= LAST_OSW_IOCB_PTR_THAT_A_TRACE_MESSAGE_WAS_WRITTEN_TO 171 then call 172 ioa_$ioa_switch (osw.iocb_ptr, "^a^13a ^a", DOTS_STRING (event.frame_count), COUNTS_STRING_HEADER (), 173 " ENTRYPOINT"); 174 call 175 ioa_$ioa_switch (osw.iocb_ptr, "^a^13a ^a", DOTS_STRING (event.frame_count), 176 COUNTS_STRING (event.kind, event.saved), char256var); 177 end; 178 LAST_OSW_IOCB_PTR_THAT_A_TRACE_MESSAGE_WAS_WRITTEN_TO = osw.iocb_ptr; 179 180 if event.kind = "ca" | event.kind = "re" 181 then 182 DISPLAY_ARGUMENT_LIST_AND_CALL_CP: 183 begin; 184 dcl indentation fixed bin; 185 dcl first_arg_to_print fixed bin; 186 dcl last_arg_to_print fixed bin; 187 dcl 1 display_args_at aligned, 188 2 call bit unal, 189 2 return bit unal; 190 dcl cu_$cp entry (ptr, fixed bin (21), fixed bin (35)); 191 dcl display_argument_list_ entry (ptr, ptr, ptr, ptr, ptr, fixed bin, fixed bin, fixed bin); 192 193 string (display_args_at) = trace_$arguments (event.entry_idx); 194 if (event.kind = "ca" & display_args_at.call) | (event.kind = "re" & display_args_at.return) 195 then do; 196 first_arg_to_print = 1; 197 if event.kind = "ca" & trace_$function (event.entry_idx) 198 then last_arg_to_print = event.arg_list_ptr -> arg_list.header.arg_count - 1; 199 else last_arg_to_print = event.arg_list_ptr -> arg_list.header.arg_count; 200 if last_arg_to_print > 0 201 then do; 202 if trace_$long () 203 then indentation = min (event.frame_count, 40) + 54; 204 else indentation = min (event.frame_count, 40) + 15; 205 call 206 display_argument_list_ (osw.iocb_ptr, null (), null (), (event.arg_list_ptr), (event.entry_ptr), 207 first_arg_to_print, last_arg_to_print, indentation); 208 end; 209 end; 210 211 char256var = trace_$call (event.entry_idx); 212 if length (char256var) ^= 0 213 then call cu_$cp (addrel (addr (char256var), 1), length (char256var), code); 214 end DISPLAY_ARGUMENT_LIST_AND_CALL_CP; 215 216 return; 217 218 stop: 219 entry (event_i, watch_values_changed_i); 220 221 event_ptr = addr (event_i); 222 if event.version ^= EVENT_VERSION_3 223 then signal error; 224 osw = trace_$output_switch (); 225 226 do iop = osw.iocb_ptr, iox_$error_output while (iop -> iocb.actual_iocb_ptr ^= osw.iocb_ptr -> iocb.actual_iocb_ptr); 227 if event.kind = "ca" 228 then call 229 ioa_$ioa_switch (iop, "^a: Stopping at the call of ^a.", trace_$me (), 230 trace_$entrypoint_name (event.entry_idx)); 231 else call 232 ioa_$ioa_switch (iop, "^a: Stopping at the return of ^a.", trace_$me (), 233 trace_$entrypoint_name (event.entry_idx)); 234 end; 235 236 if watch_values_changed_i 237 then 238 DISPLAY_CHANGED_LOCATIONS: 239 begin; 240 dcl location_idx fixed bin; 241 dcl location_ptr ptr unal; 242 dcl prev_location_baseno bit (18) aligned; 243 244 prev_location_baseno = ""b; 245 do location_idx = 0 to trace_$num_locations () - 1; 246 watch_values = trace_$location_values (location_idx); 247 if watch_values.old ^= watch_values.new 248 then do; 249 location_ptr = trace_$location_ptr (location_idx); 250 if baseno (location_ptr) ^= prev_location_baseno 251 then 252 do iop = osw.iocb_ptr, 253 iox_$error_output while (iop -> iocb.actual_iocb_ptr ^= osw.iocb_ptr -> iocb.actual_iocb_ptr); 254 call ioa_$ioa_switch (iop, "^a", trace_$location_seg_path (location_idx)); 255 prev_location_baseno = baseno (location_ptr); 256 end; 257 do iop = osw.iocb_ptr, 258 iox_$error_output while (iop -> iocb.actual_iocb_ptr ^= osw.iocb_ptr -> iocb.actual_iocb_ptr); 259 call ioa_$ioa_switch (iop, "^20x^w -> ^w at ^p", watch_values.old, watch_values.new, location_ptr); 260 end; 261 end; 262 end; 263 end DISPLAY_CHANGED_LOCATIONS; 264 265 spp = trace_$stop_proc (); 266 if spp.entry_value = cu_$cl 267 then call cu_$cl (CL_FLAGS); 268 else call spp.entry_value (); 269 270 return; 271 272 allocate_buffer: 273 entry (buffer_ptr_o); 274 allocate buffer; 275 buffer.h.version = BUFFER_VERSION_3; 276 buffer.h.count = 0; 277 buffer_ptr_o = buffer_ptr; 278 return; 279 280 copy_buffer_ptr: 281 entry (buffer_ptr_source_i, buffer_ptr_target_i); 282 if buffer_ptr_target_i = buffer_ptr_source_i 283 then return; 284 buffer_ptr = buffer_ptr_target_i; 285 buffer_ptr_target_i = buffer_ptr_source_i; 286 if buffer_ptr = null () 287 then return; 288 if buffer.h.version ^= BUFFER_VERSION_3 289 then signal error; 290 free buffer; 291 return; 292 293 294 buffer_counts: 295 entry (buffer_first_idx_o, buffer_count_o); 296 buffer_ptr = trace_$buffer_ptr (); 297 if buffer_ptr = null () 298 then do; 299 buffer_first_idx_o = 0; 300 buffer_count_o = 0; 301 end; 302 else do; 303 if buffer.h.version ^= BUFFER_VERSION_3 304 then signal error; 305 buffer_first_idx_o = max (0, buffer.count - dim (buffer.e, 1)); 306 buffer_count_o = buffer.count; 307 end; 308 return; 309 310 311 312 313 buffer_event: 314 entry (buffer_idx_i, frame_count_o, kind_o, entry_ptr_o, saved_counts_o, frame_meters_o); 315 event_ptr = EVENT_PTR (buffer_idx_i); 316 if event_ptr = null () 317 then do; 318 frame_count_o = -1; 319 kind_o = "!!"; 320 entry_ptr_o = null (); 321 saved_counts_o = -1; 322 frame_meters_o = -1; 323 end; 324 else do; 325 frame_count_o = event.frame_count; 326 kind_o = event.kind; 327 entry_ptr_o = event.entry_ptr; 328 saved_counts_o = event.saved; 329 frame_meters_o = event.frame; 330 end; 331 return; 332 333 334 335 /* 336* CLOCK TIME REAL SEC VCPU SEC PF CALL# RECURSION/HIGHEST ENTRYPOINT 337*19:01:00.460 0.069478 0.000318 1<- 1 1/1 user_info_$homedir 338**/ 339 340 buffer_event_header: 341 entry (buffer_idx_i) returns (char (256) var); 342 event_ptr = EVENT_PTR (buffer_idx_i); 343 if event_ptr = null () 344 then return ("There is no buffer or the buffer index is out of bounds."); 345 346 if trace_$long () 347 then return (" CLOCK TIME " || METERS_STRING_HEADER () || " " || DOTS_STRING (event.frame_count) 348 || COUNTS_STRING_HEADER () || " ENTRYPOINT"); 349 else return (DOTS_STRING (event.frame_count) || COUNTS_STRING_HEADER () || " ENTRYPOINT"); 350 351 352 353 354 buffer_event_string: 355 entry (buffer_idx_i) returns (char (256) var); 356 event_ptr = EVENT_PTR (buffer_idx_i); 357 if event_ptr = null () 358 then return ("There is no buffer or the buffer index is out of bounds."); 359 360 if event.kind = "ca" | event.kind = "re" 361 then char256var = trace_$entrypoint_name (trace_$entrypoint_index (event.entry_ptr)); 362 else if event.kind = "un" 363 then char256var = trace_$entrypoint_name (trace_$entrypoint_index (event.entry_ptr)) || " unwound"; 364 else if event.kind = "si" 365 then char256var = rtrim (addr (event.saved) -> based_signal_name); 366 else char256var = "Unknown trace event """ || event.kind || """"; 367 368 if trace_$long () 369 then return (trace_time_ (addr (event.callers_sp) -> fb71based) || " " || METERS_STRING (event.kind, event.frame) 370 || " " || DOTS_STRING (event.frame_count) || COUNTS_STRING (event.kind, event.saved) || " " || char256var); 371 else return (DOTS_STRING (event.frame_count) || COUNTS_STRING (event.kind, event.saved) || " " || char256var); 372 373 cv_file_path_to_osw: 374 entry (char256var_i, referencing_ptr_i) returns (1 like output_switch aligned); 375 osw.iocb_ptr = null (); 376 osw.stream_name = ""; 377 osw.file_path = char256var_i; 378 if osw.file_path = "" 379 then return (osw); 380 381 osw.stream_name = "trace_of_." || unique_chars_ (""b); 382 383 if length (osw.file_path) < 6 384 then osw.file_path = osw.file_path || ".trace"; 385 else if substr (osw.file_path, length (osw.file_path) - 5) ^= ".trace" 386 then osw.file_path = osw.file_path || ".trace"; 387 388 call iox_$attach_name ((osw.stream_name), osw.iocb_ptr, "vfile_ " || osw.file_path, (referencing_ptr_i), code); 389 if code ^= 0 390 then call 391 sub_err_ (code, trace_$me (), ACTION_CANT_RESTART, null (), rv, "Attempting to attach file ""^a"".", 392 osw.file_path); 393 394 call iox_$open (osw.iocb_ptr, Stream_output, "0"b, code); 395 if code ^= 0 396 then do; 397 call iox_$detach_iocb (osw.iocb_ptr, rv); 398 call sub_err_ (code, trace_$me (), ACTION_CANT_RESTART, null (), rv, "Attempting to open ""^a"".", osw.file_path); 399 end; 400 401 return (osw); 402 403 404 cv_stream_name_to_osw: 405 entry (char32var_i) returns (1 like output_switch aligned); 406 osw.iocb_ptr = null (); 407 osw.stream_name = char32var_i; 408 osw.file_path = ""; 409 if osw.stream_name ^= "" 410 then do; 411 if before (osw.stream_name, ".") = "trace_of_" 412 then call 413 sub_err_ (ZERO, trace_$me (), ACTION_CANT_RESTART, null (), rv, 414 "The io stream prefix ""trace_of_."" is reserved for use by trace only."); 415 call iox_$look_iocb ((osw.stream_name), osw.iocb_ptr, code); 416 if code ^= 0 417 then call 418 sub_err_ (code, trace_$me (), ACTION_CANT_RESTART, null (), rv, "Attempting to locate the io stream ""^a"".", 419 osw.stream_name); 420 end; 421 return (osw); 422 423 424 copy_osw: 425 entry (osw_source_i, osw_dest_i); 426 if osw_source_i.iocb_ptr = osw_dest_i.iocb_ptr 427 then return; 428 osw = osw_dest_i; 429 osw_dest_i = osw_source_i; 430 if osw.file_path = "" 431 then return; 432 433 call iox_$close (osw.iocb_ptr, code); 434 if code ^= 0 435 then call 436 sub_err_ (code, trace_$me (), ACTION_DEFAULT_RESTART, null (), rv, "Attempting to close file ""^a"".", 437 osw.file_path); 438 439 code = 0; 440 call iox_$detach_iocb (osw.iocb_ptr, code); 441 if code ^= 0 442 then call 443 sub_err_ (code, trace_$me (), ACTION_DEFAULT_RESTART, null (), rv, "Attempting to detach file ""^a"".", 444 osw.file_path); 445 446 return; 447 448 449 cv_entry_name_to_spp: 450 entry (char256var_i, referencing_ptr_i) returns (1 like stop_proc aligned); 451 call cu_$make_entry_value (null (), spp.entry_value); 452 spp.entry_name = char256var_i; 453 if spp.entry_name ^= "" 454 then do; 455 spp.entry_value = cv_entry_ ((spp.entry_name), (referencing_ptr_i), code); 456 if code ^= 0 457 then call sub_err_ (code, trace_$me (), ACTION_CANT_RESTART, null (), rv, "-stop_proc ""^a"".", spp.entry_name); 458 end; 459 return (spp); 460 461 /* SUBROUTINES */ 462 463 464 EVENT_PTR: 465 proc (buffer_idx_i) returns (ptr unal); 466 dcl buffer_idx_i fixed bin (34) parm; 467 dcl buffer_ptr ptr unal; 468 dcl buffer_idx fixed bin (34); 469 dcl buffer_array_idx fixed bin; 470 buffer_ptr = trace_$buffer_ptr (); 471 buffer_idx = buffer_idx_i; 472 if buffer_ptr = null () 473 then return (null ()); 474 if buffer.h.version ^= BUFFER_VERSION_3 475 then signal error; 476 if buffer_idx < 0 | buffer_idx < buffer.count - dim (buffer.e, 1) | buffer_idx >= buffer.count 477 then return (null ()); 478 buffer_array_idx = mod (buffer_idx, dim (buffer.e, 1)); 479 if buffer.e (buffer_array_idx).version ^= EVENT_VERSION_3 480 then signal error; 481 return (addr (buffer.e (buffer_array_idx))); 482 end EVENT_PTR; 483 484 485 486 METERS_STRING: 487 proc (kind_i, meters_i) returns (char (40) var); 488 dcl kind_i char (2) parm; 489 dcl 1 meters_i like meters aligned parm; 490 dcl meters_string char (40) var; 491 dcl return_string_length fixed bin; 492 if kind_i = "re" | kind_i = "un" 493 then call 494 ioa_$rsnnl ("^10.6f ^10.6f ^3d", meters_string, return_string_length, float (meters_i.real_time, 27) * 1e-6, 495 float (meters_i.vcpu_time, 27) * 1e-6, meters_i.page_faults); 496 else meters_string = (25)" "; 497 return (meters_string); 498 499 METERS_STRING_HEADER: 500 entry () returns (char (25)); 501 return (" REAL SEC VCPU SEC PF"); 502 end METERS_STRING; 503 504 505 506 DOTS_STRING: 507 proc (number_of_dots_i) returns (char (40) var); 508 dcl number_of_dots_i fixed bin unal parm; 509 dcl dot_string char (40) var; 510 dcl return_string_length fixed bin; 511 if number_of_dots_i <= maxlength (dot_string) 512 then dot_string = copy (".", number_of_dots_i); 513 else do; 514 call ioa_$rsnnl ("[^d]", dot_string, return_string_length, number_of_dots_i); 515 dot_string = copy (".", maxlength (dot_string) - length (dot_string)) || dot_string; 516 end; 517 return (dot_string); 518 end DOTS_STRING; 519 520 521 COUNTS_STRING: 522 proc (kind_i, saved_counts_i) returns (char (40) var); 523 dcl kind_i char (2) parm; 524 dcl 1 saved_counts_i like counts aligned parm; 525 dcl kind_symbol char (2) aligned; 526 dcl counts_string char (40) var; 527 dcl return_string_length fixed bin; 528 529 if kind_i = "ca" 530 then kind_symbol = "->"; 531 else if kind_i = "re" 532 then kind_symbol = "<-"; 533 else if kind_i = "un" 534 then kind_symbol = "UW"; 535 else kind_symbol = ""; 536 537 if kind_i = "si" 538 then counts_string = "Signal "; 539 else if kind_symbol = "" 540 then counts_string = (13)" "; 541 else call 542 ioa_$rsnnl ("^2a^7d ^d/^d", counts_string, return_string_length, kind_symbol, saved_counts_i.calls + 1, 543 saved_counts_i.level + 1, max (saved_counts_i.level + 1, saved_counts_i.max_level)); 544 545 return (counts_string); 546 547 COUNTS_STRING_HEADER: 548 entry () returns (char (27)); 549 return (" CALL# RECURSION/HIGHEST"); 550 end COUNTS_STRING; 551 552 /* START OF DECLARATIONS */ 553 /* format: ^insnl,^delnl */ 554 555 556 /* Parameters */ 557 558 dcl buffer_count_o fixed bin (34) parm; 559 dcl buffer_first_idx_o fixed bin (34) parm; 560 dcl buffer_idx_i fixed bin (34) parm; 561 dcl buffer_ptr_o ptr unal parm; 562 dcl buffer_ptr_source_i ptr unal parm; 563 dcl buffer_ptr_target_i ptr unal parm; 564 dcl char32var_i char (32) var parm; 565 dcl char256var_i char (256) var parm; 566 dcl entry_ptr_o ptr unal parm; 567 dcl frame_count_o fixed bin parm; 568 dcl kind_o char (2) unal parm; 569 dcl referencing_ptr_i ptr parm; 570 dcl watch_values_changed_i bit aligned parm; 571 dcl 1 event_i like event aligned parm; 572 dcl 1 frame_meters_o like meters aligned parm; 573 dcl 1 osw_dest_i like output_switch aligned parm; 574 dcl 1 osw_source_i like output_switch aligned parm; 575 dcl 1 saved_counts_o like counts aligned parm; 576 577 578 /* Automatic */ 579 580 dcl bname_length fixed bin; 581 dcl bname_ptr ptr; 582 dcl clock_reading fixed bin (71); 583 dcl cname char (32) aligned; 584 dcl code fixed bin (35); 585 dcl char256var char (256) var; 586 dcl dir_path char (168); 587 dcl entry_name char (32); 588 dcl offset fixed bin (18); 589 dcl iop ptr; 590 dcl return_string_length fixed bin; 591 dcl rv fixed bin (35); 592 593 dcl 1 osw aligned like output_switch; 594 dcl 1 spp aligned like stop_proc; 595 596 dcl EVENT_VERSION_3 char (4) aligned static options (constant) init ("TEV3"); 597 dcl event_ptr ptr; 598 dcl 1 event aligned based (event_ptr), /* Trace_catch_ knows this is 16 words. */ 599 2 version char (4), 600 2 kind char (2) unal, 601 2 frame_count fixed bin unal, 602 2 frame like meters, 603 2 entry_ptr ptr unal, 604 2 saved like counts, 605 2 entry_idx fixed bin, 606 2 arg_list_ptr ptr unal, 607 2 callers_sp ptr unal, 608 2 return_ptr ptr unal; 609 610 611 /* Static */ 612 613 dcl 1 CL_FLAGS aligned static options (constant), 614 2 reset_sw bit unal init ("0"b), 615 2 mbz bit (35) unal init (""b); 616 617 dcl LAST_OSW_IOCB_PTR_THAT_A_TRACE_MESSAGE_WAS_WRITTEN_TO ptr static init (null ()); 618 dcl ZERO fixed bin (35) static options (constant) init (0); 619 620 621 /* Conditions */ 622 623 dcl error condition; 624 625 626 /* Based */ 627 628 dcl based_ptr ptr based; 629 dcl based_signal_name char (24) aligned based; 630 dcl bname char (bname_length) based (bname_ptr); 631 dcl fb71based fixed bin (71) based; 632 633 dcl buffer_ptr ptr unal; 634 dcl BUFFER_VERSION_3 char (8) aligned static options (constant) init ("TraceBF3"); 635 dcl 1 buffer aligned based (buffer_ptr), 636 2 h, 637 3 version char (8), 638 3 not_used fixed bin, 639 3 count fixed bin (34), 640 2 e (0:8191) like event; /* Trace_catch_ knows this dimension. */ 641 642 643 /* External Variables */ 644 645 dcl iox_$error_output ptr ext; 646 647 648 /* External Entries */ 649 650 dcl cu_$cl entry (1 aligned, 2 bit (1) unal, 2 bit (35) unal); 651 dcl cu_$make_entry_value entry (ptr, entry); 652 dcl cv_entry_ entry (char (*), ptr, fixed bin (35)) returns (entry); 653 dcl hcs_$fs_get_path_name entry (ptr, char (*), fixed bin, char (*), fixed bin (35)); 654 dcl interpret_bind_map_ entry (ptr, char (32) aligned, fixed bin (18), fixed bin (35)); 655 dcl ioa_$rsnnl entry options (variable); 656 dcl ioa_$ioa_switch entry options (variable); 657 dcl iox_$attach_name entry (char (*), ptr, char (*), ptr, fixed bin (35)); 658 dcl iox_$close entry (ptr, fixed bin (35)); 659 dcl iox_$detach_iocb entry (ptr, fixed bin (35)); 660 dcl iox_$look_iocb entry (char (*), ptr, fixed bin (35)); 661 dcl iox_$open entry (ptr, fixed bin, bit (1) aligned, fixed bin (35)); 662 dcl pl1_frame_$name entry (ptr, ptr, fixed bin); 663 dcl sub_err_ entry () options (variable); 664 dcl trace_time_ entry (fixed bin (71)) returns (char (12)); 665 dcl unique_chars_ entry (bit (*)) returns (char (15)); 666 667 668 /* format: insnl,delnl */ 669 /* END OF DECLARATIONS */ 670 671 /* START OF INCLUDE FILES */ 672 2 1 /* BEGIN INCLUDE FILE ... arg_descriptor.incl.pl1 2 2* 2 3* James R. Davis 1 Mar 79 */ 2 4 /* Modified June 83 JMAthane for extended arg descriptor format */ 2 5 2 6 dcl 1 arg_descriptor based (arg_descriptor_ptr) aligned, 2 7 2 flag bit (1) unal, 2 8 2 type fixed bin (6) unsigned unal, 2 9 2 packed bit (1) unal, 2 10 2 number_dims fixed bin (4) unsigned unal, 2 11 2 size fixed bin (24) unsigned unal; 2 12 2 13 dcl 1 fixed_arg_descriptor based (arg_descriptor_ptr) aligned, 2 14 2 flag bit (1) unal, 2 15 2 type fixed bin (6) unsigned unal, 2 16 2 packed bit (1) unal, 2 17 2 number_dims fixed bin (4) unsigned unal, 2 18 2 scale fixed bin (11) unal, 2 19 2 precision fixed bin (12) unsigned unal; 2 20 2 21 dcl 1 extended_arg_descriptor based (arg_descriptor_ptr) aligned, 2 22 2 flag bit (1) unal, /* = "1"b */ 2 23 2 type fixed bin (6) unsigned unal, /* = 58 */ 2 24 2 packed bit (1) unal, /* significant if number_dims ^= 0 */ 2 25 2 number_dims fixed (4) unsigned unal,/* number of variable dimensions */ 2 26 2 size bit (24) unal, 2 27 2 dims (0 refer (extended_arg_descriptor.number_dims)), /* part referenced by called generated code */ 2 28 3 low fixed bin (35), 2 29 3 high fixed bin (35), 2 30 3 multiplier fixed bin (35), /* in bits if packed, in words if not */ 2 31 2 real_type fixed bin (18) unsigned unal, 2 32 2 type_offset fixed bin (18) unsigned unal; /* offset rel to symbol tree to symbol node for type, if any */ 2 33 2 34 dcl arg_descriptor_ptr ptr; 2 35 2 36 dcl extended_arg_type fixed bin init (58); 2 37 2 38 /* END INCLUDE file .... arg_descriptor.incl.pl1 */ 673 674 3 1 /* BEGIN INCLUDE FILE ... arg_list.incl.pl1 3 2* 3 3* James R. Davis 10 May 79 */ 3 4 3 5 3 6 3 7 /****^ HISTORY COMMENTS: 3 8* 1) change(86-05-15,DGHowe), approve(86-05-15,MCR7375), 3 9* audit(86-07-15,Schroth): 3 10* added command_name_arglist declaration to allow the storage of the 3 11* command name given to the command processor 3 12* END HISTORY COMMENTS */ 3 13 3 14 dcl 1 arg_list aligned based, 3 15 2 header, 3 16 3 arg_count fixed bin (17) unsigned unal, 3 17 3 pad1 bit (1) unal, 3 18 3 call_type fixed bin (18) unsigned unal, 3 19 3 desc_count fixed bin (17) unsigned unal, 3 20 3 pad2 bit (19) unal, 3 21 2 arg_ptrs (arg_list_arg_count refer (arg_list.arg_count)) ptr, 3 22 2 desc_ptrs (arg_list_arg_count refer (arg_list.arg_count)) ptr; 3 23 3 24 3 25 dcl 1 command_name_arglist aligned based, 3 26 2 header, 3 27 3 arg_count fixed bin (17) unsigned unal, 3 28 3 pad1 bit (1) unal, 3 29 3 call_type fixed bin (18) unsigned unal, 3 30 3 desc_count fixed bin (17) unsigned unal, 3 31 3 mbz bit(1) unal, 3 32 3 has_command_name bit(1) unal, 3 33 3 pad2 bit (17) unal, 3 34 2 arg_ptrs (arg_list_arg_count refer (command_name_arglist.arg_count)) ptr, 3 35 2 desc_ptrs (arg_list_arg_count refer (command_name_arglist.arg_count)) ptr, 3 36 2 name, 3 37 3 command_name_ptr pointer, 3 38 3 command_name_length fixed bin (21); 3 39 3 40 3 41 3 42 dcl 1 arg_list_with_envptr aligned based, /* used with non-quick int and entry-var calls */ 3 43 2 header, 3 44 3 arg_count fixed bin (17) unsigned unal, 3 45 3 pad1 bit (1) unal, 3 46 3 call_type fixed bin (18) unsigned unal, 3 47 3 desc_count fixed bin (17) unsigned unal, 3 48 3 pad2 bit (19) unal, 3 49 2 arg_ptrs (arg_list_arg_count refer (arg_list_with_envptr.arg_count)) ptr, 3 50 2 envptr ptr, 3 51 2 desc_ptrs (arg_list_arg_count refer (arg_list_with_envptr.arg_count)) ptr; 3 52 3 53 3 54 dcl ( 3 55 Quick_call_type init (0), 3 56 Interseg_call_type init (4), 3 57 Envptr_supplied_call_type 3 58 init (8) 3 59 ) fixed bin (18) unsigned unal int static options (constant); 3 60 3 61 /* The user must declare arg_list_arg_count - if an adjustable automatic structure 3 62* is being "liked" then arg_list_arg_count may be a parameter, in order to allocate 3 63* an argument list of the proper size in the user's stack 3 64* 3 65**/ 3 66 /* END INCLUDE FILE ... arg_list.incl.pl1 */ 675 676 4 1 /* BEGIN INCLUDE FILE iocbx.incl.pl1 */ 4 2 /* written 27 Dec 1973, M. G. Smith */ 4 3 /* returns attributes removed, hashing support BIM Spring 1981 */ 4 4 /* version made character string June 1981 BIM */ 4 5 /* Modified 11/29/82 by S. Krupp to add new entries and to change 4 6* version number to IOX2. */ 4 7 /* format: style2 */ 4 8 4 9 dcl 1 iocb aligned based, /* I/O control block. */ 4 10 2 version character (4) aligned, /* IOX2 */ 4 11 2 name char (32), /* I/O name of this block. */ 4 12 2 actual_iocb_ptr ptr, /* IOCB ultimately SYNed to. */ 4 13 2 attach_descrip_ptr ptr, /* Ptr to printable attach description. */ 4 14 2 attach_data_ptr ptr, /* Ptr to attach data structure. */ 4 15 2 open_descrip_ptr ptr, /* Ptr to printable open description. */ 4 16 2 open_data_ptr ptr, /* Ptr to open data structure (old SDB). */ 4 17 2 event_channel bit (72), /* Event channel for asynchronous I/O. */ 4 18 2 detach_iocb entry (ptr, fixed bin (35)), 4 19 /* detach_iocb(p) */ 4 20 2 open entry (ptr, fixed, bit (1) aligned, fixed bin (35)), 4 21 /* open(p,mode,not_used) */ 4 22 2 close entry (ptr, fixed bin (35)), 4 23 /* close(p) */ 4 24 2 get_line entry (ptr, ptr, fixed (21), fixed (21), fixed bin (35)), 4 25 /* get_line(p,bufptr,buflen,actlen) */ 4 26 2 get_chars entry (ptr, ptr, fixed (21), fixed (21), fixed bin (35)), 4 27 /* get_chars(p,bufptr,buflen,actlen) */ 4 28 2 put_chars entry (ptr, ptr, fixed (21), fixed bin (35)), 4 29 /* put_chars(p,bufptr,buflen) */ 4 30 2 modes entry (ptr, char (*), char (*), fixed bin (35)), 4 31 /* modes(p,newmode,oldmode) */ 4 32 2 position entry (ptr, fixed, fixed (21), fixed bin (35)), 4 33 /* position(p,u1,u2) */ 4 34 2 control entry (ptr, char (*), ptr, fixed bin (35)), 4 35 /* control(p,order,infptr) */ 4 36 2 read_record entry (ptr, ptr, fixed (21), fixed (21), fixed bin (35)), 4 37 /* read_record(p,bufptr,buflen,actlen) */ 4 38 2 write_record entry (ptr, ptr, fixed (21), fixed bin (35)), 4 39 /* write_record(p,bufptr,buflen) */ 4 40 2 rewrite_record entry (ptr, ptr, fixed (21), fixed bin (35)), 4 41 /* rewrite_record(p,bufptr,buflen) */ 4 42 2 delete_record entry (ptr, fixed bin (35)), 4 43 /* delete_record(p) */ 4 44 2 seek_key entry (ptr, char (256) varying, fixed (21), fixed bin (35)), 4 45 /* seek_key(p,key,len) */ 4 46 2 read_key entry (ptr, char (256) varying, fixed (21), fixed bin (35)), 4 47 /* read_key(p,key,len) */ 4 48 2 read_length entry (ptr, fixed (21), fixed bin (35)), 4 49 /* read_length(p,len) */ 4 50 2 open_file entry (ptr, fixed bin, char (*), bit (1) aligned, fixed bin (35)), 4 51 /* open_file(p,mode,desc,not_used,s) */ 4 52 2 close_file entry (ptr, char (*), fixed bin (35)), 4 53 /* close_file(p,desc,s) */ 4 54 2 detach entry (ptr, char (*), fixed bin (35)), 4 55 /* detach(p,desc,s) */ 4 56 /* Hidden information, to support SYN attachments. */ 4 57 2 ios_compatibility ptr, /* Ptr to old DIM's IOS transfer vector. */ 4 58 2 syn_inhibits bit (36), /* Operations inhibited by SYN. */ 4 59 2 syn_father ptr, /* IOCB immediately SYNed to. */ 4 60 2 syn_brother ptr, /* Next IOCB SYNed as this one is. */ 4 61 2 syn_son ptr, /* First IOCB SYNed to this one. */ 4 62 2 hash_chain_ptr ptr; /* Next IOCB in hash bucket */ 4 63 4 64 declare iox_$iocb_version_sentinel 4 65 character (4) aligned external static; 4 66 4 67 /* END INCLUDE FILE iocbx.incl.pl1 */ 677 678 679 5 1 /* Begin include file ..... iox_modes.incl.pl1 */ 5 2 5 3 /* Written by C. D. Tavares, 03/17/75 */ 5 4 /* Updated 10/31/77 by CDT to include short iox mode strings */ 5 5 5 6 dcl iox_modes (13) char (24) int static options (constant) aligned initial 5 7 ("stream_input", "stream_output", "stream_input_output", 5 8 "sequential_input", "sequential_output", "sequential_input_output", "sequential_update", 5 9 "keyed_sequential_input", "keyed_sequential_output", "keyed_sequential_update", 5 10 "direct_input", "direct_output", "direct_update"); 5 11 5 12 dcl short_iox_modes (13) char (4) int static options (constant) aligned initial 5 13 ("si", "so", "sio", "sqi", "sqo", "sqio", "squ", "ksqi", "ksqo", "ksqu", "di", "do", "du"); 5 14 5 15 dcl (Stream_input initial (1), 5 16 Stream_output initial (2), 5 17 Stream_input_output initial (3), 5 18 Sequential_input initial (4), 5 19 Sequential_output initial (5), 5 20 Sequential_input_output initial (6), 5 21 Sequential_update initial (7), 5 22 Keyed_sequential_input initial (8), 5 23 Keyed_sequential_output initial (9), 5 24 Keyed_sequential_update initial (10), 5 25 Direct_input initial (11), 5 26 Direct_output initial (12), 5 27 Direct_update initial (13)) fixed bin int static options (constant); 5 28 5 29 /* End include file ..... iox_modes.incl.pl1 */ 680 681 6 1 /* BEGIN INCLUDE FILE ... std_descriptor_types.incl.pl1 */ 6 2 6 3 6 4 /****^ HISTORY COMMENTS: 6 5* 1) change(86-09-05,JMAthane), approve(86-09-05,MCR7525), 6 6* audit(86-09-11,Martinson), install(86-11-12,MR12.0-1208): 6 7* Added pascal_string_type_dtype descriptor type. Its number is 87. 6 8* Objects of this type are PASCAL string types. 6 9* 2) change(88-09-20,WAAnderson), approve(88-09-20,MCR7952), 6 10* audit(88-09-30,JRGray), install(88-10-24,MR12.2-1184): 6 11* Added the new C types. 6 12* END HISTORY COMMENTS */ 6 13 6 14 /* This include file defines mnemonic names for the Multics 6 15* standard descriptor types, using both pl1 and cobol terminology. 6 16* PG 780613 6 17* JRD 790530 6 18* JRD 791016 6 19* MBW 810731 6 20* TGO 830614 Add hex types. 6 21* Modified June 83 JMAthane to add PASCAL data types 6 22* TGO 840120 Add float dec extended and generic, float binary generic 6 23**/ 6 24 6 25 dcl (real_fix_bin_1_dtype init (1), 6 26 real_fix_bin_2_dtype init (2), 6 27 real_flt_bin_1_dtype init (3), 6 28 real_flt_bin_2_dtype init (4), 6 29 cplx_fix_bin_1_dtype init (5), 6 30 cplx_fix_bin_2_dtype init (6), 6 31 cplx_flt_bin_1_dtype init (7), 6 32 cplx_flt_bin_2_dtype init (8), 6 33 real_fix_dec_9bit_ls_dtype init (9), 6 34 real_flt_dec_9bit_dtype init (10), 6 35 cplx_fix_dec_9bit_ls_dtype init (11), 6 36 cplx_flt_dec_9bit_dtype init (12), 6 37 pointer_dtype init (13), 6 38 offset_dtype init (14), 6 39 label_dtype init (15), 6 40 entry_dtype init (16), 6 41 structure_dtype init (17), 6 42 area_dtype init (18), 6 43 bit_dtype init (19), 6 44 varying_bit_dtype init (20), 6 45 char_dtype init (21), 6 46 varying_char_dtype init (22), 6 47 file_dtype init (23), 6 48 real_fix_dec_9bit_ls_overp_dtype init (29), 6 49 real_fix_dec_9bit_ts_overp_dtype init (30), 6 50 real_fix_bin_1_uns_dtype init (33), 6 51 real_fix_bin_2_uns_dtype init (34), 6 52 real_fix_dec_9bit_uns_dtype init (35), 6 53 real_fix_dec_9bit_ts_dtype init (36), 6 54 real_fix_dec_4bit_uns_dtype init (38), /* digit-aligned */ 6 55 real_fix_dec_4bit_ts_dtype init (39), /* byte-aligned */ 6 56 real_fix_dec_4bit_bytealigned_uns_dtype init (40), /* COBOL */ 6 57 real_fix_dec_4bit_ls_dtype init (41), /* digit-aligned */ 6 58 real_flt_dec_4bit_dtype init (42), /* digit-aligned */ 6 59 real_fix_dec_4bit_bytealigned_ls_dtype init (43), 6 60 real_flt_dec_4bit_bytealigned_dtype init (44), 6 61 cplx_fix_dec_4bit_bytealigned_ls_dtype init (45), 6 62 cplx_flt_dec_4bit_bytealigned_dtype init (46), 6 63 real_flt_hex_1_dtype init (47), 6 64 real_flt_hex_2_dtype init (48), 6 65 cplx_flt_hex_1_dtype init (49), 6 66 cplx_flt_hex_2_dtype init (50), 6 67 c_typeref_dtype init (54), 6 68 c_enum_dtype init (55), 6 69 c_enum_const_dtype init (56), 6 70 c_union_dtype init (57), 6 71 algol68_straight_dtype init (59), 6 72 algol68_format_dtype init (60), 6 73 algol68_array_descriptor_dtype init (61), 6 74 algol68_union_dtype init (62), 6 75 6 76 cobol_comp_6_dtype init (1), 6 77 cobol_comp_7_dtype init (1), 6 78 cobol_display_ls_dtype init (9), 6 79 cobol_structure_dtype init (17), 6 80 cobol_char_string_dtype init (21), 6 81 cobol_display_ls_overp_dtype init (29), 6 82 cobol_display_ts_overp_dtype init (30), 6 83 cobol_display_uns_dtype init (35), 6 84 cobol_display_ts_dtype init (36), 6 85 cobol_comp_8_uns_dtype init (38), /* digit aligned */ 6 86 cobol_comp_5_ts_dtype init (39), /* byte aligned */ 6 87 cobol_comp_5_uns_dtype init (40), 6 88 cobol_comp_8_ls_dtype init (41), /* digit aligned */ 6 89 real_flt_dec_extended_dtype init (81), /* 9-bit exponent */ 6 90 cplx_flt_dec_extended_dtype init (82), /* 9-bit exponent */ 6 91 real_flt_dec_generic_dtype init (83), /* generic float decimal */ 6 92 cplx_flt_dec_generic_dtype init (84), 6 93 real_flt_bin_generic_dtype init (85), /* generic float binary */ 6 94 cplx_flt_bin_generic_dtype init (86)) fixed bin internal static options (constant); 6 95 6 96 dcl (ft_integer_dtype init (1), 6 97 ft_real_dtype init (3), 6 98 ft_double_dtype init (4), 6 99 ft_complex_dtype init (7), 6 100 ft_complex_double_dtype init (8), 6 101 ft_external_dtype init (16), 6 102 ft_logical_dtype init (19), 6 103 ft_char_dtype init (21), 6 104 ft_hex_real_dtype init (47), 6 105 ft_hex_double_dtype init (48), 6 106 ft_hex_complex_dtype init (49), 6 107 ft_hex_complex_double_dtype init (50) 6 108 ) fixed bin internal static options (constant); 6 109 6 110 dcl (algol68_short_int_dtype init (1), 6 111 algol68_int_dtype init (1), 6 112 algol68_long_int_dtype init (2), 6 113 algol68_real_dtype init (3), 6 114 algol68_long_real_dtype init (4), 6 115 algol68_compl_dtype init (7), 6 116 algol68_long_compl_dtype init (8), 6 117 algol68_bits_dtype init (19), 6 118 algol68_bool_dtype init (19), 6 119 algol68_char_dtype init (21), 6 120 algol68_byte_dtype init (21), 6 121 algol68_struct_struct_char_dtype init (22), 6 122 algol68_struct_struct_bool_dtype init (20) 6 123 ) fixed bin internal static options (constant); 6 124 6 125 dcl (label_constant_runtime_dtype init (24), 6 126 int_entry_runtime_dtype init (25), 6 127 ext_entry_runtime_dtype init (26), 6 128 ext_procedure_runtime_dtype init (27), 6 129 picture_runtime_dtype init (63) 6 130 ) fixed bin internal static options (constant); 6 131 6 132 dcl (pascal_integer_dtype init (1), 6 133 pascal_real_dtype init (4), 6 134 pascal_label_dtype init (24), 6 135 pascal_internal_procedure_dtype init (25), 6 136 pascal_exportable_procedure_dtype init (26), 6 137 pascal_imported_procedure_dtype init (27), 6 138 pascal_typed_pointer_type_dtype init (64), 6 139 pascal_char_dtype init (65), 6 140 pascal_boolean_dtype init (66), 6 141 pascal_record_file_type_dtype init (67), 6 142 pascal_record_type_dtype init (68), 6 143 pascal_set_dtype init (69), 6 144 pascal_enumerated_type_dtype init (70), 6 145 pascal_enumerated_type_element_dtype init (71), 6 146 pascal_enumerated_type_instance_dtype init (72), 6 147 pascal_user_defined_type_dtype init (73), 6 148 pascal_user_defined_type_instance_dtype init (74), 6 149 pascal_text_file_dtype init (75), 6 150 pascal_procedure_type_dtype init (76), 6 151 pascal_variable_formal_parameter_dtype init (77), 6 152 pascal_value_formal_parameter_dtype init (78), 6 153 pascal_entry_formal_parameter_dtype init (79), 6 154 pascal_parameter_procedure_dtype init (80), 6 155 pascal_string_type_dtype init (87)) fixed bin int static options (constant); 6 156 6 157 6 158 /* END INCLUDE FILE ... std_descriptor_types.incl.pl1 */ 682 683 7 1 /* BEGIN INCLUDE FILE sub_err_flags.incl.pl1 BIM 11/81 */ 7 2 /* format: style3 */ 7 3 7 4 /* These constants are to be used for the flags argument of sub_err_ */ 7 5 /* They are just "string (condition_info_header.action_flags)" */ 7 6 7 7 declare ( 7 8 ACTION_CAN_RESTART init (""b), 7 9 ACTION_CANT_RESTART init ("1"b), 7 10 ACTION_DEFAULT_RESTART 7 11 init ("01"b), 7 12 ACTION_QUIET_RESTART 7 13 init ("001"b), 7 14 ACTION_SUPPORT_SIGNAL 7 15 init ("0001"b) 7 16 ) bit (36) aligned internal static options (constant); 7 17 7 18 /* End include file */ 684 685 8 1 /* START OF: trace_interface.incl.pl1 * * * * * * * * * * * * * * * * */ 8 2 /* Written: May 1984 by Jeffrey D. Ives. */ 8 3 /* format: style2,^inddcls,^indnoniterdo,^inditerdo,dclind5,idind35 */ 8 4 8 5 /* IDENTIFICATION */ 8 6 8 7 dcl trace_$me entry () returns (char (32)); 8 8 dcl trace_$version entry () returns (char (32)); 8 9 8 10 /* TRANSACTIONS */ 8 11 8 12 dcl trace_$transaction_begin entry (fixed bin (71)) returns (bit aligned); 8 13 dcl trace_$transaction_begin_force entry (fixed bin (71)); 8 14 dcl trace_$transaction_end entry (fixed bin (71)) returns (bit aligned); 8 15 8 16 /* ACTIONS */ 8 17 8 18 dcl trace_$update_default_parms entry () returns (bit aligned); 8 19 dcl trace_$update_global_parms entry () returns (bit aligned); 8 20 dcl trace_$add_specified_eps entry (fixed bin, fixed bin); 8 21 dcl trace_$add_specified_locs entry (fixed bin, fixed bin); 8 22 dcl trace_$remove_specified_eps entry (fixed bin); 8 23 dcl trace_$remove_specified_locs entry (fixed bin); 8 24 dcl trace_$turn_on_specified_eps entry (fixed bin); 8 25 dcl trace_$turn_off_specified_eps entry (fixed bin); 8 26 8 27 /* CONVERSION */ 8 28 8 29 dcl trace_$cv_inout_to_bits entry (char (8) aligned) returns (bit (2) aligned); 8 30 dcl trace_$cv_bits_to_inout entry (bit (2) aligned) returns (char (8) aligned); 8 31 dcl trace_$cv_n_to_number entry (char (16)) returns (fixed bin (34)); 8 32 dcl trace_$cv_onoff_to_bit entry (char (8) aligned) returns (bit aligned); 8 33 dcl trace_$cv_bit_to_onoff entry (bit aligned) returns (char (8) aligned); 8 34 dcl trace_$cv_entry_name_to_spp entry (char (256) var, ptr) returns (1 like stop_proc aligned); 8 35 dcl trace_$cv_file_path_to_osw entry (char (256) var, ptr) returns (1 like output_switch aligned); 8 36 dcl trace_$cv_stream_name_to_osw entry (char (32) var) returns (1 like output_switch aligned); 8 37 8 38 /* METERS */ 8 39 8 40 dcl trace_$entrypoint_counts entry (fixed bin) returns (1 aligned like counts); 8 41 dcl trace_$entrypoint_global_meters entry (fixed bin) returns (1 like meters aligned); 8 42 dcl trace_$entrypoint_local_meters entry (fixed bin) returns (1 like meters aligned); 8 43 dcl trace_$metered entry () returns (1 like meters aligned); 8 44 dcl trace_$removed entry () returns (1 like meters aligned); 8 45 dcl trace_$reset_meters entry (); 8 46 8 47 /* ENTRYPOINTS */ 8 48 8 49 dcl trace_$entrypoint_index entry (ptr unal) returns (fixed bin); 8 50 dcl trace_$entrypoint_name entry (fixed bin) returns (char (65) var); 8 51 dcl trace_$entrypoint_ptr entry (fixed bin) returns (ptr); 8 52 dcl trace_$entrypoint_seg_path entry (fixed bin) returns (char (256) var); 8 53 dcl trace_$entrypoint_status entry (fixed bin) returns (char (32) var); 8 54 dcl trace_$function entry (fixed bin) returns (bit aligned); 8 55 dcl trace_$num_entrypoints entry () returns (fixed bin); 8 56 dcl trace_$num_specified_entrypoints entry () returns (fixed bin); 8 57 dcl trace_$specified_entrypoint_index entry (fixed bin) returns (fixed bin); 8 58 dcl trace_$specify_entrypoints entry (char (256) var, ptr); 8 59 dcl trace_$translator_id entry (fixed bin) returns (fixed bin); 8 60 8 61 /* LOCATIONS */ 8 62 8 63 dcl trace_$location_ptr entry (fixed bin) returns (ptr); 8 64 dcl trace_$location_seg_path entry (fixed bin) returns (char (256) var); 8 65 dcl trace_$location_values entry (fixed bin) returns (1 aligned like watch_values); 8 66 dcl trace_$num_locations entry () returns (fixed bin); 8 67 dcl trace_$num_specified_locations entry () returns (fixed bin); 8 68 dcl trace_$specified_location_index entry (fixed bin) returns (fixed bin); 8 69 dcl trace_$specify_locations entry (char (256) var); 8 70 dcl trace_$specify_changed_locations entry (); 8 71 8 72 /* EVENT BUFFER */ 8 73 8 74 dcl trace_$buffer_counts entry (fixed bin (34), fixed bin (34)); 8 75 dcl trace_$buffer_event entry (fixed bin (34), fixed bin, char (2), ptr unal, 1 like counts aligned, 1 like meters aligned); 8 76 dcl trace_$buffer_event_header entry (fixed bin (34)) returns (char (256) var); 8 77 dcl trace_$buffer_event_string entry (fixed bin (34)) returns (char (256) var); 8 78 dcl trace_$buffer_ptr entry () returns (ptr unal); 8 79 8 80 /* TRACE PARAMETERS */ 8 81 8 82 dcl trace_$arguments entry (fixed bin) returns (bit (2) aligned); 8 83 dcl trace_$set_arguments entry (bit (2) aligned); 8 84 dcl trace_$call entry (fixed bin) returns (char (256) var); 8 85 dcl trace_$set_call entry (char (256) var); 8 86 dcl trace_$every entry (fixed bin) returns (fixed bin (34)); 8 87 dcl trace_$set_every entry (fixed bin (34)); 8 88 dcl trace_$first entry (fixed bin) returns (fixed bin (34)); 8 89 dcl trace_$set_first entry (fixed bin (34)); 8 90 dcl trace_$high entry (fixed bin) returns (fixed bin (34)); 8 91 dcl trace_$set_high entry (fixed bin (34)); 8 92 dcl trace_$last entry (fixed bin) returns (fixed bin (34)); 8 93 dcl trace_$set_last entry (fixed bin (34)); 8 94 dcl trace_$low entry (fixed bin) returns (fixed bin (34)); 8 95 dcl trace_$set_low entry (fixed bin (34)); 8 96 dcl trace_$new_high entry (fixed bin) returns (bit aligned); 8 97 dcl trace_$set_new_high entry (bit aligned); 8 98 dcl trace_$parms_string entry (fixed bin, bit aligned) returns (char (256) var); 8 99 dcl trace_$parms_specified entry () returns (bit aligned); 8 100 dcl trace_$stop entry (fixed bin) returns (bit (2) aligned); 8 101 dcl trace_$set_stop entry (bit (2) aligned); 8 102 dcl trace_$stop_every entry (fixed bin) returns (fixed bin (34)); 8 103 dcl trace_$set_stop_every entry (fixed bin (34)); 8 104 dcl trace_$stop_low entry (fixed bin) returns (fixed bin (34)); 8 105 dcl trace_$set_stop_low entry (fixed bin (34)); 8 106 dcl trace_$trace entry (fixed bin) returns (bit (2) aligned); 8 107 dcl trace_$set_trace entry (bit (2) aligned); 8 108 8 109 /* GLOBAL PARAMETERS */ 8 110 8 111 dcl trace_$alm entry () returns (bit aligned); 8 112 dcl trace_$set_alm entry (bit aligned); 8 113 dcl trace_$automatic entry () returns (bit aligned); 8 114 dcl trace_$set_automatic entry (bit aligned); 8 115 dcl trace_$buffer entry () returns (bit aligned); 8 116 dcl trace_$set_buffer entry (bit aligned); 8 117 dcl trace_$calibrate entry () returns (bit aligned); 8 118 dcl trace_$set_calibrate entry (bit aligned); 8 119 dcl trace_$compensation entry (fixed bin) returns (1 aligned like compensation); 8 120 dcl trace_$set_compensation entry (fixed bin, 1 aligned like compensation); 8 121 dcl trace_$enabled entry () returns (bit aligned); 8 122 dcl trace_$set_enabled entry (bit aligned); 8 123 dcl trace_$global_parms_string entry () returns (char (256) var); 8 124 dcl trace_$long entry () returns (bit aligned); 8 125 dcl trace_$set_long entry (bit aligned); 8 126 dcl trace_$meter entry () returns (bit aligned); 8 127 dcl trace_$set_meter entry (bit aligned); 8 128 dcl trace_$output_switch entry () returns (1 like output_switch aligned); 8 129 dcl trace_$set_output_switch entry (1 like output_switch aligned); 8 130 dcl trace_$signals entry () returns (bit aligned); 8 131 dcl trace_$set_signals entry (bit aligned); 8 132 dcl trace_$stop_proc entry () returns (1 like stop_proc); 8 133 dcl trace_$set_stop_proc entry (1 like stop_proc); 8 134 dcl trace_$stop_routine entry () returns (entry); 8 135 dcl trace_$set_stop_routine entry (entry); 8 136 dcl trace_$trace_routine entry () returns (entry); 8 137 dcl trace_$set_trace_routine entry (entry); 8 138 dcl trace_$loud entry () returns (bit aligned); 8 139 dcl trace_$set_loud entry (bit aligned); 8 140 8 141 /* MISCELLANEOUS */ 8 142 8 143 dcl trace_$in_trace entry () returns (bit aligned); 8 144 8 145 /* STRUCTURES AND CONSTANTS */ 8 146 8 147 dcl 1 watch_values aligned, 8 148 2 old bit (36), 8 149 2 new bit (36); 8 150 8 151 dcl 1 counts aligned, 8 152 2 calls fixed bin (53), /* total number of calls */ 8 153 2 level fixed bin (34), /* current recursion level */ 8 154 2 max_level fixed bin (34); /* max ever recursion level */ 8 155 8 156 8 157 dcl 1 meters aligned, 8 158 2 real_time fixed bin (53), /* The total amount of real time metered. */ 8 159 2 vcpu_time fixed bin (53), /* The total amount of virtual cpu time metered. */ 8 160 2 page_faults fixed bin (34); /* The total number of page faults metered. */ 8 161 8 162 dcl 1 output_switch aligned based, 8 163 2 iocb_ptr ptr, 8 164 2 stream_name char (32) var, 8 165 2 file_path char (256) var; 8 166 8 167 dcl 1 stop_proc aligned based, 8 168 2 entry_value entry (), 8 169 2 entry_name char (256) var; 8 170 8 171 dcl 1 compensation aligned, 8 172 2 real_time fixed bin (53), 8 173 2 vcpu_time fixed bin (53); 8 174 8 175 dcl ( 8 176 COMPENSATION_FROM_ENTRY_TO_ENTRY init (1), 8 177 COMPENSATION_FROM_ENTRY_TO_RETURN init (2), 8 178 COMPENSATION_FROM_RETURN_TO_ENTRY init (3), 8 179 COMPENSATION_FROM_RETURN_TO_RETURN init (4) 8 180 ) static options (constant); 8 181 8 182 /* END OF: trace_interface.incl.pl1 * * * * * * * * * * * * * * * * */ 686 687 688 689 end trace_print_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 10/24/88 1400.1 trace_print_.pl1 >special_ldd>install>MR12.2-1184>trace_print_.pl1 125 1 03/24/82 1347.2 condition_info_header.incl.pl1 >ldd>include>condition_info_header.incl.pl1 673 2 11/02/83 1845.0 arg_descriptor.incl.pl1 >ldd>include>arg_descriptor.incl.pl1 675 3 08/05/86 0856.8 arg_list.incl.pl1 >ldd>include>arg_list.incl.pl1 677 4 06/03/83 1008.5 iocbx.incl.pl1 >ldd>include>iocbx.incl.pl1 680 5 02/02/78 1229.7 iox_modes.incl.pl1 >ldd>include>iox_modes.incl.pl1 682 6 10/24/88 1336.9 std_descriptor_types.incl.pl1 >special_ldd>install>MR12.2-1184>std_descriptor_types.incl.pl1 684 7 04/16/82 0958.1 sub_err_flags.incl.pl1 >ldd>include>sub_err_flags.incl.pl1 686 8 10/23/84 1349.5 trace_interface.incl.pl1 >ldd>include>trace_interface.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. ACTION_CANT_RESTART 000002 constant bit(36) initial dcl 7-7 set ref 389* 398* 411* 416* 456* ACTION_DEFAULT_RESTART 000001 constant bit(36) initial dcl 7-7 set ref 434* 441* BUFFER_VERSION_3 000004 constant char(8) initial dcl 634 ref 275 288 303 474 CL_FLAGS 000000 constant structure level 1 dcl 613 set ref 266* EVENT_VERSION_3 000006 constant char(4) initial dcl 596 ref 30 222 479 Interseg_call_type constant fixed bin(18,0) initial packed unsigned unaligned dcl 3-54 ref 80 LAST_OSW_IOCB_PTR_THAT_A_TRACE_MESSAGE_WAS_WRITTEN_TO 000010 internal static pointer initial dcl 617 set ref 160 170 178* Stream_output 000075 constant fixed bin(17,0) initial dcl 5-15 set ref 394* ZERO 000074 constant fixed bin(35,0) initial dcl 618 set ref 411* actual_iocb_ptr 12 based pointer level 2 dcl 4-9 ref 234 234 256 256 260 260 arg_count based fixed bin(17,0) level 3 packed packed unsigned unaligned dcl 3-14 ref 82 86 90 109 113 197 199 arg_descriptor based structure level 1 dcl 2-6 arg_list based structure level 1 dcl 3-14 arg_list_idx_i parameter fixed bin(17,0) dcl 104 ref 102 109 111 113 117 126 140 arg_list_ptr 15 based pointer level 2 packed packed unaligned dcl 598 ref 80 82 84 86 89 90 109 111 113 117 126 140 197 199 205 arg_ptrs 2 based pointer array level 2 dcl 3-14 ref 89 117 126 140 based_ptr based pointer dcl 628 set ref 117 126 140* based_signal_name based char(24) dcl 629 ref 364 bname based char packed unaligned dcl 630 set ref 58 66* 93 95* bname_length 000100 automatic fixed bin(17,0) dcl 580 set ref 41* 49* 58 66 66 90* 93 95 95 bname_ptr 000102 automatic pointer dcl 581 set ref 49* 58 58 58* 62 66 89* 93 95 buffer based structure level 1 dcl 635 set ref 274 290 buffer_array_idx 000764 automatic fixed bin(17,0) dcl 469 set ref 478* 479 481 buffer_count_o parameter fixed bin(34,0) dcl 558 set ref 294 300* 306* buffer_first_idx_o parameter fixed bin(34,0) dcl 559 set ref 294 299* 305* buffer_idx 000763 automatic fixed bin(34,0) dcl 468 set ref 471* 476 476 476 478 buffer_idx_i parameter fixed bin(34,0) dcl 466 in procedure "EVENT_PTR" ref 464 471 buffer_idx_i parameter fixed bin(34,0) dcl 560 in procedure "trace_print_" set ref 313 315* 340 342* 354 356* buffer_ptr 000762 automatic pointer packed unaligned dcl 467 in procedure "EVENT_PTR" set ref 470* 472 buffer_ptr 000542 automatic pointer packed unaligned dcl 633 in procedure "trace_print_" set ref 274* 275 276 277 284* 286 288 290 296* 297 303 305 305 306 474 476 476 476 478 479 481 buffer_ptr_o parameter pointer packed unaligned dcl 561 set ref 272 277* buffer_ptr_source_i parameter pointer packed unaligned dcl 562 ref 280 282 285 buffer_ptr_target_i parameter pointer packed unaligned dcl 563 set ref 280 282 284 285* call 000743 automatic bit(1) level 2 packed packed unaligned dcl 187 set ref 194 call_type 0(18) based fixed bin(18,0) level 3 packed packed unsigned unaligned dcl 3-14 ref 80 callers_sp 16 based pointer level 2 packed packed unaligned dcl 598 set ref 49 368 calls parameter fixed bin(53,0) level 2 dcl 524 ref 541 char256var 000117 automatic varying char(256) dcl 585 set ref 38* 44* 62* 66* 72* 74* 80* 82* 84* 86* 93* 95* 97* 97 98* 98 99* 99 149* 164* 174* 211* 212 212 212 212 212 360* 362* 364* 366* 368 371 char256var_i parameter varying char(256) dcl 565 ref 373 377 449 452 char32var_i parameter varying char(32) dcl 564 ref 404 407 char_dtype constant fixed bin(17,0) initial dcl 6-25 ref 86 clock_reading 000104 automatic fixed bin(71,0) dcl 582 set ref 32* 164* 164* cname 000106 automatic char(32) dcl 583 set ref 51* 54* 58 62* 66* 92* 95* code 000116 automatic fixed bin(35,0) dcl 584 set ref 41* 42 51* 52 92* 93 212* 388* 389 389* 394* 395 398* 415* 416 416* 433* 434 434* 439* 440* 441 441* 455* 456 456* compensation 000560 automatic structure level 1 dcl 8-171 condition_info_header based structure level 1 dcl 1-6 condition_info_header_ptr 000736 automatic pointer dcl 1-4 set ref 126* 127 127* 127 132 134 135 convert_status_code_ 000110 constant entry external dcl 124 ref 134 count 3 based fixed bin(34,0) level 3 dcl 635 set ref 276* 305 306 476 476 counts 000546 automatic structure level 1 dcl 8-151 counts_string 001051 automatic varying char(40) dcl 526 set ref 537* 539* 541* 545 cu_$cl 000014 constant entry external dcl 650 ref 266 266 cu_$cp 000112 constant entry external dcl 190 ref 212 cu_$make_entry_value 000016 constant entry external dcl 651 ref 451 cv_entry_ 000020 constant entry external dcl 652 ref 455 desc_count 1 based fixed bin(17,0) level 3 packed packed unsigned unaligned dcl 3-14 ref 84 111 desc_ptrs based pointer array level 2 dcl 3-14 ref 86 90 113 dir_path 000220 automatic char(168) packed unaligned dcl 586 set ref 41* display_args_at 000743 automatic structure level 1 dcl 187 set ref 193* display_argument_list_ 000114 constant entry external dcl 191 ref 205 dot_string 001026 automatic varying char(40) dcl 509 set ref 511 511* 514* 515* 515 515 515 517 e 4 based structure array level 2 dcl 635 set ref 305 476 478 481 entry_idx 14 based fixed bin(17,0) level 2 dcl 598 set ref 38* 44* 62* 66* 72* 74* 193* 197* 211* 227* 231* entry_name 000272 automatic char(32) packed unaligned dcl 587 in procedure "trace_print_" set ref 41* 54 entry_name 4 000424 automatic varying char(256) level 2 in structure "spp" dcl 594 in procedure "trace_print_" set ref 452* 453 455 456* entry_ptr 7 based pointer level 2 packed packed unaligned dcl 598 set ref 205 327 360* 360* 362* 362* entry_ptr_o parameter pointer packed unaligned dcl 566 set ref 313 320* 327* entry_value 000424 automatic entry variable level 2 dcl 594 set ref 266 268 451* 455* error 000534 stack reference condition dcl 623 ref 24 30 222 288 303 474 479 event based structure level 1 dcl 598 event_i parameter structure level 1 dcl 571 set ref 26 29 218 221 event_ptr 000532 automatic pointer dcl 597 set ref 29* 30 34 38 41 44 44 49 51 55 62 66 72 72 74 74 76 80 82 84 86 89 90 92 109 111 113 117 126 140 149 160 164 164 164 164 164 170 174 174 174 180 180 193 194 194 197 197 197 199 202 204 205 205 211 221* 222 227 227 231 315* 316 325 326 327 328 329 342* 343 346 349 356* 357 360 360 360 360 362 362 362 364 364 366 368 368 368 368 368 368 371 371 371 extended_arg_type 000543 automatic fixed bin(17,0) initial dcl 2-36 set ref 2-36* fb71based based fixed bin(71,0) dcl 631 set ref 368* file_path 13 000310 automatic varying char(256) level 2 dcl 593 set ref 377* 378 383 383* 383 385 385 385* 385 388 389* 398* 408* 430 434* 441* first_arg_to_print 000741 automatic fixed bin(17,0) dcl 185 set ref 196* 205* frame 2 based structure level 2 dcl 598 set ref 164* 329 368* frame_count 1(18) based fixed bin(17,0) level 2 packed packed unaligned dcl 598 set ref 160* 164* 170* 174* 202 204 325 346* 349* 368* 371* frame_count_o parameter fixed bin(17,0) dcl 567 set ref 313 318* 325* frame_meters_o parameter structure level 1 dcl 572 set ref 313 322* 329* h based structure level 2 dcl 635 hcs_$fs_get_path_name 000022 constant entry external dcl 653 ref 41 header based structure level 2 dcl 3-14 indentation 000740 automatic fixed bin(17,0) dcl 184 set ref 202* 204* 205* info_string 3 based varying char(256) level 2 dcl 1-6 set ref 135* interpret_bind_map_ 000024 constant entry external dcl 654 ref 51 92 ioa_$ioa_switch 000030 constant entry external dcl 656 ref 160 164 170 174 227 231 254 259 ioa_$rsnnl 000026 constant entry external dcl 655 ref 44 62 66 95 113 127 135 140 149 492 514 541 iocb based structure level 1 dcl 4-9 iocb_ptr parameter pointer level 2 in structure "osw_dest_i" dcl 573 in procedure "trace_print_" set ref 426 iocb_ptr parameter pointer level 2 in structure "osw_source_i" dcl 574 in procedure "trace_print_" ref 426 iocb_ptr 000310 automatic pointer level 2 in structure "osw" dcl 593 in procedure "trace_print_" set ref 160 160* 164* 170 170* 174* 178 205* 226 234 250 256 257 260 375* 388* 394* 397* 406* 415* 433* 440* iop 000304 automatic pointer dcl 589 set ref 226* 227* 231* 234* 250* 254* 256* 257* 259* 260* iox_$attach_name 000032 constant entry external dcl 657 ref 388 iox_$close 000034 constant entry external dcl 658 ref 433 iox_$detach_iocb 000036 constant entry external dcl 659 ref 397 440 iox_$error_output 000012 external static pointer dcl 645 ref 226 250 257 iox_$look_iocb 000040 constant entry external dcl 660 ref 415 iox_$open 000042 constant entry external dcl 661 ref 394 kind 1 based char(2) level 2 packed packed unaligned dcl 598 set ref 34 72 74 76 149* 164* 164* 174* 180 180 194 194 197 227 326 360 360 362 364 366 368* 368* 371* kind_i parameter char(2) packed unaligned dcl 488 in procedure "METERS_STRING" ref 486 492 492 kind_i parameter char(2) packed unaligned dcl 523 in procedure "COUNTS_STRING" ref 521 529 531 533 537 kind_o parameter char(2) packed unaligned dcl 568 set ref 313 319* 326* kind_symbol 001050 automatic char(2) dcl 525 set ref 529* 531* 533* 535* 539 541* last_arg_to_print 000742 automatic fixed bin(17,0) dcl 186 set ref 197* 199* 200 205* level 2 parameter fixed bin(34,0) level 2 dcl 524 ref 541 541 541 location_idx 000744 automatic fixed bin(17,0) dcl 240 set ref 245* 246* 249* 254* location_ptr 000745 automatic pointer packed unaligned dcl 241 set ref 249* 250 255 259* long_message 000704 automatic char(100) dcl 123 set ref 132* 134* 135* max_level 3 parameter fixed bin(34,0) level 2 dcl 524 ref 541 541 meters 000552 automatic structure level 1 dcl 8-157 meters_i parameter structure level 1 dcl 489 set ref 486 meters_string 001002 automatic varying char(40) dcl 490 set ref 492* 496* 497 new 1 000544 automatic bit(36) level 2 dcl 8-147 set ref 247 259* number_of_dots_i parameter fixed bin(17,0) packed unaligned dcl 508 set ref 506 511 511 514* offset 000302 automatic fixed bin(18,0) dcl 588 set ref 51* 55* 92* 95* old 000544 automatic bit(36) level 2 dcl 8-147 set ref 247 259* osw 000310 automatic structure level 1 dcl 593 set ref 156* 224* 378 401 421 428* osw_dest_i parameter structure level 1 dcl 573 set ref 424 428 429* osw_source_i parameter structure level 1 dcl 574 ref 424 429 output_switch based structure level 1 dcl 8-162 page_faults 4 parameter fixed bin(34,0) level 2 dcl 489 set ref 492* pl1_frame_$name 000044 constant entry external dcl 662 ref 49 pointer_dtype constant fixed bin(17,0) initial dcl 6-25 ref 113 prev_location_baseno 000746 automatic bit(18) dcl 242 set ref 244* 250 255* ptr_name_i parameter char packed unaligned dcl 105 set ref 102 113* 119 127* 135* 140* real_time parameter fixed bin(53,0) level 2 dcl 489 ref 492 referencing_ptr_i parameter pointer dcl 569 ref 373 388 449 455 return 0(01) 000743 automatic bit(1) level 2 packed packed unaligned dcl 187 set ref 194 return_ptr 17 based pointer level 2 packed packed unaligned dcl 598 set ref 41 44* 51 55 92 return_string_length 001064 automatic fixed bin(17,0) dcl 527 in procedure "COUNTS_STRING" set ref 541* return_string_length 000600 automatic fixed bin(17,0) dcl 106 in procedure "SIGNAL_PTR_STRING" set ref 113* 127* 135* 140* return_string_length 001015 automatic fixed bin(17,0) dcl 491 in procedure "METERS_STRING" set ref 492* return_string_length 001041 automatic fixed bin(17,0) dcl 510 in procedure "DOTS_STRING" set ref 514* return_string_length 000306 automatic fixed bin(17,0) dcl 590 in procedure "trace_print_" set ref 44* 62* 66* 95* 149* rv 000307 automatic fixed bin(35,0) dcl 591 set ref 389* 397* 398* 411* 416* 434* 441* 456* saved 10 based structure level 2 dcl 598 set ref 164* 174* 328 364 368* 371* saved_counts_i parameter structure level 1 dcl 524 ref 521 saved_counts_o parameter structure level 1 dcl 575 set ref 313 321* 328* short_message 000702 automatic char(8) dcl 122 set ref 134* signal_ptr_string 000601 automatic varying char(256) dcl 107 set ref 109* 111* 113* 117* 127* 135* 140* 144 size 0(12) based fixed bin(24,0) level 2 packed packed unsigned unaligned dcl 2-6 ref 90 spp 000424 automatic structure level 1 dcl 594 set ref 265* 459 status_code 104 based fixed bin(35,0) level 2 dcl 1-6 set ref 132 134* stop_proc based structure level 1 dcl 8-167 stream_name 2 000310 automatic varying char(32) level 2 dcl 593 set ref 376* 381* 388 407* 409 411 415 416* sub_err_ 000046 constant entry external dcl 663 ref 389 398 411 416 434 441 456 trace_$arguments 000076 constant entry external dcl 8-82 ref 193 trace_$buffer_ptr 000074 constant entry external dcl 8-78 ref 296 470 trace_$call 000100 constant entry external dcl 8-84 ref 211 trace_$entrypoint_index 000056 constant entry external dcl 8-49 ref 360 360 362 362 trace_$entrypoint_name 000060 constant entry external dcl 8-50 ref 38 44 62 66 72 74 227 231 360 362 trace_$function 000062 constant entry external dcl 8-54 ref 197 trace_$location_ptr 000064 constant entry external dcl 8-63 ref 249 trace_$location_seg_path 000066 constant entry external dcl 8-64 ref 254 trace_$location_values 000070 constant entry external dcl 8-65 ref 246 trace_$long 000102 constant entry external dcl 8-124 ref 38 158 202 346 368 trace_$me 000054 constant entry external dcl 8-7 ref 227 227 231 231 389 389 398 398 411 411 416 416 434 434 441 441 456 456 trace_$num_locations 000072 constant entry external dcl 8-66 ref 245 trace_$output_switch 000104 constant entry external dcl 8-128 ref 156 224 trace_$stop_proc 000106 constant entry external dcl 8-132 ref 265 trace_time_ 000050 constant entry external dcl 664 ref 164 164 368 type 0(01) based fixed bin(6,0) level 2 packed packed unsigned unaligned dcl 2-6 ref 86 113 unique_chars_ 000052 constant entry external dcl 665 ref 381 vcpu_time 2 parameter fixed bin(53,0) level 2 dcl 489 ref 492 version based char(4) level 2 in structure "event" dcl 598 in procedure "trace_print_" ref 30 222 version 4 based char(4) array level 3 in structure "buffer" dcl 635 in procedure "trace_print_" set ref 479 version based char(8) level 3 in structure "buffer" dcl 635 in procedure "trace_print_" set ref 275* 288 303 474 version 1 based fixed bin(17,0) level 2 in structure "condition_info_header" dcl 1-6 in begin block on line 119 set ref 127 127* watch_values 000544 automatic structure level 1 dcl 8-147 set ref 246* watch_values_changed_i parameter bit(1) dcl 570 ref 218 236 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. ACTION_CAN_RESTART internal static bit(36) initial dcl 7-7 ACTION_QUIET_RESTART internal static bit(36) initial dcl 7-7 ACTION_SUPPORT_SIGNAL internal static bit(36) initial dcl 7-7 COMPENSATION_FROM_ENTRY_TO_ENTRY internal static fixed bin(17,0) initial dcl 8-175 COMPENSATION_FROM_ENTRY_TO_RETURN internal static fixed bin(17,0) initial dcl 8-175 COMPENSATION_FROM_RETURN_TO_ENTRY internal static fixed bin(17,0) initial dcl 8-175 COMPENSATION_FROM_RETURN_TO_RETURN internal static fixed bin(17,0) initial dcl 8-175 Direct_input internal static fixed bin(17,0) initial dcl 5-15 Direct_output internal static fixed bin(17,0) initial dcl 5-15 Direct_update internal static fixed bin(17,0) initial dcl 5-15 Envptr_supplied_call_type internal static fixed bin(18,0) initial packed unsigned unaligned dcl 3-54 Keyed_sequential_input internal static fixed bin(17,0) initial dcl 5-15 Keyed_sequential_output internal static fixed bin(17,0) initial dcl 5-15 Keyed_sequential_update internal static fixed bin(17,0) initial dcl 5-15 Quick_call_type internal static fixed bin(18,0) initial packed unsigned unaligned dcl 3-54 Sequential_input internal static fixed bin(17,0) initial dcl 5-15 Sequential_input_output internal static fixed bin(17,0) initial dcl 5-15 Sequential_output internal static fixed bin(17,0) initial dcl 5-15 Sequential_update internal static fixed bin(17,0) initial dcl 5-15 Stream_input internal static fixed bin(17,0) initial dcl 5-15 Stream_input_output internal static fixed bin(17,0) initial dcl 5-15 algol68_array_descriptor_dtype internal static fixed bin(17,0) initial dcl 6-25 algol68_bits_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_bool_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_byte_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_char_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_compl_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_format_dtype internal static fixed bin(17,0) initial dcl 6-25 algol68_int_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_long_compl_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_long_int_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_long_real_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_real_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_short_int_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_straight_dtype internal static fixed bin(17,0) initial dcl 6-25 algol68_struct_struct_bool_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_struct_struct_char_dtype internal static fixed bin(17,0) initial dcl 6-110 algol68_union_dtype internal static fixed bin(17,0) initial dcl 6-25 area_dtype internal static fixed bin(17,0) initial dcl 6-25 arg_descriptor_ptr automatic pointer dcl 2-34 arg_list_with_envptr based structure level 1 dcl 3-42 bit_dtype internal static fixed bin(17,0) initial dcl 6-25 c_enum_const_dtype internal static fixed bin(17,0) initial dcl 6-25 c_enum_dtype internal static fixed bin(17,0) initial dcl 6-25 c_typeref_dtype internal static fixed bin(17,0) initial dcl 6-25 c_union_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_char_string_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_comp_5_ts_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_comp_5_uns_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_comp_6_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_comp_7_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_comp_8_ls_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_comp_8_uns_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_display_ls_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_display_ls_overp_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_display_ts_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_display_ts_overp_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_display_uns_dtype internal static fixed bin(17,0) initial dcl 6-25 cobol_structure_dtype internal static fixed bin(17,0) initial dcl 6-25 command_name_arglist based structure level 1 dcl 3-25 cplx_fix_bin_1_dtype internal static fixed bin(17,0) initial dcl 6-25 cplx_fix_bin_2_dtype internal static fixed bin(17,0) initial dcl 6-25 cplx_fix_dec_4bit_bytealigned_ls_dtype internal static fixed bin(17,0) initial dcl 6-25 cplx_fix_dec_9bit_ls_dtype internal static fixed bin(17,0) initial dcl 6-25 cplx_flt_bin_1_dtype internal static fixed bin(17,0) initial dcl 6-25 cplx_flt_bin_2_dtype internal static fixed bin(17,0) initial dcl 6-25 cplx_flt_bin_generic_dtype internal static fixed bin(17,0) initial dcl 6-25 cplx_flt_dec_4bit_bytealigned_dtype internal static fixed bin(17,0) initial dcl 6-25 cplx_flt_dec_9bit_dtype internal static fixed bin(17,0) initial dcl 6-25 cplx_flt_dec_extended_dtype internal static fixed bin(17,0) initial dcl 6-25 cplx_flt_dec_generic_dtype internal static fixed bin(17,0) initial dcl 6-25 cplx_flt_hex_1_dtype internal static fixed bin(17,0) initial dcl 6-25 cplx_flt_hex_2_dtype internal static fixed bin(17,0) initial dcl 6-25 entry_dtype internal static fixed bin(17,0) initial dcl 6-25 ext_entry_runtime_dtype internal static fixed bin(17,0) initial dcl 6-125 ext_procedure_runtime_dtype internal static fixed bin(17,0) initial dcl 6-125 extended_arg_descriptor based structure level 1 dcl 2-21 file_dtype internal static fixed bin(17,0) initial dcl 6-25 fixed_arg_descriptor based structure level 1 dcl 2-13 ft_char_dtype internal static fixed bin(17,0) initial dcl 6-96 ft_complex_double_dtype internal static fixed bin(17,0) initial dcl 6-96 ft_complex_dtype internal static fixed bin(17,0) initial dcl 6-96 ft_double_dtype internal static fixed bin(17,0) initial dcl 6-96 ft_external_dtype internal static fixed bin(17,0) initial dcl 6-96 ft_hex_complex_double_dtype internal static fixed bin(17,0) initial dcl 6-96 ft_hex_complex_dtype internal static fixed bin(17,0) initial dcl 6-96 ft_hex_double_dtype internal static fixed bin(17,0) initial dcl 6-96 ft_hex_real_dtype internal static fixed bin(17,0) initial dcl 6-96 ft_integer_dtype internal static fixed bin(17,0) initial dcl 6-96 ft_logical_dtype internal static fixed bin(17,0) initial dcl 6-96 ft_real_dtype internal static fixed bin(17,0) initial dcl 6-96 int_entry_runtime_dtype internal static fixed bin(17,0) initial dcl 6-125 iox_$iocb_version_sentinel external static char(4) dcl 4-64 iox_modes internal static char(24) initial array dcl 5-6 label_constant_runtime_dtype internal static fixed bin(17,0) initial dcl 6-125 label_dtype internal static fixed bin(17,0) initial dcl 6-25 offset_dtype internal static fixed bin(17,0) initial dcl 6-25 pascal_boolean_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_char_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_entry_formal_parameter_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_enumerated_type_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_enumerated_type_element_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_enumerated_type_instance_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_exportable_procedure_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_imported_procedure_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_integer_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_internal_procedure_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_label_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_parameter_procedure_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_procedure_type_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_real_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_record_file_type_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_record_type_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_set_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_string_type_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_text_file_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_typed_pointer_type_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_user_defined_type_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_user_defined_type_instance_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_value_formal_parameter_dtype internal static fixed bin(17,0) initial dcl 6-132 pascal_variable_formal_parameter_dtype internal static fixed bin(17,0) initial dcl 6-132 picture_runtime_dtype internal static fixed bin(17,0) initial dcl 6-125 real_fix_bin_1_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_bin_1_uns_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_bin_2_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_bin_2_uns_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_dec_4bit_bytealigned_ls_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_dec_4bit_bytealigned_uns_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_dec_4bit_ls_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_dec_4bit_ts_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_dec_4bit_uns_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_dec_9bit_ls_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_dec_9bit_ls_overp_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_dec_9bit_ts_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_dec_9bit_ts_overp_dtype internal static fixed bin(17,0) initial dcl 6-25 real_fix_dec_9bit_uns_dtype internal static fixed bin(17,0) initial dcl 6-25 real_flt_bin_1_dtype internal static fixed bin(17,0) initial dcl 6-25 real_flt_bin_2_dtype internal static fixed bin(17,0) initial dcl 6-25 real_flt_bin_generic_dtype internal static fixed bin(17,0) initial dcl 6-25 real_flt_dec_4bit_bytealigned_dtype internal static fixed bin(17,0) initial dcl 6-25 real_flt_dec_4bit_dtype internal static fixed bin(17,0) initial dcl 6-25 real_flt_dec_9bit_dtype internal static fixed bin(17,0) initial dcl 6-25 real_flt_dec_extended_dtype internal static fixed bin(17,0) initial dcl 6-25 real_flt_dec_generic_dtype internal static fixed bin(17,0) initial dcl 6-25 real_flt_hex_1_dtype internal static fixed bin(17,0) initial dcl 6-25 real_flt_hex_2_dtype internal static fixed bin(17,0) initial dcl 6-25 short_iox_modes internal static char(4) initial array dcl 5-12 structure_dtype internal static fixed bin(17,0) initial dcl 6-25 trace_$add_specified_eps 000000 constant entry external dcl 8-20 trace_$add_specified_locs 000000 constant entry external dcl 8-21 trace_$alm 000000 constant entry external dcl 8-111 trace_$automatic 000000 constant entry external dcl 8-113 trace_$buffer 000000 constant entry external dcl 8-115 trace_$buffer_counts 000000 constant entry external dcl 8-74 trace_$buffer_event 000000 constant entry external dcl 8-75 trace_$buffer_event_header 000000 constant entry external dcl 8-76 trace_$buffer_event_string 000000 constant entry external dcl 8-77 trace_$calibrate 000000 constant entry external dcl 8-117 trace_$compensation 000000 constant entry external dcl 8-119 trace_$cv_bit_to_onoff 000000 constant entry external dcl 8-33 trace_$cv_bits_to_inout 000000 constant entry external dcl 8-30 trace_$cv_entry_name_to_spp 000000 constant entry external dcl 8-34 trace_$cv_file_path_to_osw 000000 constant entry external dcl 8-35 trace_$cv_inout_to_bits 000000 constant entry external dcl 8-29 trace_$cv_n_to_number 000000 constant entry external dcl 8-31 trace_$cv_onoff_to_bit 000000 constant entry external dcl 8-32 trace_$cv_stream_name_to_osw 000000 constant entry external dcl 8-36 trace_$enabled 000000 constant entry external dcl 8-121 trace_$entrypoint_counts 000000 constant entry external dcl 8-40 trace_$entrypoint_global_meters 000000 constant entry external dcl 8-41 trace_$entrypoint_local_meters 000000 constant entry external dcl 8-42 trace_$entrypoint_ptr 000000 constant entry external dcl 8-51 trace_$entrypoint_seg_path 000000 constant entry external dcl 8-52 trace_$entrypoint_status 000000 constant entry external dcl 8-53 trace_$every 000000 constant entry external dcl 8-86 trace_$first 000000 constant entry external dcl 8-88 trace_$global_parms_string 000000 constant entry external dcl 8-123 trace_$high 000000 constant entry external dcl 8-90 trace_$in_trace 000000 constant entry external dcl 8-143 trace_$last 000000 constant entry external dcl 8-92 trace_$loud 000000 constant entry external dcl 8-138 trace_$low 000000 constant entry external dcl 8-94 trace_$meter 000000 constant entry external dcl 8-126 trace_$metered 000000 constant entry external dcl 8-43 trace_$new_high 000000 constant entry external dcl 8-96 trace_$num_entrypoints 000000 constant entry external dcl 8-55 trace_$num_specified_entrypoints 000000 constant entry external dcl 8-56 trace_$num_specified_locations 000000 constant entry external dcl 8-67 trace_$parms_specified 000000 constant entry external dcl 8-99 trace_$parms_string 000000 constant entry external dcl 8-98 trace_$remove_specified_eps 000000 constant entry external dcl 8-22 trace_$remove_specified_locs 000000 constant entry external dcl 8-23 trace_$removed 000000 constant entry external dcl 8-44 trace_$reset_meters 000000 constant entry external dcl 8-45 trace_$set_alm 000000 constant entry external dcl 8-112 trace_$set_arguments 000000 constant entry external dcl 8-83 trace_$set_automatic 000000 constant entry external dcl 8-114 trace_$set_buffer 000000 constant entry external dcl 8-116 trace_$set_calibrate 000000 constant entry external dcl 8-118 trace_$set_call 000000 constant entry external dcl 8-85 trace_$set_compensation 000000 constant entry external dcl 8-120 trace_$set_enabled 000000 constant entry external dcl 8-122 trace_$set_every 000000 constant entry external dcl 8-87 trace_$set_first 000000 constant entry external dcl 8-89 trace_$set_high 000000 constant entry external dcl 8-91 trace_$set_last 000000 constant entry external dcl 8-93 trace_$set_long 000000 constant entry external dcl 8-125 trace_$set_loud 000000 constant entry external dcl 8-139 trace_$set_low 000000 constant entry external dcl 8-95 trace_$set_meter 000000 constant entry external dcl 8-127 trace_$set_new_high 000000 constant entry external dcl 8-97 trace_$set_output_switch 000000 constant entry external dcl 8-129 trace_$set_signals 000000 constant entry external dcl 8-131 trace_$set_stop 000000 constant entry external dcl 8-101 trace_$set_stop_every 000000 constant entry external dcl 8-103 trace_$set_stop_low 000000 constant entry external dcl 8-105 trace_$set_stop_proc 000000 constant entry external dcl 8-133 trace_$set_stop_routine 000000 constant entry external dcl 8-135 trace_$set_trace 000000 constant entry external dcl 8-107 trace_$set_trace_routine 000000 constant entry external dcl 8-137 trace_$signals 000000 constant entry external dcl 8-130 trace_$specified_entrypoint_index 000000 constant entry external dcl 8-57 trace_$specified_location_index 000000 constant entry external dcl 8-68 trace_$specify_changed_locations 000000 constant entry external dcl 8-70 trace_$specify_entrypoints 000000 constant entry external dcl 8-58 trace_$specify_locations 000000 constant entry external dcl 8-69 trace_$stop 000000 constant entry external dcl 8-100 trace_$stop_every 000000 constant entry external dcl 8-102 trace_$stop_low 000000 constant entry external dcl 8-104 trace_$stop_routine 000000 constant entry external dcl 8-134 trace_$trace 000000 constant entry external dcl 8-106 trace_$trace_routine 000000 constant entry external dcl 8-136 trace_$transaction_begin 000000 constant entry external dcl 8-12 trace_$transaction_begin_force 000000 constant entry external dcl 8-13 trace_$transaction_end 000000 constant entry external dcl 8-14 trace_$translator_id 000000 constant entry external dcl 8-59 trace_$turn_off_specified_eps 000000 constant entry external dcl 8-25 trace_$turn_on_specified_eps 000000 constant entry external dcl 8-24 trace_$update_default_parms 000000 constant entry external dcl 8-18 trace_$update_global_parms 000000 constant entry external dcl 8-19 trace_$version 000000 constant entry external dcl 8-8 varying_bit_dtype internal static fixed bin(17,0) initial dcl 6-25 varying_char_dtype internal static fixed bin(17,0) initial dcl 6-25 NAMES DECLARED BY EXPLICIT CONTEXT. COUNTS_STRING 007302 constant entry internal dcl 521 ref 164 174 368 371 COUNTS_STRING_HEADER 007465 constant entry internal dcl 547 ref 160 160 170 170 346 349 DISPLAY_ARGUMENT_LIST_AND_CALL_CP 002307 constant label dcl 180 DISPLAY_CHANGED_LOCATIONS 002761 constant label dcl 236 DOTS_STRING 007162 constant entry internal dcl 506 ref 160 164 170 174 346 349 368 371 EVENT_PTR 006707 constant entry internal dcl 464 ref 315 342 356 METERS_STRING 007015 constant entry internal dcl 486 ref 164 368 METERS_STRING_HEADER 007137 constant entry internal dcl 499 ref 160 160 346 SIGNAL_PTR_STRING 006362 constant entry internal dcl 102 ref 97 98 99 TRACE_CALL 000710 constant label dcl 34 TRACE_SIGNAL 001352 constant label dcl 76 allocate_buffer 003266 constant entry external dcl 272 buffer_counts 003462 constant entry external dcl 294 buffer_event 003556 constant entry external dcl 313 buffer_event_header 003713 constant entry external dcl 340 buffer_event_string 004204 constant entry external dcl 354 copy_buffer_ptr 003337 constant entry external dcl 280 copy_osw 005676 constant entry external dcl 424 cv_entry_name_to_spp 006162 constant entry external dcl 449 cv_file_path_to_osw 004762 constant entry external dcl 373 cv_stream_name_to_osw 005425 constant entry external dcl 404 stop 002550 constant entry external dcl 218 trace 000657 constant entry external dcl 26 trace_print_ 000640 constant entry external dcl 22 NAMES DECLARED BY CONTEXT OR IMPLICATION. addr builtin function ref 29 212 212 221 364 368 481 addrel builtin function ref 212 212 baseno builtin function ref 250 255 before builtin function ref 411 bin builtin function ref 55 clock builtin function ref 32 copy builtin function ref 511 515 dim builtin function ref 305 476 478 float builtin function ref 492 492 length builtin function ref 212 212 212 383 385 515 max builtin function ref 305 541 541 maxlength builtin function ref 511 515 min builtin function ref 202 204 mod builtin function ref 478 null builtin function ref 58 58 62 117 205 205 205 205 286 297 316 320 343 357 375 389 389 398 398 406 411 411 416 416 434 434 441 441 451 451 456 456 472 472 476 rel builtin function ref 55 rtrim builtin function ref 364 string builtin function ref 193 substr builtin function ref 385 STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 10336 10454 7620 10346 Length 11156 7620 116 465 516 2 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME trace_print_ 1108 external procedure is an external procedure. SIGNAL_PTR_STRING internal procedure shares stack frame of external procedure trace_print_. begin block on line 119 begin block shares stack frame of external procedure trace_print_. begin block on line 180 begin block shares stack frame of external procedure trace_print_. begin block on line 236 begin block shares stack frame of external procedure trace_print_. EVENT_PTR internal procedure shares stack frame of external procedure trace_print_. METERS_STRING internal procedure shares stack frame of external procedure trace_print_. DOTS_STRING internal procedure shares stack frame of external procedure trace_print_. COUNTS_STRING internal procedure shares stack frame of external procedure trace_print_. STORAGE FOR INTERNAL STATIC VARIABLES. LOC IDENTIFIER BLOCK NAME 000010 LAST_OSW_IOCB_PTR_THAT_A_TRACE_MESSAGE_WAS_WRITTEN_TO trace_print_ STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME trace_print_ 000100 bname_length trace_print_ 000102 bname_ptr trace_print_ 000104 clock_reading trace_print_ 000106 cname trace_print_ 000116 code trace_print_ 000117 char256var trace_print_ 000220 dir_path trace_print_ 000272 entry_name trace_print_ 000302 offset trace_print_ 000304 iop trace_print_ 000306 return_string_length trace_print_ 000307 rv trace_print_ 000310 osw trace_print_ 000424 spp trace_print_ 000532 event_ptr trace_print_ 000542 buffer_ptr trace_print_ 000543 extended_arg_type trace_print_ 000544 watch_values trace_print_ 000546 counts trace_print_ 000552 meters trace_print_ 000560 compensation trace_print_ 000600 return_string_length SIGNAL_PTR_STRING 000601 signal_ptr_string SIGNAL_PTR_STRING 000702 short_message begin block on line 119 000704 long_message begin block on line 119 000736 condition_info_header_ptr begin block on line 119 000740 indentation begin block on line 180 000741 first_arg_to_print begin block on line 180 000742 last_arg_to_print begin block on line 180 000743 display_args_at begin block on line 180 000744 location_idx begin block on line 236 000745 location_ptr begin block on line 236 000746 prev_location_baseno begin block on line 236 000762 buffer_ptr EVENT_PTR 000763 buffer_idx EVENT_PTR 000764 buffer_array_idx EVENT_PTR 001002 meters_string METERS_STRING 001015 return_string_length METERS_STRING 001026 dot_string DOTS_STRING 001041 return_string_length DOTS_STRING 001050 kind_symbol COUNTS_STRING 001051 counts_string COUNTS_STRING 001064 return_string_length COUNTS_STRING THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_e_as alloc_char_temp cat_realloc_chars call_ent_var call_ext_out_desc call_ext_out return_mac mdfx1 signal_op shorten_stack ext_entry alloc_storage op_freen_ clock_mac THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. convert_status_code_ cu_$cl cu_$cp cu_$make_entry_value cv_entry_ display_argument_list_ hcs_$fs_get_path_name interpret_bind_map_ ioa_$ioa_switch ioa_$rsnnl iox_$attach_name iox_$close iox_$detach_iocb iox_$look_iocb iox_$open pl1_frame_$name sub_err_ trace_$arguments trace_$buffer_ptr trace_$call trace_$entrypoint_index trace_$entrypoint_name trace_$function trace_$location_ptr trace_$location_seg_path trace_$location_values trace_$long trace_$me trace_$num_locations trace_$output_switch trace_$stop_proc trace_time_ unique_chars_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. iox_$error_output LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 2 36 000633 22 000637 24 000650 26 000653 29 000667 30 000672 32 000700 34 000702 38 000710 41 000742 42 000776 44 001000 47 001050 49 001051 51 001067 52 001107 54 001111 55 001114 58 001120 62 001134 66 001211 71 001267 72 001270 74 001311 76 001347 80 001352 82 001371 84 001404 86 001416 89 001434 90 001436 92 001442 93 001461 95 001475 97 001541 98 001563 99 001604 148 001626 149 001627 156 001657 158 001671 160 001703 164 002006 168 002125 170 002126 174 002212 178 002274 180 002277 193 002307 194 002324 196 002345 197 002347 199 002373 200 002400 202 002401 204 002425 205 002436 211 002472 212 002504 216 002527 218 002544 221 002560 222 002563 224 002571 226 002603 227 002607 231 002666 234 002737 236 002755 244 002761 245 002762 246 003001 247 003014 249 003017 250 003032 254 003042 255 003076 256 003101 257 003117 259 003123 260 003156 262 003174 265 003176 266 003216 268 003242 270 003246 272 003263 274 003276 275 003302 276 003306 277 003307 278 003316 280 003333 282 003347 284 003400 285 003401 286 003406 288 003426 290 003437 291 003441 294 003456 296 003472 297 003501 299 003504 300 003506 301 003507 303 003510 305 003521 306 003531 308 003533 313 003550 315 003566 316 003601 318 003605 319 003610 320 003614 321 003622 322 003630 323 003636 325 003637 326 003644 327 003650 328 003656 329 003663 331 003672 340 003707 342 003723 343 003736 346 003765 349 004112 354 004201 356 004214 357 004227 360 004256 362 004316 364 004365 366 004411 368 004433 371 004643 373 004755 375 004775 376 004777 377 005000 378 005007 381 005034 383 005065 385 005104 388 005127 389 005210 394 005267 395 005306 397 005310 398 005321 401 005400 404 005420 406 005440 407 005442 408 005451 409 005452 411 005457 415 005541 416 005572 421 005651 424 005671 426 005706 428 005730 429 005734 430 005740 433 005762 434 005773 439 006051 440 006052 441 006063 446 006141 449 006156 451 006171 452 006204 453 006213 455 006220 456 006260 459 006340 689 006361 102 006362 109 006373 111 006406 113 006414 117 006462 119 006471 126 006477 127 006507 132 006553 134 006561 135 006574 119 006637 140 006640 144 006677 464 006707 470 006711 471 006720 472 006723 474 006735 476 006745 478 006770 479 006773 481 007003 486 007015 492 007021 496 007111 497 007116 499 007137 501 007142 506 007162 511 007164 513 007211 514 007212 515 007242 516 007271 517 007272 521 007302 529 007306 531 007320 533 007325 535 007332 537 007334 539 007345 541 007363 545 007444 547 007465 549 007470 ----------------------------------------------------------- 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