blob: f5e4233a220f28a7f9dd6ffd3d287d09838261f4 (
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
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
|
\ offsets.in: input file to produce assym.h using the stabs program
\ Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
\ Copyright 2012 Garrett D'Amore <garett@damore.org>. All rights reserved.
\ Copyright 2019 Joyent, Inc.
\
\ 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
\
\
\
\ 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 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
#define SIZES 1
#include <sys/mutex_impl.h>
#include <sys/lockstat.h>
#include <sys/ddi_isa.h>
#include <sys/ivintr.h>
#include <sys/ddi_impldefs.h>
#include <vm/hat_sfmmu.h>
#include <sys/avintr.h>
#include <sys/strsubr.h>
#include <sys/dmv.h>
#include <sys/fpu/fpu_simulator.h>
#include <sys/ontrap.h>
#include <sys/lgrp.h>
#include <sys/ddifm_impl.h>
#include <sys/brand.h>
greg_t GREGSIZE
uintptr_t LWP_ARG_SZ
proc PROCSIZE
p_link
p_next
p_child
p_sibling
p_sig
p_wcode
p_flag
p_tlist
p_as
p_lockp
p_pidp
p_fixalignment
p_utraps
p_agenttp
p_brand
p_brand_data
\#define P_UTRAP4 (UT_ILLTRAP_INSTRUCTION * CPTRSIZE)
\#define P_UTRAP7 (UT_FP_DISABLED * CPTRSIZE)
\#define P_UTRAP8 (UT_FP_EXCEPTION_IEEE_754 * CPTRSIZE)
\#define P_UTRAP10 (UT_TAG_OVERFLOW * CPTRSIZE)
\#define P_UTRAP11 (UT_DIVISION_BY_ZERO * CPTRSIZE)
\#define P_UTRAP15 (UT_MEM_ADDRESS_NOT_ALIGNED * CPTRSIZE)
\#define P_UTRAP16 (UT_PRIVILEGED_ACTION * CPTRSIZE)
pid PID_SIZE
pid_id PID_PIDID
_label_t LABEL_SIZE
val LABEL_VAL
_kthread THREAD_SIZE
t_lock
t_lock_flush
t_lockp
t_oldspl
t_pri
t_lwp
t_procp
t_link
t_state
t_mstate
t_stk T_STACK
t_swap
t_flag T_FLAGS
t_ctx
t_pcb
t_lofault
t_onfault
t_ontrap
t_nomigrate
t_cpu
t_weakbound_cpu
t_lpl
t_bound_cpu
t_intr
t_forw
t_back
t_sig
t_tid
t_pre_sys
t_preempt
t_proc_flag
t_startpc
t_sysnum
_tu._t_post_sys_ast T_POST_SYS_AST
_tu._ts._t_astflag T_ASTFLAG
_tu._ts._t_sig_check T_SIG_CHECK
_tu._ts._t_post_sys T_POST_SYS
_tu._ts._t_trapret T_TRAPRET
t_preempt_lk
t_lockstat
t_pil
t_intr_start
_tdu._tds._t_dtrace_on T_DTRACE_ON
_tdu._tds._t_dtrace_step T_DTRACE_STEP
_tdu._tds._t_dtrace_ret T_DTRACE_RET
_tdu._tds._t_dtrace_ast T_DTRACE_AST
_tdu._t_dtrace_ft T_DTRACE_FT
t_dtrace_npc
t_copyops
\#define L_PC (0 * LABEL_VAL_INCR)
\#define L_SP (1 * LABEL_VAL_INCR)
\#define T_PC (T_PCB + L_PC)
\#define T_SP (T_PCB + L_SP)
sysent SYSENT_SIZE SYSENT_SHIFT
sy_callc
sy_flags
as AS_SIZE
a_hat
a_userlimit
hmehash_bucket HMEBUCK_SIZE
hmeblkp HMEBUCK_HBLK
hmeh_nextpa HMEBUCK_NEXTPA
hmeh_listlock HMEBUCK_LOCK
tte_t TTE_SIZE
ll TTE_LL
ism_blk ISMBLK_SIZE
iblk_maps IBLK_MAPS
iblk_next IBLK_NEXT
iblk_nextpa IBLK_NEXTPA
ism_map_t ISM_MAP_SZ
imap_seg IMAP_SEG
imap_vb_shift IMAP_VB_SHIFT
imap_rid IMAP_RID
imap_hatflags IMAP_HATFLAGS
imap_sz_mask IMAP_SZ_MASK
imap_ismhat IMAP_ISMHAT
tsbe TSBE_SIZE
tte_tag TSBE_TAG
tte_data TSBE_TTE
tsb_tag TSBTAG_SIZE
tagints.inthi TSBTAG_INTHI
tagints.intlo TSBTAG_INTLO
hme_blk HMEBLK_SIZE
hblk_next HMEBLK_NEXT
hblk_tag HMEBLK_TAG
hblk_misc HMEBLK_MISC
hblk_hme HMEBLK_HME1
hblk_nextpa HMEBLK_NEXTPA
mmu_ctx MMU_CTX_SIZE
mmu_gnum MMU_CTX_GNUM
mmu_cnum MMU_CTX_CNUM
mmu_nctxs MMU_CTX_NCTXS
sfmmu_ctx SFMMU_MMU_CTX_SIZE SFMMU_MMU_CTX_SHIFT
gnum SFMMU_MMU_GC_NUM
user USIZEBYTES
u_comm
u_signal
_klwp LWP_SIZE
lwp_thread
lwp_regs
lwp_fpu
lwp_arg
lwp_cursig
lwp_ru.sysc LWP_RU_SYSC
lwp_state
lwp_mstate.ms_start LWP_MS_START
lwp_mstate.ms_prev LWP_MS_PREV
lwp_mstate.ms_state_start LWP_STATE_START
lwp_mstate.ms_acct LWP_MS_ACCT
lwp_pcb.pcb_flags PCB_FLAGS
lwp_pcb.pcb_trap0addr PCB_TRAP0
lwp_pcb.pcb_step PCB_STEP
lwp_pcb.pcb_tracepc PCB_TRACEPC
mstate MSTATE_SIZE
ms_start
ms_prev
ms_term
ms_state_start
ms_acct
\#define LWP_ACCT_USER (LWP_MS_ACCT + (LMS_USER * LWP_MS_ACCT_INCR))
\#define LWP_ACCT_SYSTEM (LWP_MS_ACCT + (LMS_SYSTEM * LWP_MS_ACCT_INCR))
rwindow32 RWIN32SIZE RWIN32SHIFT
rw_local RW32_LOCAL
rw_in RW32_IN
rwindow64 RWIN64SIZE RWIN64SHIFT
rw_local RW64_LOCAL
rw_in RW64_IN
machpcb MPCBSIZE
mpcb_regs
mpcb_wbuf
mpcb_spbuf
mpcb_wbcnt
mpcb_rwin
mpcb_rsp
mpcb_flags
mpcb_thread
mpcb_wstate
mpcb_pa MPCB_PA
mpcb_wbuf_pa
\#define MPCB_RWIN0 (MPCB_RWIN + (0 * MPCB_RWIN_INCR))
\#define MPCB_RWIN1 (MPCB_RWIN + (1 * MPCB_RWIN_INCR))
\#define MPCB_RSP0 (MPCB_RSP + (0 * MPCB_RSP_INCR))
\#define MPCB_RSP1 (MPCB_RSP + (1 * MPCB_RSP_INCR))
kfpu_t KFPUSIZE
fpu_fr.fpu_regs FPU_REGS
fpu_fsr
fpu_fprs
fpu_q
fpu_qcnt
fpu_en
\#define FPU_GSR KFPUSIZE
regs REGSIZE
r_tstate TSTATE_OFF
r_g1 G1_OFF
r_g2 G2_OFF
r_g3 G3_OFF
r_g4 G4_OFF
r_g5 G5_OFF
r_g6 G6_OFF
r_g7 G7_OFF
r_o0 O0_OFF
r_o1 O1_OFF
r_o2 O2_OFF
r_o3 O3_OFF
r_o4 O4_OFF
r_o5 O5_OFF
r_o6 O6_OFF
r_o7 O7_OFF
r_pc PC_OFF
r_npc NPC_OFF
r_y Y_OFF
\ XXX - doesn't preserve case up above
\#define nPC_OFF NPC_OFF
autovec AUTOVECSIZE
av_vector
av_intarg
cpu CPUSIZE
cpu_id
cpu_flags
cpu_thread
cpu_thread_lock
cpu_kprunrun
cpu_lwp
cpu_fpowner
cpu_idle_thread
cpu_intr_thread
cpu_intr_actv
cpu_base_spl
cpu_intr_stack
cpu_stats.sys.cpumigrate CPU_STATS_SYS_CPUMIGRATE
cpu_stats.sys.intr CPU_STATS_SYS_INTR
cpu_stats.sys.intrunpin CPU_STATS_SYS_INTRUNPIN
cpu_stats.sys.intrblk CPU_STATS_SYS_INTRBLK
cpu_stats.sys.syscall CPU_STATS_SYS_SYSCALL
cpu_profile_pc
cpu_profile_upc
cpu_profile_pil
cpu_ftrace.ftd_state CPU_FTRACE_STATE
cpu_mstate
cpu_intracct
cpu_cpcprofile_pc
cpu_cpcprofile_upc
cpu_m CPU_MCPU
cpu_m.divisor CPU_DIVISOR
cpu_m.intrstat CPU_INTRSTAT
cpu_m.pil_high_start CPU_PIL_HIGH_START
cpu_m.intr_tail INTR_TAIL
cpu_m.intr_head INTR_HEAD
cpu_m.tl1_hdlr CPU_TL1_HDLR
cpu_m.intrcnt CPU_INTRCNT
cpu_m.tmp1 CPU_TMP1
cpu_m.tmp2 CPU_TMP2
cpu_m.tmp3 CPU_TMP3
cpu_m.tmp4 CPU_TMP4
cpu_m.ofd CPU_OFD
cpu_m.lfd CPU_LFD
cpu_m.otd CPU_OTD
cpu_m.mpcb CPU_MPCB
cpu_m.cpu_private CPU_PRIVATE
cpu_m.cpu_mmu_idx CPU_MMU_IDX
cpu_m.cpu_mmu_ctxp CPU_MMU_CTXP
cpu_m.ptl1_state CPU_PTL1
cpu_core_t CPU_CORE_SIZE CPU_CORE_SHIFT
cpuc_dtrace_flags
cpuc_dtrace_illval
cpuset_t CPUSET_SIZE
ptl1_state PTL1_STATE_SIZE
ptl1_regs
ptl1_entry_count
ptl1_stktop
ptl1_trapregs
ptl1_tl
ptl1_tt
ptl1_tstate
ptl1_tpc
ptl1_tnpc
lgrp_ld LGRP_LD_SIZE
lpl_loadavg
lpl_ncpu
lpl_lgrpid
intr_vec IV_SIZE
iv_inum
iv_pil
iv_flags
iv_pad
iv_handler
iv_arg1
iv_arg2
iv_payload_buf
iv_vec_next
iv_pil_next
dmv_disp DMV_DISP_SIZE DMV_DISP_SHIFT
dmv_func
dmv_arg
spin_mutex SM_SIZE
m_spinlock
i_ndi_err NDI_ERR_SIZE
err_ena
err_status
err_ontrap
ddi_acc_impl DDI_ACC_IMPL_SIZE
ahi_common
ahi_get8
ahi_get16
ahi_get32
ahi_get64
ahi_put8
ahi_put16
ahi_put32
ahi_put64
ahi_rep_get8
ahi_rep_get16
ahi_rep_get32
ahi_rep_get64
ahi_rep_put8
ahi_rep_put16
ahi_rep_put32
ahi_rep_put64
ahi_fault_check
ahi_fault
ahi_err
stdata STDATA_SIZE
sd_lock
queue Q_SIZE
q_flag
q_next
q_stream
q_syncq
q_qinfo
qinit QI_SIZE
qi_putp
syncq SQ_SIZE
sq_flags
sq_count
sq_lock
sq_wait
sq_exitwait
bus_ops BUS_OPS_SIZE
bus_dma_allochdl OPS_ALLOCHDL
bus_dma_freehdl OPS_FREEHDL
bus_dma_bindhdl OPS_BINDHDL
bus_dma_unbindhdl OPS_UNBINDHDL
bus_dma_flush OPS_FLUSH
bus_dma_win OPS_WIN
bus_dma_ctl OPS_MCTL
bus_ctl OPS_CTL
dev_ops DEV_OPS_SIZE
devo_bus_ops DEVI_BUS_OPS
dev_info DEVI_SIZE
devi_ops DEVI_DEV_OPS
devi_bus_dma_win
devi_bus_dma_allochdl
devi_bus_dma_freehdl
devi_bus_dma_bindhdl
devi_bus_dma_unbindhdl
devi_bus_dma_flush
devi_bus_dma_unbindfunc
devi_bus_ctl
devi_bus_dma_ctl
kstat_io
wtime KSTAT_IO_WTIME
wlentime KSTAT_IO_WLENTIME
wlastupdate KSTAT_IO_WLASTUPDATE
rtime KSTAT_IO_RTIME
rlentime KSTAT_IO_RLENTIME
rlastupdate KSTAT_IO_RLASTUPDATE
wcnt KSTAT_IO_WCNT
rcnt KSTAT_IO_RCNT
ddi_dma_impl
dmai_rflags DMA_HANDLE_RFLAGS
dmai_rdip DMA_HANDLE_RDIP
on_trap_data
ot_prot
ot_trap
ot_trampoline
ot_jmpbuf
ot_prev
ot_handle
ot_pad1
fpustat_kstat FPUSTAT_KSTAT_SIZE
fpu_unfinished_traps.value FPUSTAT_UNFIN_KSTAT
fpuinfo_kstat FPUINFO_KSTAT_SIZE
fpu_sim_fitos.value FPUINFO_FITOS_KSTAT
mod_stub_info MODS_SIZE
mods_func_adr MODS_INSTFCN
mods_errfcn MODS_RETFCN
mods_flag MODS_FLAG
copyops
cp_copyin
cp_xcopyin
cp_copyout
cp_xcopyout
cp_copyinstr
cp_copyoutstr
cp_fuword8
cp_fuword16
cp_fuword32
cp_fuword64
cp_suword8
cp_suword16
cp_suword32
cp_suword64
cp_physio
brand BRAND_SIZE
b_machops
brand_proc_data_t
spd_handler
|