1 /* 2 * Copyright (c) 1992 The Regents of the University of California. 3 * All rights reserved. 4 * 5 * %sccs.include.redist.c% 6 * 7 * @(#)genassym.c 7.7 (Berkeley) 05/13/93 8 */ 9 10 #define KERNEL 11 12 #include <sys/param.h> 13 #include <sys/buf.h> 14 #include <sys/map.h> 15 #include <sys/proc.h> 16 #include <sys/user.h> 17 #include <machine/reg.h> 18 #include <machine/pte.h> 19 20 main() 21 { 22 register struct proc *p = (struct proc *)0; 23 register struct vmmeter *vm = (struct vmmeter *)0; 24 register struct user *up = (struct user *)0; 25 register struct rusage *rup = (struct rusage *)0; 26 register struct pcb *pcb = (struct pcb *)0; 27 28 /* 29 * struct proc 30 */ 31 printf("#define\tP_LINK %d\n", &p->p_link); 32 printf("#define\tP_RLINK %d\n", &p->p_rlink); 33 printf("#define\tP_ADDR %d\n", &p->p_addr); 34 printf("#define\tP_UPTE %d\n", p->p_md.md_upte); 35 printf("#define\tP_PRI %d\n", &p->p_pri); 36 printf("#define\tP_STAT %d\n", &p->p_stat); 37 printf("#define\tP_PID %d\n", &p->p_pid); 38 printf("#define\tP_WCHAN %d\n", &p->p_wchan); 39 printf("#define\tP_FLAG %d\n", &p->p_flag); 40 41 /* 42 * struct vmmeter 43 */ 44 printf("#define\tV_SWTCH %d\n", &vm->v_swtch); 45 printf("#define\tV_TRAP %d\n", &vm->v_trap); 46 printf("#define\tV_SYSCALL %d\n", &vm->v_syscall); 47 printf("#define\tV_INTR %d\n", &vm->v_intr); 48 printf("#define\tV_SOFT %d\n", &vm->v_soft); 49 printf("#define\tV_FAULTS %d\n", &vm->v_faults); 50 51 /* 52 * struct user 53 */ 54 printf("#define\tU_PCB_REGS %d\n", up->u_pcb.pcb_regs); 55 printf("#define\tU_PCB_FPREGS %d\n", &up->u_pcb.pcb_regs[F0]); 56 printf("#define\tU_PCB_CONTEXT %d\n", &up->u_pcb.pcb_context); 57 printf("#define\tU_PCB_ONFAULT %d\n", &up->u_pcb.pcb_onfault); 58 59 printf("#define\tU_PCB_SEGTAB %d\n", &up->u_pcb.pcb_segtab); 60 printf("#define\tVM_MIN_ADDRESS 0x%x\n", VM_MIN_ADDRESS); 61 printf("#define\tVM_MIN_KERNEL_ADDRESS 0x%x\n", VM_MIN_KERNEL_ADDRESS); 62 63 printf("#define\tNBPW %d\n", NBPW); 64 65 printf("#define\tSIGILL %d\n", SIGILL); 66 printf("#define\tSIGFPE %d\n", SIGFPE); 67 68 exit(0); 69 } 70