[BACK]Return to genassym.cf CVS log [TXT][DIR] Up to [local] / sys / arch / m88k / m88k

Annotation of sys/arch/m88k/m88k/genassym.cf, Revision 1.1

1.1     ! nbrk        1: #      $OpenBSD: genassym.cf,v 1.8 2007/05/12 19:59:52 miod Exp $
        !             2: #
        !             3: # Copyright (c) 1982, 1990 The Regents of the University of California.
        !             4: # All rights reserved.
        !             5: #
        !             6: # Redistribution and use in source and binary forms, with or without
        !             7: # modification, are permitted provided that the following conditions
        !             8: # are met:
        !             9: # 1. Redistributions of source code must retain the above copyright
        !            10: #    notice, this list of conditions and the following disclaimer.
        !            11: # 2. Redistributions in binary form must reproduce the above copyright
        !            12: #    notice, this list of conditions and the following disclaimer in the
        !            13: #    documentation and/or other materials provided with the distribution.
        !            14: # 3. Neither the name of the University nor the names of its contributors
        !            15: #    may be used to endorse or promote products derived from this software
        !            16: #    without specific prior written permission.
        !            17: #
        !            18: # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
        !            19: # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
        !            20: # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
        !            21: # ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
        !            22: # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
        !            23: # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
        !            24: # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
        !            25: # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
        !            26: # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
        !            27: # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
        !            28: # SUCH DAMAGE.
        !            29: #
        !            30: #      @(#)genassym.c  7.8 (Berkeley) 5/7/91
        !            31: #      $Id: genassym.cf,v 1.8 2007/05/12 19:59:52 miod Exp $
        !            32: #
        !            33:
        !            34: include <sys/param.h>
        !            35: include <sys/buf.h>
        !            36: include <sys/time.h>
        !            37: include <sys/proc.h>
        !            38: include <sys/mbuf.h>
        !            39: include <sys/msgbuf.h>
        !            40:
        !            41: include <machine/cpu.h>
        !            42: include <machine/mutex.h>
        !            43: include <machine/trap.h>
        !            44: include <machine/psl.h>
        !            45: include <machine/vmparam.h>
        !            46:
        !            47: include <sys/syscall.h>
        !            48: include <sys/user.h>
        !            49:
        !            50: # proc fields and values
        !            51: struct proc
        !            52: member p_forw
        !            53: member p_back
        !            54: member p_addr
        !            55: member p_stat
        !            56: member p_wchan
        !            57: member p_cpu
        !            58: member P_ASTPENDING    p_md.md_astpending
        !            59:
        !            60: export SRUN
        !            61: export SONPROC
        !            62:
        !            63: # cpu fields
        !            64: struct cpu_info
        !            65: member ci_curproc
        !            66: member ci_curpcb
        !            67: member ci_primary
        !            68: member ci_pfsr_i0
        !            69: member ci_pfsr_i1
        !            70: member ci_pfsr_d0
        !            71: member ci_pfsr_d1
        !            72: member ci_idle_pcb
        !            73: member ci_want_resched
        !            74:
        !            75: # general constants
        !            76: export UPAGES
        !            77: # We export USPACE under another name to allow C code to include "assym.h".
        !            78: #export        USPACE
        !            79: define USIZE                   USPACE
        !            80:
        !            81: # pcb fields
        !            82: struct pcb
        !            83: member pcb_onfault
        !            84: member PCB_USER_STATE          user_state
        !            85:
        !            86: # system calls
        !            87: export SYS_exit
        !            88: export SYS_sigreturn
        !            89:
        !            90: # trapframe element indexes
        !            91: define EF_R0           offsetof(struct trapframe, tf_r[0]) / sizeof(int)
        !            92: define EF_FPSR         offsetof(struct trapframe, tf_fpsr) / sizeof(int)
        !            93: define EF_FPCR         offsetof(struct trapframe, tf_fpcr) / sizeof(int)
        !            94: define EF_EPSR         offsetof(struct trapframe, tf_epsr) / sizeof(int)
        !            95: define EF_SXIP         offsetof(struct trapframe, tf_sxip) / sizeof(int)
        !            96: define EF_SFIP         offsetof(struct trapframe, tf_sfip) / sizeof(int)
        !            97: define EF_SNIP         offsetof(struct trapframe, tf_snip) / sizeof(int)
        !            98: define EF_SSBR         offsetof(struct trapframe, tf_ssbr) / sizeof(int)
        !            99: define EF_DMT0         offsetof(struct trapframe, tf_dmt0) / sizeof(int)
        !           100: define EF_DMD0         offsetof(struct trapframe, tf_dmd0) / sizeof(int)
        !           101: define EF_DMA0         offsetof(struct trapframe, tf_dma0) / sizeof(int)
        !           102: define EF_DMT1         offsetof(struct trapframe, tf_dmt1) / sizeof(int)
        !           103: define EF_DMD1         offsetof(struct trapframe, tf_dmd1) / sizeof(int)
        !           104: define EF_DMA1         offsetof(struct trapframe, tf_dma1) / sizeof(int)
        !           105: define EF_DMT2         offsetof(struct trapframe, tf_dmt2) / sizeof(int)
        !           106: define EF_DMD2         offsetof(struct trapframe, tf_dmd2) / sizeof(int)
        !           107: define EF_DMA2         offsetof(struct trapframe, tf_dma2) / sizeof(int)
        !           108: define EF_FPECR        offsetof(struct trapframe, tf_fpecr) / sizeof(int)
        !           109: define EF_FPHS1        offsetof(struct trapframe, tf_fphs1) / sizeof(int)
        !           110: define EF_FPLS1        offsetof(struct trapframe, tf_fpls1) / sizeof(int)
        !           111: define EF_FPHS2        offsetof(struct trapframe, tf_fphs2) / sizeof(int)
        !           112: define EF_FPLS2        offsetof(struct trapframe, tf_fpls2) / sizeof(int)
        !           113: define EF_FPPT         offsetof(struct trapframe, tf_fppt) / sizeof(int)
        !           114: define EF_FPRH         offsetof(struct trapframe, tf_fprh) / sizeof(int)
        !           115: define EF_FPRL         offsetof(struct trapframe, tf_fprl) / sizeof(int)
        !           116: define EF_FPIT         offsetof(struct trapframe, tf_fpit) / sizeof(int)
        !           117: define EF_VECTOR       offsetof(struct trapframe, tf_vector) / sizeof(int)
        !           118: define EF_MASK         offsetof(struct trapframe, tf_mask) / sizeof(int)
        !           119: define EF_MODE         offsetof(struct trapframe, tf_mode) / sizeof(int)
        !           120: define EF_RET          offsetof(struct trapframe, tf_scratch1) / sizeof(int)
        !           121: define EF_IPFSR        offsetof(struct trapframe, tf_ipfsr) / sizeof(int)
        !           122: define EF_DPFSR        offsetof(struct trapframe, tf_dpfsr) / sizeof(int)
        !           123: define EF_CPU          offsetof(struct trapframe, tf_cpu) / sizeof(int)
        !           124:
        !           125: # m88110 trapframe element indexes
        !           126: define EF_EXIP         offsetof(struct trapframe, tf_exip) / sizeof(int)
        !           127: define EF_ENIP         offsetof(struct trapframe, tf_enip) / sizeof(int)
        !           128: define EF_DSR          offsetof(struct trapframe, tf_dsr) / sizeof(int)
        !           129: define EF_DLAR         offsetof(struct trapframe, tf_dlar) / sizeof(int)
        !           130: define EF_DPAR         offsetof(struct trapframe, tf_dpar) / sizeof(int)
        !           131: define EF_ISR          offsetof(struct trapframe, tf_isr) / sizeof(int)
        !           132: define EF_ILAR         offsetof(struct trapframe, tf_ilar) / sizeof(int)
        !           133: define EF_IPAR         offsetof(struct trapframe, tf_ipar) / sizeof(int)
        !           134: define EF_ISAP         offsetof(struct trapframe, tf_isap) / sizeof(int)
        !           135: define EF_DSAP         offsetof(struct trapframe, tf_dsap) / sizeof(int)
        !           136: define EF_IUAP         offsetof(struct trapframe, tf_iuap) / sizeof(int)
        !           137: define EF_DUAP         offsetof(struct trapframe, tf_duap) / sizeof(int)
        !           138:
        !           139: define SIZEOF_EF       sizeof(struct trapframe)
        !           140:
        !           141: # more (machine-dependent) pcb fields
        !           142: struct m88100_pcb
        !           143: member pcb_pc
        !           144: member pcb_r14
        !           145: member pcb_r15
        !           146: member pcb_r16
        !           147: member pcb_r17
        !           148: member pcb_r18
        !           149: member pcb_r19
        !           150: member pcb_r20
        !           151: member pcb_r21
        !           152: member pcb_r22
        !           153: member pcb_r23
        !           154: member pcb_r24
        !           155: member pcb_r25
        !           156: member pcb_r26
        !           157: member pcb_r27
        !           158: member pcb_r28
        !           159: member pcb_r29
        !           160: member pcb_r30
        !           161: member pcb_sp
        !           162: member pcb_fcr62
        !           163: member pcb_fcr63
        !           164:
        !           165: # mutex fields
        !           166: struct mutex
        !           167: member mtx_lock
        !           168: member mtx_wantipl
        !           169: member mtx_oldipl
        !           170: member mtx_cpu

CVSweb