Home | History | Annotate | Download | only in ml
      1 \
      2 \ Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
      3 \ Use is subject to license terms.
      4 \
      5 \ CDDL HEADER START
      6 \
      7 \ The contents of this file are subject to the terms of the
      8 \ Common Development and Distribution License (the "License").
      9 \ You may not use this file except in compliance with the License.
     10 \
     11 \ You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
     12 \ or http://www.opensolaris.org/os/licensing.
     13 \ See the License for the specific language governing permissions
     14 \ and limitations under the License.
     15 \
     16 \ When distributing Covered Code, include this CDDL HEADER in each
     17 \ file and include the License file at usr/src/OPENSOLARIS.LICENSE.
     18 \ If applicable, add the following below this CDDL HEADER, with the
     19 \ fields enclosed by brackets "[]" replaced with your own identifying
     20 \ information: Portions Copyright [yyyy] [name of copyright owner]
     21 \
     22 \ CDDL HEADER END
     23 \
     24 
     25 #pragma ident	"%Z%%M%	%I%	%E% SMI"
     26 
     27 \
     28 \ offsets.in: input file to produce assym.h using the ctfstabs program
     29 \
     30 
     31 #ifndef	_GENASSYM
     32 #define	_GENASSYM
     33 #endif
     34 
     35 #define	SIZES	1
     36 
     37 
     38 \
     39 \ XXPV	This seems to be needed to avoid a namespace collisions with
     40 \	some other header file in the list below.
     41 \
     42 
     43 #if defined(__xpv)
     44 #include <sys/hypervisor.h>
     45 #endif
     46 
     47 #include <sys/types.h>
     48 #include <sys/bootsvcs.h>
     49 #include <sys/systm.h>
     50 #include <sys/sysinfo.h>
     51 #include <sys/user.h>
     52 #include <sys/thread.h>
     53 #include <sys/proc.h>
     54 #include <sys/cpuvar.h>
     55 #include <sys/tss.h>
     56 #include <sys/privregs.h>
     57 #include <sys/segments.h>
     58 #include <sys/devops.h>
     59 #include <sys/ddi_impldefs.h>
     60 #include <vm/as.h>
     61 #include <sys/avintr.h>
     62 #include <sys/pic.h>
     63 #include <sys/rm_platter.h>
     64 #include <sys/stream.h>
     65 #include <sys/strsubr.h>
     66 #include <sys/sunddi.h>
     67 #include <sys/traptrace.h>
     68 #include <sys/ontrap.h>
     69 #include <sys/lgrp.h>
     70 #include <sys/dtrace.h>
     71 
     72 regs	REGSIZE
     73 	r_savfp	REGOFF_SAVFP
     74 	r_savpc	REGOFF_SAVPC
     75 	r_rdi	REGOFF_RDI
     76 	r_rsi	REGOFF_RSI
     77 	r_rdx	REGOFF_RDX
     78 	r_rcx	REGOFF_RCX
     79 	r_r8	REGOFF_R8
     80 	r_r9	REGOFF_R9
     81 	r_rax	REGOFF_RAX
     82 	r_rbx	REGOFF_RBX
     83 	r_rbp	REGOFF_RBP
     84 	r_r10	REGOFF_R10
     85 	r_r11	REGOFF_R11
     86 	r_r12	REGOFF_R12
     87 	r_r13	REGOFF_R13
     88 	r_r14	REGOFF_R14
     89 	r_r15	REGOFF_R15
     90 \#if DEBUG
     91 	__r_fsbase	REGOFF_FSBASE
     92 	__r_gsbase	REGOFF_GSBASE
     93 \#endif
     94 	r_ds	REGOFF_DS
     95 	r_es	REGOFF_ES
     96 	r_fs	REGOFF_FS
     97 	r_gs	REGOFF_GS
     98 	r_trapno	REGOFF_TRAPNO
     99 	r_err	REGOFF_ERR
    100 	r_rip	REGOFF_RIP
    101 	r_cs	REGOFF_CS
    102 	r_rfl	REGOFF_RFL
    103 	r_rsp	REGOFF_RSP
    104 	r_ss	REGOFF_SS
    105 
    106 \#define	REGOFF_PC	REGOFF_RIP
    107 
    108 boot_syscalls
    109 	bsvc_putchar	BOOTSVCS_PUTCHAR
    110 
    111 tss
    112 	tss_rsp0
    113 	tss_rsp1
    114 	tss_rsp2
    115 	tss_ist1
    116 	tss_ist2
    117 	tss_ist3
    118 	tss_ist4
    119 	tss_ist5
    120 	tss_ist6
    121 	tss_ist7
    122 
    123 \#define	LABEL_RBP	_CONST(_MUL(2, LABEL_VAL_INCR) + LABEL_VAL)
    124 \#define	LABEL_RBX	_CONST(_MUL(3, LABEL_VAL_INCR) + LABEL_VAL)
    125 \#define	LABEL_R12	_CONST(_MUL(4, LABEL_VAL_INCR) + LABEL_VAL)
    126 \#define	LABEL_R13	_CONST(_MUL(5, LABEL_VAL_INCR) + LABEL_VAL)
    127 \#define	LABEL_R14	_CONST(_MUL(6, LABEL_VAL_INCR) + LABEL_VAL)
    128 \#define	LABEL_R15	_CONST(_MUL(7, LABEL_VAL_INCR) + LABEL_VAL)
    129 \#define	T_RBP		_CONST(T_LABEL + LABEL_RBP)
    130 \#define	T_RBX		_CONST(T_LABEL + LABEL_RBX)
    131 \#define	T_R12		_CONST(T_LABEL + LABEL_R12)
    132 \#define	T_R13		_CONST(T_LABEL + LABEL_R13)
    133 \#define	T_R14		_CONST(T_LABEL + LABEL_R14)
    134 \#define	T_R15		_CONST(T_LABEL + LABEL_R15)
    135 
    136 _klwp
    137 	lwp_pcb.pcb_fpu		LWP_PCB_FPU
    138 	lwp_pcb.pcb_fsbase	LWP_PCB_FSBASE
    139 	lwp_pcb.pcb_gsbase	LWP_PCB_GSBASE
    140 	lwp_pcb.pcb_ds		LWP_PCB_DS
    141 	lwp_pcb.pcb_es		LWP_PCB_ES
    142 	lwp_pcb.pcb_fs		LWP_PCB_FS
    143 	lwp_pcb.pcb_gs		LWP_PCB_GS
    144 	lwp_pcb.pcb_drstat	LWP_PCB_DRSTAT
    145 	lwp_pcb.pcb_flags	PCB_FLAGS
    146 	lwp_pcb.pcb_fpu.fpu_regs LWP_FPU_REGS
    147 	lwp_pcb.pcb_fpu.fpu_flags LWP_FPU_FLAGS
    148 	lwp_pcb.pcb_rupdate	PCB_RUPDATE
    149 
    150 pcb	PCBSIZE
    151 	pcb_drstat
    152 	pcb_fsbase
    153 	pcb_gsbase
    154 	pcb_ds
    155 	pcb_es
    156 	pcb_fs
    157 	pcb_gs
    158 	pcb_fpu.fpu_regs	PCB_FPU_REGS
    159 	pcb_fpu.fpu_flags	PCB_FPU_FLAGS
    160 
    161 cpu
    162 	cpu_m.mcpu_rtmp_rsp	CPU_RTMP_RSP
    163 	cpu_m.mcpu_rtmp_r15	CPU_RTMP_R15
    164 
    165 rm_platter
    166 	rm_temp_gdt_lim		TEMPGDTOFF
    167 	rm_temp_idt_lim		TEMPIDTOFF
    168 	rm_longmode64_addr	LM64OFF
    169 
    170 #if defined(__xpv)
    171 
    172 vcpu_info
    173 	evtchn_upcall_pending	VCPU_INFO_EVTCHN_UPCALL_PENDING
    174 	evtchn_upcall_mask	VCPU_INFO_EVTCHN_UPCALL_MASK
    175 	arch.cr2		VCPU_INFO_ARCH_CR2
    176 
    177 #endif	/* __xpv */
    178