1 /*
2 * Copyright (c) 1983, 1988 Regents of the University of California.
3 * All rights reserved.
4 *
5 * %sccs.include.redist.c%
6 */
7
8 #ifndef lint
9 char copyright[] =
10 "@(#) Copyright (c) 1983, 1988 Regents of the University of California.\n\
11 All rights reserved.\n";
12 #endif /* not lint */
13
14 #ifndef lint
15 static char sccsid[] = "@(#)genassym.c 7.8 (Berkeley) 09/23/93";
16 #endif /* not lint */
17
18 #include "sys/param.h"
19 #include "sys/vmmeter.h"
20 #include "sys/vmparam.h"
21 #include "sys/buf.h"
22 #include "sys/user.h"
23 #include "sys/cmap.h"
24 #include "sys/map.h"
25 #include "sys/proc.h"
26 #include "sys/text.h"
27 #include "sys/mbuf.h"
28 #include "sys/msgbuf.h"
29
30 #include "../include/pte.h"
31 #include "../tahoe/scb.h"
32
33 #include "../vba/vbaparam.h"
34
main()35 main()
36 {
37 register struct user *u = (struct user *)0;
38 register struct proc *p = (struct proc *)0;
39 register struct vmmeter *vm = (struct vmmeter *)0;
40 register struct pcb *pcb = (struct pcb *)0;
41 register struct scb *scb = (struct scb *)0;
42
43 printf("#ifdef LOCORE\n");
44 printf("#define\tU_PROCP %d\n", &u->u_procp);
45 printf("#define\tP_FORW %d\n", &p->p_forw);
46 printf("#define\tP_BACK %d\n", &p->p_back);
47 printf("#define\tP_XLINK %d\n", &p->p_xlink);
48 printf("#define\tP_ADDR %d\n", &p->p_addr);
49 printf("#define\tP_PRIORITY %d\n", &p->p_priority);
50 printf("#define\tP_STAT %d\n", &p->p_stat);
51 printf("#define\tP_WCHAN %d\n", &p->p_wchan);
52 printf("#define\tP_TSIZE %d\n", &p->p_tsize);
53 printf("#define\tP_SSIZE %d\n", &p->p_ssize);
54 printf("#define\tP_P0BR %d\n", &p->p_p0br);
55 printf("#define\tP_SZPT %d\n", &p->p_szpt);
56 printf("#define\tP_TEXTP %d\n", &p->p_textp);
57 printf("#define\tP_FLAG %d\n", &p->p_flag);
58 printf("#define\tP_DKEY %d\n", &p->p_dkey);
59 printf("#define\tP_CKEY %d\n", &p->p_ckey);
60 printf("#define\tSSLEEP %d\n", SSLEEP);
61 printf("#define\tSRUN %d\n", SRUN);
62 printf("#define\tV_SWTCH %d\n", &vm->v_swtch);
63 printf("#define\tV_TRAP %d\n", &vm->v_trap);
64 printf("#define\tV_SYSCALL %d\n", &vm->v_syscall);
65 printf("#define\tV_INTR %d\n", &vm->v_intr);
66 printf("#define\tV_SOFT %d\n", &vm->v_soft);
67 printf("#define\tV_FPE %d\n", &vm->v_fpe);
68 printf("#define\tV_ALIGN %d\n", &vm->v_align);
69 printf("#define\tMCLBYTES %d\n", MCLBYTES);
70 printf("#define\tNBPG %d\n", NBPG);
71 printf("#define\tPGSHIFT %d\n", PGSHIFT);
72 printf("#define\tUPAGES %d\n", UPAGES);
73 printf("#define\tCLSIZE %d\n", CLSIZE);
74 printf("#define\tMAXPHYS %d\n", MAXPHYS);
75 printf("#define\tSYSPTSIZE %d\n", SYSPTSIZE);
76 printf("#define\tUSRPTSIZE %d\n", USRPTSIZE);
77 printf("#define\tVBIOSIZE %d\n", VBIOSIZE);
78 printf("#define\tMSGBUFPTECNT %d\n", btoc(sizeof (struct msgbuf)));
79 printf("#define\tNMBCLUSTERS %d\n", NMBCLUSTERS);
80 printf("#define\tNKMEMCLUSTERS %d\n", NKMEMCLUSTERS);
81 #ifdef SYSVSHM
82 printf("#define\tSHMMAXPGS %d\n", SHMMAXPGS);
83 #endif
84 printf("#define\tPCB_KSP %d\n", &pcb->pcb_ksp);
85 printf("#define\tPCB_USP %d\n", &pcb->pcb_usp);
86 printf("#define\tPCB_R0 %d\n", &pcb->pcb_r0);
87 printf("#define\tPCB_R1 %d\n", &pcb->pcb_r1);
88 printf("#define\tPCB_R2 %d\n", &pcb->pcb_r2);
89 printf("#define\tPCB_R3 %d\n", &pcb->pcb_r3);
90 printf("#define\tPCB_R4 %d\n", &pcb->pcb_r4);
91 printf("#define\tPCB_R5 %d\n", &pcb->pcb_r5);
92 printf("#define\tPCB_R6 %d\n", &pcb->pcb_r6);
93 printf("#define\tPCB_R7 %d\n", &pcb->pcb_r7);
94 printf("#define\tPCB_R8 %d\n", &pcb->pcb_r8);
95 printf("#define\tPCB_R9 %d\n", &pcb->pcb_r9);
96 printf("#define\tPCB_R10 %d\n", &pcb->pcb_r10);
97 printf("#define\tPCB_R11 %d\n", &pcb->pcb_r11);
98 printf("#define\tPCB_R12 %d\n", &pcb->pcb_r12);
99 printf("#define\tPCB_R13 %d\n", &pcb->pcb_r13);
100 printf("#define\tPCB_FP %d\n", &pcb->pcb_fp);
101 printf("#define\tPCB_PC %d\n", &pcb->pcb_pc);
102 printf("#define\tPCB_PSL %d\n", &pcb->pcb_psl);
103 printf("#define\tPCB_P0BR %d\n", &pcb->pcb_p0br);
104 printf("#define\tPCB_P0LR %d\n", &pcb->pcb_p0lr);
105 printf("#define\tPCB_P1BR %d\n", &pcb->pcb_p1br);
106 printf("#define\tPCB_P1LR %d\n", &pcb->pcb_p1lr);
107 printf("#define\tPCB_P2BR %d\n", &pcb->pcb_p2br);
108 printf("#define\tPCB_P2LR %d\n", &pcb->pcb_p2lr);
109 printf("#define\tPCB_ACH %d\n", &pcb->pcb_ach);
110 printf("#define\tPCB_ACL %d\n", &pcb->pcb_acl);
111 printf("#define\tPCB_HFS %d\n", &pcb->pcb_hfs);
112 printf("#define\tPCB_SAVACC %d\n", &pcb->pcb_savacc);
113 printf("#define\tPCB_SZPT %d\n", &pcb->pcb_szpt);
114 printf("#define\tPCB_CMAP2 %d\n", &pcb->pcb_cmap2);
115 printf("#define\tPCB_SSWAP %d\n", &pcb->pcb_sswap);
116 printf("#define\tPCB_SIGC %d\n", pcb->pcb_sigc);
117 printf("#define\tSCB_DOADUMP %d\n", &scb->scb_doadump);
118 printf("#define\tSCB_BUSERR %d\n", &scb->scb_buserr);
119 #define SCB_DEVBASE (((int)((struct scb *)0)->scb_devint)/sizeof (int))
120 printf("#define\tSCB_DEVBASE %d\n", SCB_DEVBASE);
121 printf("#endif\n");
122 exit(0);
123 }
124