genassym.cf revision 1.24
11.24Sthorpej# $NetBSD: genassym.cf,v 1.24 2003/01/17 23:21:40 thorpej Exp $ 21.1Sscottr 31.1Sscottr# 41.1Sscottr# Copyright (c) 1990 The Regents of the University of California. 51.1Sscottr# All rights reserved. 61.1Sscottr# 71.1Sscottr# Redistribution and use in source and binary forms, with or without 81.1Sscottr# modification, are permitted provided that the following conditions 91.1Sscottr# are met: 101.1Sscottr# 1. Redistributions of source code must retain the above copyright 111.1Sscottr# notice, this list of conditions and the following disclaimer. 121.1Sscottr# 2. Redistributions in binary form must reproduce the above copyright 131.1Sscottr# notice, this list of conditions and the following disclaimer in the 141.1Sscottr# documentation and/or other materials provided with the distribution. 151.1Sscottr# 3. All advertising materials mentioning features or use of this software 161.1Sscottr# must display the following acknowledgement: 171.1Sscottr# This product includes software developed by the University of 181.1Sscottr# California, Berkeley and its contributors. 191.1Sscottr# 4. Neither the name of the University nor the names of its contributors 201.1Sscottr# may be used to endorse or promote products derived from this software 211.1Sscottr# without specific prior written permission. 221.1Sscottr# 231.1Sscottr# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 241.1Sscottr# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 251.1Sscottr# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 261.1Sscottr# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 271.1Sscottr# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 281.1Sscottr# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 291.1Sscottr# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 301.1Sscottr# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 311.1Sscottr# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 321.1Sscottr# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 331.1Sscottr# SUCH DAMAGE. 341.1Sscottr# 351.1Sscottr# @(#)genassym.c 7.8 (Berkeley) 5/7/91 361.1Sscottr# 371.1Sscottr 381.22Sjdolecekif defined(_KERNEL_OPT) 391.13Skleinkinclude "opt_compat_svr4.h" 401.21Sjdolecekendif 411.13Skleink 421.1Sscottrinclude <sys/param.h> 431.1Sscottrinclude <sys/buf.h> 441.1Sscottrinclude <sys/mbuf.h> 451.1Sscottrinclude <sys/msgbuf.h> 461.8Sscottrinclude <sys/proc.h> 471.1Sscottrinclude <sys/syscall.h> 481.1Sscottrinclude <sys/user.h> 491.9Sscottr 501.9Sscottrinclude <uvm/uvm_extern.h> 511.1Sscottr 521.13Skleinkifdef COMPAT_SVR4 531.14Skleinkinclude <compat/svr4/svr4_syscall.h> 541.13Skleinkinclude <compat/svr4/svr4_ucontext.h> 551.13Skleinkendif 561.13Skleink 571.1Sscottrinclude <machine/cpu.h> 581.1Sscottrinclude <machine/psl.h> 591.1Sscottrinclude <machine/reg.h> 601.1Sscottrinclude <machine/pte.h> 611.1Sscottr 621.8Sscottr# machine class 631.8Sscottrdefine CPUINFO_CLASS offsetof(struct cpu_model_info, class) 641.8Sscottrdefine MACH_CLASSAV MACH_CLASSAV 651.8Sscottr 661.8Sscottr# values for mmutype 671.8Sscottrdefine MMU_68851 MMU_68851 681.8Sscottrdefine MMU_68030 MMU_68030 691.8Sscottrdefine MMU_68040 MMU_68040 701.8Sscottr 711.8Sscottr# values for cputype 721.8Sscottrdefine CPU_68020 CPU_68020 731.8Sscottrdefine CPU_68030 CPU_68030 741.8Sscottrdefine CPU_68040 CPU_68040 751.8Sscottr 761.8Sscottr# values for fputype 771.8Sscottrdefine FPU_68881 FPU_68881 781.8Sscottrdefine FPU_68882 FPU_68882 791.8Sscottrdefine FPU_68040 FPU_68040 801.8Sscottr 811.8Sscottr# general constants 821.8Sscottrdefine UPAGES UPAGES 831.8Sscottrdefine USPACE USPACE 841.8Sscottrdefine P1PAGES P1PAGES 851.8Sscottrdefine NBPG NBPG 861.8Sscottrdefine NPTEPG NPTEPG 871.8Sscottrdefine PGSHIFT PGSHIFT 881.8Sscottrdefine SYSPTSIZE SYSPTSIZE 891.8Sscottrdefine USRPTSIZE USRPTSIZE 901.8Sscottrdefine USRIOSIZE USRIOSIZE 911.8Sscottrdefine USRSTACK USRSTACK 921.8Sscottr 931.24Sthorpej# lwp & proc fields and values 941.24Sthorpejdefine L_ADDR offsetof(struct lwp, l_addr) 951.24Sthorpejdefine L_BACK offsetof(struct lwp, l_back) 961.24Sthorpejdefine L_FORW offsetof(struct lwp, l_forw) 971.24Sthorpejdefine L_PRIORITY offsetof(struct lwp, l_priority) 981.24Sthorpejdefine L_STAT offsetof(struct lwp, l_stat) 991.24Sthorpejdefine L_WCHAN offsetof(struct lwp, l_wchan) 1001.24Sthorpejdefine L_PROC offsetof(struct lwp, l_proc) 1011.24Sthorpejdefine L_MD_REGS offsetof(struct lwp, l_md.md_regs) 1021.24Sthorpejdefine L_MD_FLAGS offsetof(struct lwp, l_md.md_flags) 1031.24Sthorpejdefine P_FLAG offsetof(struct proc, p_flag) 1041.24Sthorpejdefine P_NRAS offsetof(struct proc, p_nras) 1051.1Sscottrdefine P_VMSPACE offsetof(struct proc, p_vmspace) 1061.24Sthorpej 1071.24Sthorpej# lwp fields and values 1081.24Sthorpej 1091.24Sthorpejdefine LSSLEEP LSSLEEP 1101.24Sthorpejdefine LSRUN LSRUN 1111.24Sthorpejdefine LSONPROC LSONPROC 1121.1Sscottr 1131.8Sscottr# interrupt/fault metering 1141.8Sscottrdefine UVMEXP_INTRS offsetof(struct uvmexp, intrs) 1151.1Sscottr 1161.24Sthorpej#mE PSL values (should just include psl.h?) 1171.1Sscottrdefine PSL_S PSL_S 1181.1Sscottrdefine PSL_IPL7 PSL_IPL7 1191.1Sscottrdefine PSL_LOWIPL PSL_LOWIPL 1201.1Sscottrdefine PSL_HIGHIPL PSL_HIGHIPL 1211.1Sscottrdefine PSL_USER PSL_USER 1221.16Sscottrdefine PSL_TS (PSL_T | PSL_S) 1231.1Sscottrdefine SPL1 (PSL_S | PSL_IPL1) 1241.1Sscottrdefine SPL2 (PSL_S | PSL_IPL2) 1251.1Sscottrdefine SPL3 (PSL_S | PSL_IPL3) 1261.1Sscottrdefine SPL4 (PSL_S | PSL_IPL4) 1271.1Sscottrdefine SPL5 (PSL_S | PSL_IPL5) 1281.1Sscottrdefine SPL6 (PSL_S | PSL_IPL6) 1291.15Sbriggsdefine MAC68K_IPL_CLOCK MAC68K_IPL_CLOCK 1301.1Sscottr 1311.8Sscottr# magic 1321.1Sscottrdefine FC_USERD FC_USERD 1331.1Sscottrdefine FC_SUPERD FC_SUPERD 1341.1Sscottrdefine CACHE_ON CACHE_ON 1351.1Sscottrdefine CACHE_OFF CACHE_OFF 1361.1Sscottrdefine CACHE_CLR CACHE_CLR 1371.1Sscottrdefine CACHE40_ON CACHE40_ON 1381.1Sscottrdefine CACHE40_OFF CACHE40_OFF 1391.1Sscottrdefine IC_CLEAR IC_CLEAR 1401.1Sscottrdefine DC_CLEAR DC_CLEAR 1411.1Sscottr 1421.8Sscottr# pte/ste bits 1431.1Sscottrdefine PG_FRAME PG_FRAME 1441.1Sscottr 1451.8Sscottr# pcb fields 1461.1Sscottrdefine SIZEOF_PCB sizeof(struct pcb) 1471.1Sscottrdefine PCB_FLAGS offsetof(struct pcb, pcb_flags) 1481.1Sscottrdefine PCB_PS offsetof(struct pcb, pcb_ps) 1491.1Sscottrdefine PCB_USP offsetof(struct pcb, pcb_usp) 1501.1Sscottrdefine PCB_REGS offsetof(struct pcb, pcb_regs) 1511.1Sscottrdefine PCB_ONFAULT offsetof(struct pcb, pcb_onfault) 1521.1Sscottrdefine PCB_FPCTX offsetof(struct pcb, pcb_fpregs) 1531.1Sscottrdefine PCB_TRCB 5 1541.24Sthorpej 1551.24Sthorpej# frame offsets 1561.24Sthorpejdefine TF_PC offsetof(struct frame, f_pc) 1571.1Sscottr 1581.8Sscottr# exception frame offset/sizes 1591.1Sscottrdefine FR_SP offsetof(struct frame, f_regs[15]) 1601.1Sscottrdefine FR_HW offsetof(struct frame, f_sr) 1611.1Sscottrdefine FR_ADJ offsetof(struct frame, f_stackadj) 1621.8Sscottrdefine FR_SIZE sizeof(struct trapframe) 1631.20Stsutsui 1641.20Stsutsui# FP frame offsets 1651.20Stsutsuidefine FPF_REGS offsetof(struct fpframe, fpf_regs[0]) 1661.20Stsutsuidefine FPF_FPCR offsetof(struct fpframe, fpf_fpcr) 1671.1Sscottr 1681.8Sscottr# system calls 1691.8Sscottrdefine SYS_exit SYS_exit 1701.8Sscottrdefine SYS_execve SYS_execve 1711.10Sthorpejdefine SYS___sigreturn14 SYS___sigreturn14 1721.11Sthorpejdefine SYS_compat_13_sigreturn13 SYS_compat_13_sigreturn13 1731.1Sscottr 1741.8Sscottr# errno 1751.1Sscottrdefine ENOENT ENOENT 1761.1Sscottrdefine EFAULT EFAULT 1771.1Sscottrdefine ENAMETOOLONG ENAMETOOLONG 1781.13Skleink 1791.13Skleink# SVR4 binary compatibility 1801.13Skleinkifdef COMPAT_SVR4 1811.13Skleinkdefine SVR4_SIGF_HANDLER offsetof(struct svr4_sigframe, sf_handler) 1821.13Skleinkdefine SVR4_SIGF_UC offsetof(struct svr4_sigframe, sf_uc) 1831.13Skleinkdefine SVR4_SYS_context SVR4_SYS_context 1841.13Skleinkdefine SVR4_SYS_exit SVR4_SYS_exit 1851.13Skleinkdefine SVR4_SETCONTEXT SVR4_SETCONTEXT 1861.13Skleinkendif 187