blob: f32cd2374b328a9575c95e547d68991cda33af18 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
|
\
\ CDDL HEADER START
\
\ The contents of this file are subject to the terms of the
\ Common Development and Distribution License (the "License").
\ You may not use this file except in compliance with the License.
\
\ You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
\ or http://www.opensolaris.org/os/licensing.
\ See the License for the specific language governing permissions
\ and limitations under the License.
\
\ When distributing Covered Code, include this CDDL HEADER in each
\ file and include the License file at usr/src/OPENSOLARIS.LICENSE.
\ If applicable, add the following below this CDDL HEADER, with the
\ fields enclosed by brackets "[]" replaced with your own identifying
\ information: Portions Copyright [yyyy] [name of copyright owner]
\
\ CDDL HEADER END
\
\ Copyright 2008 Sun Microsystems, Inc. All rights reserved.
\ Use is subject to license terms.
\
\ offsets.in: input file to produce assym.h using the stabs program
\
\
\ Guidelines:
\
\ A blank line is required between structure/union/intrinsic names.
\
\ The general form is:
\
\ name size_define [shift_define]
\ [member_name [offset_define]]
\ {blank line}
\
\ If no individual member_name's are specified then NO members are processed.
\ If offset_define is not specified then the member_name is
\ converted to all caps and used instead. If the size of an item is
\ a power of two then an optional shift count may be output using
\ shift_define as the name but only if shift_define was specified.
\
\ Arrays cause stabs to automatically output the per-array-item increment
\ in addition to the base address:
\
\ foo FOO_SIZE
\ array FOO_ARRAY
\
\ results in:
\
\ #define FOO_ARRAY 0x0
\ #define FOO_ARRAY_INCR 0x4
\
\ which allows \#define's to be used to specify array items:
\
\ #define FOO_0 (FOO_ARRAY + (0 * FOO_ARRAY_INCR))
\ #define FOO_1 (FOO_ARRAY + (1 * FOO_ARRAY_INCR))
\ ...
\ #define FOO_n (FOO_ARRAY + (n * FOO_ARRAY_INCR))
\
\ There are several examples below (search for _INCR).
\
\ There is currently no manner in which to identify "anonymous"
\ structures or unions so if they are to be used in assembly code
\ they must be given names.
\
\ When specifying the offsets of nested structures/unions each nested
\ structure or union must be listed separately then use the
\ "\#define" escapes to add the offsets from the base structure/union
\ and all of the nested structures/unions together. See the many
\ examples already in this file.
#ifndef _GENASSYM
#define _GENASSYM
#endif
#include <vm/hat_sfmmu.h>
#include <sys/spitregs.h>
#include <sys/cheetahregs.h>
#include <sys/fpras_impl.h>
#include <sys/traptrace.h>
machcpu
intrstat MCPU_INTRSTAT
pil_high_start MCPU_PIL_HIGH_START
trap_trace_record TRAP_ENT_SIZE
tt_tl TRAP_ENT_TL
tt_tt TRAP_ENT_TT
tt_tpc TRAP_ENT_TPC
tt_tstate TRAP_ENT_TSTATE
tt_tick TRAP_ENT_TICK
tt_sp TRAP_ENT_SP
tt_tr TRAP_ENT_TR
tt_f1 TRAP_ENT_F1
tt_f2 TRAP_ENT_F2
tt_f3 TRAP_ENT_F3
tt_f4 TRAP_ENT_F4
hat HAT_SIZE
sfmmu_cpusran
sfmmu_tsb
sfmmu_ismblkpa
sfmmu_tteflags
sfmmu_rtteflags
sfmmu_srdp
sfmmu_region_map.h_rmap_s.hmeregion_map SFMMU_HMERMAP
sfmmu_scdp
sfmmu_cext
sfmmu_ctx_lock
sfmmu_ctxs
sf_scd SCD_SIZE
scd_sfmmup
scd_region_map.h_rmap_s.hmeregion_map SCD_HMERMAP
sfmmu_global_stat HATSTAT_SIZE
sf_pagefaults HATSTAT_PAGEFAULT
sf_uhash_searches HATSTAT_UHASH_SEARCH
sf_uhash_links HATSTAT_UHASH_LINKS
sf_khash_searches HATSTAT_KHASH_SEARCH
sf_khash_links HATSTAT_KHASH_LINKS
sf_hment SFHME_SIZE SFHME_SHIFT
hme_tte SFHME_TTE
tsbmiss TSBMISS_SIZE
ksfmmup TSBMISS_KHATID
usfmmup TSBMISS_UHATID
usrdp TSBMISS_SHARED_UHATID
tsbptr TSBMISS_TSBPTR
tsbptr4m TSBMISS_TSBPTR4M
tsbscdptr TSBMISS_TSBSCDPTR
tsbscdptr4m TSBMISS_TSBSCDPTR4M
ismblkpa TSBMISS_ISMBLKPA
khashstart TSBMISS_KHASHSTART
uhashstart TSBMISS_UHASHSTART
khashsz TSBMISS_KHASHSZ
uhashsz TSBMISS_UHASHSZ
dcache_line_mask TSBMISS_DMASK
uhat_tteflags TSBMISS_UTTEFLAGS
uhat_rtteflags TSBMISS_URTTEFLAGS
utsb_misses TSBMISS_UTSBMISS
ktsb_misses TSBMISS_KTSBMISS
uprot_traps TSBMISS_UPROTS
kprot_traps TSBMISS_KPROTS
scratch TSBMISS_SCRATCH
shmermap TSBMISS_SHMERMAP
scd_shmermap TSBMISS_SCDSHMERMAP
\#define TSB_TAGACC (0 * TSBMISS_SCRATCH_INCR)
\#define TSBMISS_HMEBP (1 * TSBMISS_SCRATCH_INCR)
\#define TSBMISS_HATID (2 * TSBMISS_SCRATCH_INCR)
kpmtsbm KPMTSBM_SIZE KPMTSBM_SHIFT
vbase KPMTSBM_VBASE
vend KPMTSBM_VEND
flags KPMTSBM_FLAGS
sz_shift KPMTSBM_SZSHIFT
kpmp_shift KPMTSBM_KPMPSHIFT
kpmp2pshft KPMTSBM_KPMP2PSHFT
kpmp_table_sz KPMTSBM_KPMPTABLESZ
kpmp_tablepa KPMTSBM_KPMPTABLEPA
msegphashpa KPMTSBM_MSEGPHASHPA
tsbptr KPMTSBM_TSBPTR
kpm_dtlb_misses KPMTSBM_DTLBMISS
kpm_tsb_misses KPMTSBM_TSBMISS
kpm_page KPMPAGE_SIZE KPMPAGE_SHIFT
kp_refcnt KPMPAGE_REFCNT
kp_refcnta KPMPAGE_REFCNTA
kp_refcntc KPMPAGE_REFCNTC
kp_refcnts KPMPAGE_REFCNTS
kpm_hlk KPMHLK_SIZE KPMHLK_SHIFT
khl_mutex KPMHLK_MUTEX
khl_lock KPMHLK_LOCK
kpm_spage KPMSPAGE_SIZE KPMSPAGE_SHIFT
kp_mapped_flag KPMSPAGE_MAPPED
kpm_shlk KPMSHLK_SIZE KPMSHLK_SHIFT
kshl_lock KPMSHLK_LOCK
memseg MEMSEG_SIZE
pages MEMSEG_PAGES
epages MEMSEG_EPAGES
pages_base MEMSEG_PAGES_BASE
pages_end MEMSEG_PAGES_END
next MEMSEG_NEXT
lnext MEMSEG_LNEXT
nextpa MEMSEG_NEXTPA
pagespa MEMSEG_PAGESPA
epagespa MEMSEG_EPAGESPA
kpm_pbase MEMSEG_KPM_PBASE
kpm_nkpmpgs MEMSEG_KPM_NKPMPGS
mseg_un
kpm_pagespa MEMSEG_KPM_PAGESPA
\#define MEMSEG_KPM_PAGES (MSEG_UN)
\#define MEMSEG_KPM_SPAGES (MSEG_UN)
page PAGE_SIZE
p_pagenum PAGE_PAGENUM
tsb_info TSBINFO_SIZE
tsb_tte TSBINFO_TTE
tsb_va TSBINFO_VADDR
tsb_pa TSBINFO_PADDR
tsb_szc TSBINFO_SZCODE
tsb_next TSBINFO_NEXTPTR
cpu_node CPU_NODE_SIZE
implementation
version
nodeid
clock_freq
tick_nsec_scale
ecache_size ECACHE_SIZE
ecache_linesize ECACHE_LINESIZE
device_id DEVICE_ID
itlb_size ITLB_SIZE
dtlb_size DTLB_SIZE
spitfire_scrub_misc_t
ec_scrub_outstanding
spitfire_private_t
sfpr_scrub_misc
sfpr_scrub_afsr
cheetah_private_t
chpr_icache_size
chpr_icache_linesize
chpr_tl1_err_data
chpr_scrub_misc
chpr_fecctl0_logout
chpr_cecc_logout
chpr_async_logout
chpr_tlb_logout
chpr_fpras_timestamp
ch_scrub_misc_t
chsm_outstanding
ch_cpu_logout_t CH_CPU_LOGOUT_SIZE
clo_flags CH_CLO_FLAGS
clo_nest_cnt CH_CLO_NEST_CNT
clo_data CH_CLO_DATA
clo_sdw_data CH_CLO_SDW_DATA
ch_err_tl1_data_t CH_ERR_TL1_DATA_SIZE
ch_err_tl1_g1
ch_err_tl1_g2
ch_err_tl1_g3
ch_err_tl1_g4
ch_err_tl1_g5
ch_err_tl1_g6
ch_err_tl1_g7
ch_err_tl1_tpc
ch_err_tl1_flags
ch_err_tl1_tmp
ch_err_tl1_logout
ch_cpu_errors_t CH_CPU_ERROR_SIZE
afsr CH_CPU_ERRORS_AFSR
afar CH_CPU_ERRORS_AFAR
shadow_afsr CH_CPU_ERRORS_SHADOW_AFSR
shadow_afar CH_CPU_ERRORS_SHADOW_AFAR
afsr_ext CH_CPU_ERRORS_AFSR_EXT
shadow_afsr_ext CH_CPU_ERRORS_SHADOW_AFSR_EXT
afar2 CH_CPU_ERRORS_AFAR2
ch_diag_data_t CH_DIAG_DATA_SIZE
chd_afar CH_CHD_AFAR
chd_afar2 CH_CHD_AFAR2
chd_afsr CH_CHD_AFSR
chd_afsr_ext CH_CHD_AFSR_EXT
chd_ec_data CH_CHD_EC_DATA
chd_l2_data CH_CHD_L2_DATA
chd_dc_data CH_CHD_DC_DATA
chd_ic_data CH_CHD_IC_DATA
ch_ec_data_t CH_EC_DATA_SIZE
ec_idx CH_EC_IDX
ec_tag CH_EC_TAG
ec_tag_ecc CH_EC_TAG_ECC
ec_data CH_EC_DATA
ch_dc_data CH_DC_DATA_SIZE
dc_idx CH_DC_IDX
dc_way CH_DC_WAY
dc_tag CH_DC_TAG
dc_utag CH_DC_UTAG
dc_sntag CH_DC_SNTAG
dc_data CH_DC_DATA
dc_pn_data_parity CH_DC_PN_DATA_PARITY
ch_ic_data CH_IC_DATA_SIZE
ic_idx CH_IC_IDX
ic_way CH_IC_WAY
ic_patag CH_IC_PATAG
ic_utag CH_IC_UTAG
ic_upper CH_IC_UPPER
ic_lower CH_IC_LOWER
ic_sntag CH_IC_SNTAG
ic_data CH_IC_DATA
fpras_chkfn FPRAS_CHKFN_SIZE FPRAS_CHKFN_SIZE_SHIFT
fpras_blk0
fpras_chkfngrp FPRAS_CHKFNGRP_SIZE FPRAS_CHKFNGRP_SIZE_SHIFT
ch_pc_data CH_PC_DATA_SIZE
pc_idx CH_PC_IDX
pc_way CH_PC_WAY
pc_status CH_PC_STATUS
pc_tag CH_PC_TAG
pc_sntag CH_PC_SNTAG
pc_data CH_PC_DATA
pn_tlb_logout PN_TLO_SIZE
tlo_info PN_TLO_INFO
tlo_addr PN_TLO_ADDR
tlo_pc PN_TLO_PC
tlo_itlb_tte PN_TLO_ITLB_TTE
tlo_dtlb_tte PN_TLO_DTLB_TTE
ch_tte_entry CH_TLO_TTE_SIZE
ch_tte_tag CH_TLO_TTE_TAG
ch_tte_data CH_TLO_TTE_DATA
ptl1_regs
ptl1_trap_regs
ptl1_g1
ptl1_g2
ptl1_g3
ptl1_g4
ptl1_g5
ptl1_g6
ptl1_g7
ptl1_tick
ptl1_dmmu_sfar
ptl1_dmmu_sfsr
ptl1_dmmu_tag_access
ptl1_immu_sfsr
ptl1_immu_tag_access
ptl1_rwindow
ptl1_softint
ptl1_pstate
ptl1_pil
ptl1_cwp
ptl1_wstate
ptl1_otherwin
ptl1_cleanwin
ptl1_cansave
ptl1_canrestore
|