4 \ The contents of this file are subject to the terms of the
5 \ Common Development and Distribution License (the "License").
6 \ You may not use this file except in compliance with the License.
8 \ You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 \ or http://www.opensolaris.org/os/licensing.
10 \ See the License for the specific language governing permissions
11 \ and limitations under the License.
13 \ When distributing Covered Code, include this CDDL HEADER in each
14 \ file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 \ If applicable, add the following below this CDDL HEADER, with the
16 \ fields enclosed by brackets "[]" replaced with your own identifying
17 \ information: Portions Copyright [yyyy] [name of copyright owner]
21 \ Copyright 2008 Sun Microsystems, Inc. All rights reserved.
22 \ Use is subject to license terms.
24 \ offsets.in: input file to produce assym.h using the stabs program
29 \ A blank line is required between structure/union/intrinsic names.
31 \ The general form is:
33 \ name size_define [shift_define]
34 \ [member_name [offset_define]]
37 \ If no individual member_name's are specified then NO members are processed.
38 \ If offset_define is not specified then the member_name is
39 \ converted to all caps and used instead. If the size of an item is
40 \ a power of two then an optional shift count may be output using
41 \ shift_define as the name but only if shift_define was specified.
43 \ Arrays cause stabs to automatically output the per-array-item increment
44 \ in addition to the base address:
51 \ #define FOO_ARRAY 0x0
52 \ #define FOO_ARRAY_INCR 0x4
54 \ which allows \#define's to be used to specify array items:
56 \ #define FOO_0 (FOO_ARRAY + (0 * FOO_ARRAY_INCR))
57 \ #define FOO_1 (FOO_ARRAY + (1 * FOO_ARRAY_INCR))
59 \ #define FOO_n (FOO_ARRAY + (n * FOO_ARRAY_INCR))
61 \ There are several examples below (search for _INCR).
63 \ There is currently no manner in which to identify "anonymous"
64 \ structures or unions so if they are to be used in assembly code
65 \ they must be given names.
67 \ When specifying the offsets of nested structures/unions each nested
68 \ structure or union must be listed separately then use the
69 \ "\#define" escapes to add the offsets from the base structure/union
70 \ and all of the nested structures/unions together. See the many
71 \ examples already in this file.
77 #include <vm/hat_sfmmu.h>
78 #include <sys/spitregs.h>
79 #include <sys/cheetahregs.h>
80 #include <sys/fpras_impl.h>
81 #include <sys/traptrace.h>
84 intrstat MCPU_INTRSTAT
85 pil_high_start MCPU_PIL_HIGH_START
87 trap_trace_record TRAP_ENT_SIZE
91 tt_tstate TRAP_ENT_TSTATE
107 sfmmu_region_map.h_rmap_s.hmeregion_map SFMMU_HMERMAP
115 scd_region_map.h_rmap_s.hmeregion_map SCD_HMERMAP
117 sfmmu_global_stat HATSTAT_SIZE
118 sf_pagefaults HATSTAT_PAGEFAULT
119 sf_uhash_searches HATSTAT_UHASH_SEARCH
120 sf_uhash_links HATSTAT_UHASH_LINKS
121 sf_khash_searches HATSTAT_KHASH_SEARCH
122 sf_khash_links HATSTAT_KHASH_LINKS
124 sf_hment SFHME_SIZE SFHME_SHIFT
128 ksfmmup TSBMISS_KHATID
129 usfmmup TSBMISS_UHATID
130 usrdp TSBMISS_SHARED_UHATID
131 tsbptr TSBMISS_TSBPTR
132 tsbptr4m TSBMISS_TSBPTR4M
133 tsbscdptr TSBMISS_TSBSCDPTR
134 tsbscdptr4m TSBMISS_TSBSCDPTR4M
135 ismblkpa TSBMISS_ISMBLKPA
136 khashstart TSBMISS_KHASHSTART
137 uhashstart TSBMISS_UHASHSTART
138 khashsz TSBMISS_KHASHSZ
139 uhashsz TSBMISS_UHASHSZ
140 dcache_line_mask TSBMISS_DMASK
141 uhat_tteflags TSBMISS_UTTEFLAGS
142 uhat_rtteflags TSBMISS_URTTEFLAGS
143 utsb_misses TSBMISS_UTSBMISS
144 ktsb_misses TSBMISS_KTSBMISS
145 uprot_traps TSBMISS_UPROTS
146 kprot_traps TSBMISS_KPROTS
147 scratch TSBMISS_SCRATCH
148 shmermap TSBMISS_SHMERMAP
149 scd_shmermap TSBMISS_SCDSHMERMAP
151 \#define TSB_TAGACC (0 * TSBMISS_SCRATCH_INCR)
152 \#define TSBMISS_HMEBP (1 * TSBMISS_SCRATCH_INCR)
153 \#define TSBMISS_HATID (2 * TSBMISS_SCRATCH_INCR)
155 kpmtsbm KPMTSBM_SIZE KPMTSBM_SHIFT
159 sz_shift KPMTSBM_SZSHIFT
160 kpmp_shift KPMTSBM_KPMPSHIFT
161 kpmp2pshft KPMTSBM_KPMP2PSHFT
162 kpmp_table_sz KPMTSBM_KPMPTABLESZ
163 kpmp_tablepa KPMTSBM_KPMPTABLEPA
164 msegphashpa KPMTSBM_MSEGPHASHPA
165 tsbptr KPMTSBM_TSBPTR
166 kpm_dtlb_misses KPMTSBM_DTLBMISS
167 kpm_tsb_misses KPMTSBM_TSBMISS
169 kpm_page KPMPAGE_SIZE KPMPAGE_SHIFT
170 kp_refcnt KPMPAGE_REFCNT
171 kp_refcnta KPMPAGE_REFCNTA
172 kp_refcntc KPMPAGE_REFCNTC
173 kp_refcnts KPMPAGE_REFCNTS
175 kpm_hlk KPMHLK_SIZE KPMHLK_SHIFT
176 khl_mutex KPMHLK_MUTEX
179 kpm_spage KPMSPAGE_SIZE KPMSPAGE_SHIFT
180 kp_mapped_flag KPMSPAGE_MAPPED
182 kpm_shlk KPMSHLK_SIZE KPMSHLK_SHIFT
183 kshl_lock KPMSHLK_LOCK
188 pages_base MEMSEG_PAGES_BASE
189 pages_end MEMSEG_PAGES_END
193 pagespa MEMSEG_PAGESPA
194 epagespa MEMSEG_EPAGESPA
195 kpm_pbase MEMSEG_KPM_PBASE
196 kpm_nkpmpgs MEMSEG_KPM_NKPMPGS
198 kpm_pagespa MEMSEG_KPM_PAGESPA
200 \#define MEMSEG_KPM_PAGES (MSEG_UN)
201 \#define MEMSEG_KPM_SPAGES (MSEG_UN)
204 p_pagenum PAGE_PAGENUM
206 tsb_info TSBINFO_SIZE
210 tsb_szc TSBINFO_SZCODE
211 tsb_next TSBINFO_NEXTPTR
213 cpu_node CPU_NODE_SIZE
219 ecache_size ECACHE_SIZE
220 ecache_linesize ECACHE_LINESIZE
225 spitfire_scrub_misc_t
246 ch_cpu_logout_t CH_CPU_LOGOUT_SIZE
247 clo_flags CH_CLO_FLAGS
248 clo_nest_cnt CH_CLO_NEST_CNT
250 clo_sdw_data CH_CLO_SDW_DATA
252 ch_err_tl1_data_t CH_ERR_TL1_DATA_SIZE
265 ch_cpu_errors_t CH_CPU_ERROR_SIZE
266 afsr CH_CPU_ERRORS_AFSR
267 afar CH_CPU_ERRORS_AFAR
268 shadow_afsr CH_CPU_ERRORS_SHADOW_AFSR
269 shadow_afar CH_CPU_ERRORS_SHADOW_AFAR
270 afsr_ext CH_CPU_ERRORS_AFSR_EXT
271 shadow_afsr_ext CH_CPU_ERRORS_SHADOW_AFSR_EXT
272 afar2 CH_CPU_ERRORS_AFAR2
274 ch_diag_data_t CH_DIAG_DATA_SIZE
276 chd_afar2 CH_CHD_AFAR2
278 chd_afsr_ext CH_CHD_AFSR_EXT
279 chd_ec_data CH_CHD_EC_DATA
280 chd_l2_data CH_CHD_L2_DATA
281 chd_dc_data CH_CHD_DC_DATA
282 chd_ic_data CH_CHD_IC_DATA
284 ch_ec_data_t CH_EC_DATA_SIZE
287 ec_tag_ecc CH_EC_TAG_ECC
290 ch_dc_data CH_DC_DATA_SIZE
297 dc_pn_data_parity CH_DC_PN_DATA_PARITY
299 ch_ic_data CH_IC_DATA_SIZE
309 fpras_chkfn FPRAS_CHKFN_SIZE FPRAS_CHKFN_SIZE_SHIFT
312 fpras_chkfngrp FPRAS_CHKFNGRP_SIZE FPRAS_CHKFNGRP_SIZE_SHIFT
314 ch_pc_data CH_PC_DATA_SIZE
317 pc_status CH_PC_STATUS
322 pn_tlb_logout PN_TLO_SIZE
326 tlo_itlb_tte PN_TLO_ITLB_TTE
327 tlo_dtlb_tte PN_TLO_DTLB_TTE
329 ch_tte_entry CH_TLO_TTE_SIZE
330 ch_tte_tag CH_TLO_TTE_TAG
331 ch_tte_data CH_TLO_TTE_DATA