]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - sys/mips/mips/genassym.c
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / sys / mips / mips / genassym.c
1 /*-
2  * Copyright (c) 1982, 1990 The Regents of the University of California.
3  * All rights reserved.
4  *
5  * This code is derived from software contributed to Berkeley by
6  * William Jolitz.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  * 1. Redistributions of source code must retain the above copyright
12  *    notice, this list of conditions and the following disclaimer.
13  * 2. Redistributions in binary form must reproduce the above copyright
14  *    notice, this list of conditions and the following disclaimer in the
15  *    documentation and/or other materials provided with the distribution.
16  * 4. Neither the name of the University nor the names of its contributors
17  *    may be used to endorse or promote products derived from this software
18  *    without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30  * SUCH DAMAGE.
31  *
32  *      from: @(#)genassym.c    5.11 (Berkeley) 5/10/91
33  *      from: src/sys/i386/i386/genassym.c,v 1.86.2.1 2000/05/16 06:58:06 dillon
34  *      JNPR: genassym.c,v 1.4 2007/08/09 11:23:32 katta
35  */
36
37 #include <sys/cdefs.h>
38 __FBSDID("$FreeBSD$");
39
40 #include <sys/param.h>
41 #include <sys/systm.h>
42 #include <sys/assym.h>
43 #include <machine/pte.h>
44 #include <sys/proc.h>
45 #include <sys/errno.h>
46 #include <sys/lock.h>
47 #include <sys/mutex.h>
48 #include <sys/socket.h>
49 #include <sys/resourcevar.h>
50 #include <sys/ucontext.h>
51 #include <sys/vmmeter.h>
52 #include <vm/vm.h>
53 #include <vm/vm_param.h>
54 #include <vm/pmap.h>
55 #include <vm/vm_map.h>
56 #include <machine/cpuregs.h>
57 #include <machine/pcb.h>
58 #include <machine/sigframe.h>
59 #include <machine/proc.h>
60
61 #ifndef offsetof
62 #define offsetof(t,m) (int)((&((t *)0L)->m))
63 #endif
64
65
66 ASSYM(TD_PCB, offsetof(struct thread, td_pcb));
67 ASSYM(TD_UPTE, offsetof(struct thread, td_md.md_upte));
68 ASSYM(TD_KSTACK, offsetof(struct thread, td_kstack));
69 ASSYM(TD_FLAGS, offsetof(struct thread, td_flags));
70 ASSYM(TD_LOCK, offsetof(struct thread, td_lock));
71 ASSYM(TD_FRAME, offsetof(struct thread, td_frame));
72 ASSYM(TD_TLS, offsetof(struct thread, td_md.md_tls));
73
74 ASSYM(TF_REG_SR, offsetof(struct trapframe, sr));
75
76 ASSYM(U_PCB_REGS, offsetof(struct pcb, pcb_regs.zero));
77 ASSYM(U_PCB_CONTEXT, offsetof(struct pcb, pcb_context));
78 ASSYM(U_PCB_ONFAULT, offsetof(struct pcb, pcb_onfault));
79 ASSYM(U_PCB_FPREGS, offsetof(struct pcb, pcb_regs.f0));
80
81 ASSYM(PC_CURPCB, offsetof(struct pcpu, pc_curpcb));
82 ASSYM(PC_SEGBASE, offsetof(struct pcpu, pc_segbase));
83 ASSYM(PC_CURTHREAD, offsetof(struct pcpu, pc_curthread));
84 ASSYM(PC_FPCURTHREAD, offsetof(struct pcpu, pc_fpcurthread));
85 ASSYM(PC_CPUID, offsetof(struct pcpu, pc_cpuid));
86 ASSYM(PC_CURPMAP, offsetof(struct pcpu, pc_curpmap));
87
88 ASSYM(VM_MAX_KERNEL_ADDRESS, VM_MAX_KERNEL_ADDRESS);
89 ASSYM(VM_MAXUSER_ADDRESS, VM_MAXUSER_ADDRESS);
90 ASSYM(SIGF_UC, offsetof(struct sigframe, sf_uc));
91 ASSYM(SIGFPE, SIGFPE);
92 ASSYM(PAGE_SHIFT, PAGE_SHIFT);
93 ASSYM(PAGE_SIZE, PAGE_SIZE);
94 ASSYM(PAGE_MASK, PAGE_MASK);
95 ASSYM(PDRSHIFT, PDRSHIFT);
96 ASSYM(SEGSHIFT, SEGSHIFT);
97 ASSYM(NPTEPG, NPTEPG);
98 ASSYM(TDF_NEEDRESCHED, TDF_NEEDRESCHED);
99 ASSYM(TDF_ASTPENDING, TDF_ASTPENDING);
100 ASSYM(PCPU_SIZE, sizeof(struct pcpu));
101 ASSYM(MAXCOMLEN, MAXCOMLEN);
102
103 ASSYM(MIPS_KSEG0_START, MIPS_KSEG0_START);
104 ASSYM(MIPS_KSEG1_START, MIPS_KSEG1_START);
105 ASSYM(MIPS_KSEG2_START, MIPS_KSEG2_START);
106 ASSYM(MIPS_XKSEG_START, MIPS_XKSEG_START);