11.24Smaxv#	$NetBSD: genassym.cf,v 1.24 2018/07/15 05:16:43 maxv Exp $
21.1Smatt
31.1Smatt#
41.1Smatt# Copyright (C) 1995, 1996 Wolfgang Solfrank.
51.1Smatt# Copyright (C) 1995, 1996 TooLs GmbH.
61.1Smatt# All rights reserved.
71.1Smatt#
81.1Smatt# Redistribution and use in source and binary forms, with or without
91.1Smatt# modification, are permitted provided that the following conditions
101.1Smatt# are met:
111.1Smatt# 1. Redistributions of source code must retain the above copyright
121.1Smatt#    notice, this list of conditions and the following disclaimer.
131.1Smatt# 2. Redistributions in binary form must reproduce the above copyright
141.1Smatt#    notice, this list of conditions and the following disclaimer in the
151.1Smatt#    documentation and/or other materials provided with the distribution.
161.1Smatt# 3. All advertising materials mentioning features or use of this software
171.1Smatt#    must display the following acknowledgement:
181.1Smatt#	This product includes software developed by TooLs GmbH.
191.1Smatt# 4. The name of TooLs GmbH may not be used to endorse or promote products
201.1Smatt#    derived from this software without specific prior written permission.
211.1Smatt#
221.1Smatt# THIS SOFTWARE IS PROVIDED BY TOOLS GMBH ``AS IS'' AND ANY EXPRESS OR
231.1Smatt# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
241.1Smatt# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
251.1Smatt# IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
261.1Smatt# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
271.1Smatt# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
281.1Smatt# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
291.1Smatt# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
301.1Smatt# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
311.1Smatt# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
321.1Smatt#
331.1Smatt
341.1Smattinclude <sys/param.h>
351.18Smattinclude <sys/bitops.h>
361.1Smatt
371.1Smattinclude <machine/pmap.h>
381.1Smatt
391.18Smattdefine	FRAME_DEAR	offsetof(struct ktrapframe, ktf_tf.tf_dear)
401.18Smattdefine	FRAME_ESR	offsetof(struct ktrapframe, ktf_tf.tf_esr)
411.18Smattdefine	FRAME_PID	offsetof(struct ktrapframe, ktf_tf.tf_pid)
421.1Smatt
431.1Smattdefine	PM_CTX		offsetof(struct pmap, pm_ctx)
441.23Smattdefine	KERNEL_PID	KERNEL_PID
451.1Smatt
461.1Smattdefine	CI_INTSTK	offsetof(struct cpu_info, ci_intstk)
471.22Smattdefine	CI_TEMPSAVE	offsetof(struct cpu_info, ci_savearea[CI_SAVETEMP])
481.22Smattdefine	CI_DDBSAVE	offsetof(struct cpu_info, ci_savearea[CI_SAVEDDB])
491.22Smattdefine	CI_TLBMISSSAVE	offsetof(struct cpu_info, ci_savearea[CI_SAVEMMU])
501.1Smatt
511.3Smattdefine	CPUSAVE_R28	CPUSAVE_R28*sizeof(register_t)
521.3Smattdefine	CPUSAVE_R29	CPUSAVE_R29*sizeof(register_t)
531.3Smattdefine	CPUSAVE_R30	CPUSAVE_R30*sizeof(register_t)
541.3Smattdefine	CPUSAVE_R31	CPUSAVE_R31*sizeof(register_t)
551.18Smattdefine	CPUSAVE_DEAR	CPUSAVE_DEAR*sizeof(register_t)
561.18Smattdefine	CPUSAVE_ESR	CPUSAVE_ESR*sizeof(register_t)
571.3Smattdefine	CPUSAVE_SRR0	CPUSAVE_SRR0*sizeof(register_t)
581.3Smattdefine	CPUSAVE_SRR1	CPUSAVE_SRR1*sizeof(register_t)
59