genassym.cf revision 1.1
11.1Schris#	$NetBSD: genassym.cf,v 1.1 2001/07/28 15:08:11 chris Exp $
21.1Schris
31.1Schris# Copyright (c) 1982, 1990 The Regents of the University of California.
41.1Schris# All rights reserved.
51.1Schris#
61.1Schris# This code is derived from software contributed to Berkeley by
71.1Schris# William Jolitz.
81.1Schris#
91.1Schris# Redistribution and use in source and binary forms, with or without
101.1Schris# modification, are permitted provided that the following conditions
111.1Schris# are met:
121.1Schris# 1. Redistributions of source code must retain the above copyright
131.1Schris#    notice, this list of conditions and the following disclaimer.
141.1Schris# 2. Redistributions in binary form must reproduce the above copyright
151.1Schris#    notice, this list of conditions and the following disclaimer in the
161.1Schris#    documentation and/or other materials provided with the distribution.
171.1Schris# 3. All advertising materials mentioning features or use of this software
181.1Schris#    must display the following acknowledgement:
191.1Schris#	This product includes software developed by the University of
201.1Schris#	California, Berkeley and its contributors.
211.1Schris# 4. Neither the name of the University nor the names of its contributors
221.1Schris#    may be used to endorse or promote products derived from this software
231.1Schris#    without specific prior written permission.
241.1Schris#
251.1Schris# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
261.1Schris# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
271.1Schris# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
281.1Schris# ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
291.1Schris# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
301.1Schris# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
311.1Schris# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
321.1Schris# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
331.1Schris# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
341.1Schris# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
351.1Schris# SUCH DAMAGE.
361.1Schris
371.1Schrisinclude <sys/param.h>
381.1Schrisinclude <sys/systm.h>
391.1Schrisinclude <sys/proc.h>
401.1Schrisinclude <sys/resourcevar.h>
411.1Schrisinclude <sys/device.h>
421.1Schrisinclude <sys/user.h>
431.1Schrisinclude <sys/signal.h>
441.1Schris
451.1Schrisinclude <uvm/uvm_extern.h>
461.1Schris
471.1Schrisinclude <machine/pmap.h>
481.1Schrisinclude <machine/frame.h>
491.1Schrisinclude <machine/vmparam.h>
501.1Schrisinclude <machine/irqhandler.h>
511.1Schris
521.1Schrisdefine	VM_MIN_ADDRESS		VM_MIN_ADDRESS
531.1Schrisdefine	VM_MAXUSER_ADDRESS	VM_MAXUSER_ADDRESS
541.1Schrisdefine	VM_MAXKERN_ADDRESS	VM_MAXKERN_ADDRESS
551.1Schrisdefine	PROCESS_PAGE_TBLS_BASE	PROCESS_PAGE_TBLS_BASE
561.1Schris
571.1Schrisdefine	UPAGES			UPAGES
581.1Schrisdefine	PGSHIFT			PGSHIFT
591.1Schrisdefine	PDSHIFT			PDSHIFT
601.1Schris
611.1Schrisdefine	P_TRACED		P_TRACED
621.1Schrisdefine	P_PROFIL		P_PROFIL
631.1Schrisdefine	P_ADDR			offsetof(struct proc, p_addr)
641.1Schrisdefine	P_BACK			offsetof(struct proc, p_back)
651.1Schrisdefine	P_FORW			offsetof(struct proc, p_forw)
661.1Schrisdefine	P_PRIORITY		offsetof(struct proc, p_priority)
671.1Schrisdefine	P_STAT			offsetof(struct proc, p_stat)
681.1Schrisdefine	P_WCHAN			offsetof(struct proc, p_wchan)
691.1Schrisdefine	P_VMSPACE		offsetof(struct proc, p_vmspace)
701.1Schrisdefine	P_FLAG			offsetof(struct proc, p_flag)
711.1Schrisdefine	P_SIGLIST		offsetof(struct proc, p_sigctx) + offsetof(struct sigctx, ps_siglist)
721.1Schrisdefine	P_SIGMASK		offsetof(struct proc, p_sigctx) + offsetof(struct sigctx, ps_sigmask)
731.1Schrisdefine	P_USRPRI		offsetof(struct proc, p_usrpri)
741.1Schris
751.1Schrisdefine	SONPROC			SONPROC
761.1Schris
771.1Schrisdefine	PCB_PAGEDIR		offsetof(struct pcb, pcb_pagedir)
781.1Schrisdefine	PCB_FLAGS		offsetof(struct pcb, pcb_flags)
791.1Schrisdefine	PCB_R0			offsetof(struct pcb, pcb_r0)
801.1Schrisdefine	PCB_R1			offsetof(struct pcb, pcb_r1)
811.1Schrisdefine	PCB_R2			offsetof(struct pcb, pcb_r2)
821.1Schrisdefine	PCB_R3			offsetof(struct pcb, pcb_r3)
831.1Schrisdefine	PCB_R4			offsetof(struct pcb, pcb_r4)
841.1Schrisdefine	PCB_R5			offsetof(struct pcb, pcb_r5)
851.1Schrisdefine	PCB_R6			offsetof(struct pcb, pcb_r6)
861.1Schrisdefine	PCB_R7			offsetof(struct pcb, pcb_r7)
871.1Schrisdefine	PCB_R8			offsetof(struct pcb, pcb_r8)
881.1Schrisdefine	PCB_R9			offsetof(struct pcb, pcb_r9)
891.1Schrisdefine	PCB_R10			offsetof(struct pcb, pcb_r10)
901.1Schrisdefine	PCB_R11			offsetof(struct pcb, pcb_r11)
911.1Schrisdefine	PCB_R12			offsetof(struct pcb, pcb_r12)
921.1Schrisdefine	PCB_SP			offsetof(struct pcb, pcb_sp)
931.1Schrisdefine	PCB_LR			offsetof(struct pcb, pcb_lr)
941.1Schrisdefine	PCB_PC			offsetof(struct pcb, pcb_pc)
951.1Schrisdefine	PCB_UND_SP		offsetof(struct pcb, pcb_und_sp)
961.1Schrisdefine	PCB_ONFAULT		offsetof(struct pcb, pcb_onfault)
971.1Schris
981.1Schrisdefine	USER_SIZE		sizeof(struct user)
991.1Schris
1001.1Schrisdefine	V_TRAP			offsetof(struct uvmexp, traps)
1011.1Schrisdefine	V_INTR			offsetof(struct uvmexp, intrs)
1021.1Schrisdefine	V_SOFT			offsetof(struct uvmexp, softs)
1031.1Schris
1041.1Schrisdefine	VM_MAP			offsetof(struct vmspace, vm_map)
1051.1Schrisdefine	VM_PMAP			offsetof(struct vmspace, vm_map.pmap)
1061.1Schris
1071.1Schrisdefine	PR_BASE			offsetof(struct uprof, pr_base)
1081.1Schrisdefine	PR_SIZE			offsetof(struct uprof, pr_size)
1091.1Schrisdefine	PR_OFF			offsetof(struct uprof, pr_off)
1101.1Schrisdefine	PR_SCALE		offsetof(struct uprof, pr_scale)
1111.1Schris
1121.1Schrisdefine	IH_FUNC			offsetof(irqhandler_t, ih_func)
1131.1Schrisdefine	IH_ARG			offsetof(irqhandler_t, ih_arg)
1141.1Schrisdefine	IH_LEVEL		offsetof(irqhandler_t, ih_level)
1151.1Schrisdefine	IH_NUM			offsetof(irqhandler_t, ih_num)
1161.1Schrisdefine	IH_FLAGS		offsetof(irqhandler_t, ih_flags)
1171.1Schrisdefine	IH_MASKADDR		offsetof(irqhandler_t, ih_maskaddr)
1181.1Schrisdefine	IH_MASKBITS		offsetof(irqhandler_t, ih_maskbits)
1191.1Schrisdefine	IH_NEXT			offsetof(irqhandler_t, ih_next)
1201.1Schris
1211.1Schrisdefine	FH_FUNC			offsetof(fiqhandler_t, fh_func)
1221.1Schrisdefine	FH_MASK			offsetof(fiqhandler_t, fh_mask)
1231.1Schrisdefine	FH_R8			offsetof(fiqhandler_t, fh_r8)
1241.1Schrisdefine	FH_R9			offsetof(fiqhandler_t, fh_r9)
1251.1Schrisdefine	FH_R10			offsetof(fiqhandler_t, fh_r10)
1261.1Schrisdefine	FH_R11			offsetof(fiqhandler_t, fh_r11)
1271.1Schrisdefine	FH_R12			offsetof(fiqhandler_t, fh_r12)
1281.1Schrisdefine	FH_R13			offsetof(fiqhandler_t, fh_r13)
1291.1Schris
1301.1Schrisdefine	SIGF_HANDLER		offsetof(struct sigframe, sf_handler)
1311.1Schrisdefine	SIGF_SC			offsetof(struct sigframe, sf_sc)
1321.1Schris
1331.1Schrisdefine	SIGTRAP			SIGTRAP
1341.1Schrisdefine	SIGEMT			SIGEMT
1351.1Schris
1361.1Schrisdefine	TF_R0			offsetof(struct trapframe, tf_r0)
1371.1Schrisdefine	TF_R10			offsetof(struct trapframe, tf_r10)
1381.1Schrisdefine	TF_PC			offsetof(struct trapframe, tf_pc)
1391.1Schris
1401.1Schrisdefine	PROCSIZE		sizeof(struct proc)
1411.1Schrisdefine	TRAPFRAMESIZE		sizeof(struct trapframe)
1421.1Schris
1431.1Schrisdefine	CF_CACHE_PURGE_ID	offsetof(struct cpu_functions, cf_cache_purgeID)
1441.1Schrisdefine	CF_CONTEXT_SWITCH	offsetof(struct cpu_functions, cf_context_switch)
1451.1Schrisdefine	CF_SLEEP		offsetof(struct cpu_functions, cf_sleep)
1461.1Schris
1471.1Schrisdefine	CI_CURPRIORITY		offsetof(struct cpu_info, ci_schedstate.spc_curpriority)
148