1
2
3
4
5
6
7
8
9
10
11
12
13
14 NOTE
15
16
17
18
19
20
21
22 dcl runtime_symbol_info_$type entry (ptr, ptr, fixed bin (35));
23
24 dcl 1 runtime_type_info aligned based,
25 2 version char (8),
26 2 flags,
27 3 aligned bit (1) unal,
28 3 packed bit (1) unal,
29 3 size_is_encoded bit (1) unal,
30 3 has_dimensions bit (1) unal,
31 3 has_subrange_limits bit (1) unal,
32 3 pad bit (23) unal,
33 2 scale fixed bin (7) unal,
34 2 (type, base_type) fixed bin (18) unsigned unal,
35 2 (type_addr, base_type_addr) ptr,
36 2 size fixed bin (35);
37
38 dcl runtime_symbol_info_$father entry (ptr) returns (ptr);
39
40 dcl runtime_symbol_info_$brother entry (ptr) returns (ptr);
41
42 dcl runtime_symbol_info_$father_type entry (ptr) returns (ptr);
43
44 dcl runtime_symbol_info_$son entry (ptr) returns (ptr);
45
46 dcl runtime_symbol_info_$successor entry (ptr) returns (ptr);
47
48 dcl runtime_symbol_info_$name entry (ptr) returns (ptr);
49
50 dcl runtime_symbol_info_$level entry (ptr) returns (fixed bin);
51
52 dcl runtime_symbol_info_$next entry (ptr) returns (ptr);
53
54 dcl runtime_symbol_info_$address entry (ptr, ptr, fixed bin (35));
55
56 dcl 1 runtime_address_info aligned based,
57 2 version char (8),
58 2 location fixed bin (18) unsigned unal,
59 2 class fixed bin (6) unsigned unal,
60 2 use_digit fixed bin (1) unsigned unal,
61 2 units fixed bin (2) unsigned unal,
62 2 offset_is_encoded bit (1) unal,
63 2 pad bit (8) unal,
64 2 offset fixed bin (35);
65
66 dcl runtime_symbol_info_$array_dims entry (ptr) returns (fixed bin);
67
68 dcl runtime_symbol_info_$array entry (ptr, ptr, fixed bin (35));
69
70 dcl 1 runtime_array_info aligned based,
71 2 version char (8),
72 2 access_info aligned,
73 3 ndims fixed bin (6) unsigned unaligned,
74 3 use_digit fixed bin (1) unsigned unaligned,
75
76 3 array_units fixed bin (2) unsigned unaligned,
77 3 virtual_origin_is_encoded
78 bit (1) unaligned,
79 3 pad bit (26) unaligned,
80 2 virtual_origin fixed bin (35),
81 2 bounds (16)
82 aligned,
83 3 flags aligned,
84 4 lower_is_encoded
85 bit (1) unaligned,
86 4 upper_is_encoded
87 bit (1) unaligned,
88 4 multiplier_is_encoded
89 bit (1) unaligned,
90 4 pad bit (33) unaligned,
91 3 lower fixed bin (35),
92 3 upper fixed bin (35),
93 3 multiplier fixed bin (35),
94 3 subscript_type fixed bin (35),
95 3 subscript_type_addr ptr;
96
97 dcl n_dims fixed bin;
98
99 dcl runtime_symbol_info_$n_variants entry (ptr) returns (fixed bin (35));
100
101 dcl runtime_symbol_info_$variant entry (ptr, ptr, fixed bin (35));
102
103 dcl 1 runtime_variant_info aligned based,
104 2 version char (8),
105 2 number_of_variants fixed bin,
106 2 first_value_in_set fixed bin (35),
107 2 case (n_variants),
108 3 set_addr ptr,
109
110 3 brother_addr ptr;
111
112 dcl n_variants fixed bin (35);
113
114 dcl runtime_symbol_info_$subrange entry (ptr, ptr, fixed bin (35));
115
116 dcl 1 runtime_subrange_info based,
117 2 version char (8),
118 2 flags aligned,
119 3 has_subrange_limits bit (1) unal,
120 3 lower_bound_is_encoded bit (1) unal,
121 3 upper_bound_is_encoded bit (1) unal,
122 3 pad bit (33) unal,
123 2 subrange_lower_bound fixed bin (35),
124 2 subrange_upper_bound fixed bin (35);
125
126
127 dcl RUNTIME_TYPE_INFO_VERSION_1 char (8) int static options (constant) init ("RUNTYP_1");
128 dcl RUNTIME_ADDRESS_INFO_VERSION_1 char (8) int static options (constant) init ("RUNADR_1");
129 dcl RUNTIME_ARRAY_INFO_VERSION_1 char (8) int static options (constant) init ("RUNARY_1");
130 dcl RUNTIME_VARIANT_INFO_VERSION_1 char (8) int static options (constant) init ("RUNVAR_1");
131 dcl RUNTIME_SUBRANGE_INFO_VERSION_1 char (8) int static options (constant) init ("RUNSUB_1");
132
133
134