COMPILATION LISTING OF SEGMENT bce_abs_seg Compiled by: Multics PL/I Compiler, Release 32f, of October 9, 1989 Compiled at: Bull HN, Phoenix AZ, System-M Compiled on: 11/11/89 1000.9 mst Sat Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Bull Inc., 1987 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1984 * 6* * * 7* *********************************************************** */ 8 9 10 /****^ HISTORY COMMENTS: 11* 1) change(86-05-13,GJohnson), approve(86-05-13,MCR7387), 12* audit(86-05-13,Martinson), install(86-05-14,MR12.0-1056): 13* Correct error message documentation. 14* END HISTORY COMMENTS */ 15 16 17 bce_abs_seg: proc; return; 18 19 /* format: style4,indattr,ifthenstmt,ifthen,idind33,^indcomtxt */ 20 21 /* Maintains a list of abs-segs to be freed (sdw's zeroed) at the end of a bce 22*pass. Keith Loepere, May 1984. */ 23 24 dcl abs_seg_count fixed bin init (0) static; 25 dcl abs_seg_index fixed bin; 26 dcl abs_seg_list (128) fixed bin (17) unal static; 27 dcl addr builtin; 28 dcl baseptr builtin; 29 dcl dimension builtin; 30 dcl free_sdw fixed bin (71) init (0) static options (constant); 31 dcl pmut$swap_sdw entry (ptr, ptr); 32 dcl seg_num fixed bin (15) parameter; 33 dcl syserr entry options (variable); 34 35 add: entry (seg_num); /* add to list */ 36 37 abs_seg_count = abs_seg_count + 1; 38 if abs_seg_count > dimension (abs_seg_list, 1) then call syserr (CRASH, "bce_abs_seg: Too many bce abs-segs."); 39 abs_seg_list (abs_seg_count) = seg_num; 40 return; 41 42 free: entry; /* zero abs-seg sdws */ 43 44 do abs_seg_index = 1 to abs_seg_count; 45 call pmut$swap_sdw (baseptr (abs_seg_list (abs_seg_index)), addr (free_sdw)); 46 end; 47 abs_seg_count = 0; 48 return; 49 /* BEGIN INCLUDE FILE syserr_constants.incl.pl1 ... 11/11/80 W. Olin Sibert */ 1 2 /* 85-02-12, EJ Sharpe - Added sorting class constants, removed AIM_MESSAGE, added new action code names. */ 1 3 /* 85-04-24, G. Palter - Renamed SYSERR_UNUSED_10 to SYSERR_RING1_ERROR to reflect its actual use. */ 1 4 1 5 /* This include file has an ALM version. Keep 'em in sync! */ 1 6 1 7 dcl ( 1 8 1 9 /* The following constants define the message action codes. This indicates 1 10*how a message is to be handled. */ 1 11 1 12 SYSERR_CRASH_SYSTEM init (1), 1 13 CRASH init (1), /* Crash the system, and bleat plaintively. */ 1 14 1 15 SYSERR_TERMINATE_PROCESS init (2), 1 16 TERMINATE_PROCESS init (2), /* Terminate the process, print the message, and beep. */ 1 17 1 18 SYSERR_PRINT_WITH_ALARM init (3), 1 19 BEEP init (3), /* Beep and print the message on the console. */ 1 20 1 21 SYSERR_PRINT_ON_CONSOLE init (0), 1 22 ANNOUNCE init (0), /* Just print the message on the console. */ 1 23 1 24 SYSERR_LOG_OR_PRINT init (4), 1 25 LOG init (4), /* Log the message, or print it if it can't be logged */ 1 26 1 27 SYSERR_LOG_OR_DISCARD init (5), 1 28 JUST_LOG init (5), /* Just try to log the message, and discard it if it can't be */ 1 29 1 30 1 31 /* The following constants are added to the normal severities to indicate 1 32*different sorting classes of messages. */ 1 33 1 34 SYSERR_SYSTEM_ERROR init (00), /* indicates a standard level system error */ 1 35 SYSERR_RING1_ERROR init (10), /* indicates an error detected in ring 1 (mseg_, RCP) */ 1 36 SYSERR_COVERT_CHANNEL init (20), /* indicates covert channel audit trail message */ 1 37 SYSERR_UNSUCCESSFUL_ACCESS init (30), /* indicates access denial audit trail message */ 1 38 SYSERR_SUCCESSFUL_ACCESS init (40) /* indicates access grant audit trail message */ 1 39 ) fixed bin internal static options (constant); 1 40 1 41 /* END INCLUDE FILE syserr_constants.incl.pl1 */ 49 50 51 52 /* BEGIN MESSAGE DOCUMENTATION 53* 54* Message: 55* bce_abs_seg: Too many bce abs-segs. 56* 57* S: $crash 58* 59* T: $init 60* 61* M: More per-bce pass abs-segs were encountered than fit in the abs-seg 62* array. This is a software error. 63* 64* END MESSAGE DOCUMENTATION */ 65 66 end; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 11/11/89 0807.4 bce_abs_seg.pl1 >spec>install>1112>bce_abs_seg.pl1 49 1 05/17/85 0615.7 syserr_constants.incl.pl1 >ldd>include>syserr_constants.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. CRASH 000004 constant fixed bin(17,0) initial dcl 1-7 set ref 38* abs_seg_count 000010 internal static fixed bin(17,0) initial dcl 24 set ref 37* 37 38 39 44 47* abs_seg_index 000100 automatic fixed bin(17,0) dcl 25 set ref 44* 45 45* abs_seg_list 000011 internal static fixed bin(17,0) array packed unaligned dcl 26 set ref 38 39* 45 45 addr builtin function dcl 27 ref 45 45 baseptr builtin function dcl 28 ref 45 45 dimension builtin function dcl 29 ref 38 free_sdw 000000 constant fixed bin(71,0) initial dcl 30 set ref 45 45 pmut$swap_sdw 000112 constant entry external dcl 31 ref 45 seg_num parameter fixed bin(15,0) dcl 32 ref 35 39 syserr 000114 constant entry external dcl 33 ref 38 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. ANNOUNCE internal static fixed bin(17,0) initial dcl 1-7 BEEP internal static fixed bin(17,0) initial dcl 1-7 JUST_LOG internal static fixed bin(17,0) initial dcl 1-7 LOG internal static fixed bin(17,0) initial dcl 1-7 SYSERR_COVERT_CHANNEL internal static fixed bin(17,0) initial dcl 1-7 SYSERR_CRASH_SYSTEM internal static fixed bin(17,0) initial dcl 1-7 SYSERR_LOG_OR_DISCARD internal static fixed bin(17,0) initial dcl 1-7 SYSERR_LOG_OR_PRINT internal static fixed bin(17,0) initial dcl 1-7 SYSERR_PRINT_ON_CONSOLE internal static fixed bin(17,0) initial dcl 1-7 SYSERR_PRINT_WITH_ALARM internal static fixed bin(17,0) initial dcl 1-7 SYSERR_RING1_ERROR internal static fixed bin(17,0) initial dcl 1-7 SYSERR_SUCCESSFUL_ACCESS internal static fixed bin(17,0) initial dcl 1-7 SYSERR_SYSTEM_ERROR internal static fixed bin(17,0) initial dcl 1-7 SYSERR_TERMINATE_PROCESS internal static fixed bin(17,0) initial dcl 1-7 SYSERR_UNSUCCESSFUL_ACCESS internal static fixed bin(17,0) initial dcl 1-7 TERMINATE_PROCESS internal static fixed bin(17,0) initial dcl 1-7 NAMES DECLARED BY EXPLICIT CONTEXT. add 000031 constant entry external dcl 35 bce_abs_seg 000020 constant entry external dcl 17 free 000077 constant entry external dcl 42 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 220 336 146 230 Length 524 146 116 151 52 102 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME bce_abs_seg 90 external procedure is an external procedure. STORAGE FOR INTERNAL STATIC VARIABLES. LOC IDENTIFIER BLOCK NAME 000010 abs_seg_count bce_abs_seg 000011 abs_seg_list bce_abs_seg STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME bce_abs_seg 000100 abs_seg_index bce_abs_seg THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc call_ext_out return_mac ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. pmut$swap_sdw syserr NO EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 17 000017 17 000025 35 000026 37 000036 38 000040 39 000062 40 000075 42 000076 44 000104 45 000115 46 000141 47 000143 48 000145 ----------------------------------------------------------- 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