1 /* 2 * Copyright (c) 1982, 1990 The Regents of the University of California. 3 * All rights reserved. 4 * 5 * %sccs.include.redist.c% 6 * 7 * @(#)genassym.c 7.3 (Berkeley) 11/01/90 8 */ 9 10 #define KERNEL 11 12 #include "pte.h" 13 14 #include "param.h" 15 #include "buf.h" 16 #include "vmmeter.h" 17 #include "vmparam.h" 18 #include "user.h" 19 #include "cmap.h" 20 #include "map.h" 21 #include "proc.h" 22 #include "text.h" 23 #include "mbuf.h" 24 #include "msgbuf.h" 25 #include "cpu.h" 26 #include "trap.h" 27 #include "psl.h" 28 #include "reg.h" 29 #include "clockreg.h" 30 #include "syscall.h" 31 32 main() 33 { 34 register struct proc *p = (struct proc *)0; 35 register struct vmmeter *vm = (struct vmmeter *)0; 36 register struct user *up = (struct user *)0; 37 register struct rusage *rup = (struct rusage *)0; 38 struct text *tp = (struct text *)0; 39 struct pcb *pcb = (struct pcb *)0; 40 register unsigned i; 41 42 printf("#define\tP_LINK %d\n", &p->p_link); 43 printf("#define\tP_RLINK %d\n", &p->p_rlink); 44 printf("#define\tP_XLINK %d\n", &p->p_xlink); 45 printf("#define\tP_ADDR %d\n", &p->p_addr); 46 printf("#define\tP_PRI %d\n", &p->p_pri); 47 printf("#define\tP_STAT %d\n", &p->p_stat); 48 printf("#define\tP_WCHAN %d\n", &p->p_wchan); 49 printf("#define\tP_TSIZE %d\n", &p->p_tsize); 50 printf("#define\tP_DSIZE %d\n", &p->p_dsize); 51 printf("#define\tP_SSIZE %d\n", &p->p_ssize); 52 printf("#define\tP_P0BR %d\n", &p->p_p0br); 53 printf("#define\tP_SZPT %d\n", &p->p_szpt); 54 printf("#define\tP_TEXTP %d\n", &p->p_textp); 55 printf("#define\tP_FLAG %d\n", &p->p_flag); 56 printf("#define\tSSLEEP %d\n", SSLEEP); 57 printf("#define\tSRUN %d\n", SRUN); 58 printf("#define\tX_CADDR %d\n", &tp->x_caddr); 59 printf("#define\tV_SWTCH %d\n", &vm->v_swtch); 60 printf("#define\tV_TRAP %d\n", &vm->v_trap); 61 printf("#define\tV_SYSCALL %d\n", &vm->v_syscall); 62 printf("#define\tV_INTR %d\n", &vm->v_intr); 63 printf("#define\tV_SOFT %d\n", &vm->v_soft); 64 printf("#define\tV_PDMA %d\n", &vm->v_pdma); 65 printf("#define\tV_FAULTS %d\n", &vm->v_faults); 66 printf("#define\tV_PGREC %d\n", &vm->v_pgrec); 67 printf("#define\tV_FASTPGREC %d\n", &vm->v_fastpgrec); 68 printf("#define\tUPAGES %d\n", UPAGES); 69 printf("#define\tHIGHPAGES %d\n", HIGHPAGES); 70 printf("#define\tP1PAGES %d\n", P1PAGES); 71 printf("#define\tCLSIZE %d\n", CLSIZE); 72 printf("#define\tNBPG %d\n", NBPG); 73 printf("#define\tPGSHIFT %d\n", PGSHIFT); 74 printf("#define\tSYSPTSIZE %d\n", SYSPTSIZE); 75 printf("#define\tUSRPTSIZE %d\n", USRPTSIZE); 76 printf("#define\tUSRIOSIZE %d\n", USRIOSIZE); 77 #ifdef SYSVSHM 78 printf("#define\tSHMMAXPGS %d\n", SHMMAXPGS); 79 #endif 80 printf("#define\tUSRSTACK %d\n", USRSTACK); 81 printf("#define\tMSGBUFPTECNT %d\n", btoc(sizeof (struct msgbuf))); 82 printf("#define\tNMBCLUSTERS %d\n", NMBCLUSTERS); 83 printf("#define\tMCLBYTES %d\n", MCLBYTES); 84 printf("#define\tNKMEMCLUSTERS %d\n", NKMEMCLUSTERS); 85 printf("#define\tU_PROCP %d\n", &up->u_procp); 86 printf("#define\tU_RU %d\n", &up->u_ru); 87 printf("#define\tU_PROF %d\n", &up->u_prof); 88 printf("#define\tU_PROFSCALE %d\n", &up->u_prof.pr_scale); 89 printf("#define\tRU_MINFLT %d\n", &rup->ru_minflt); 90 printf("#define\tT_BUSERR %d\n", T_BUSERR); 91 printf("#define\tT_ADDRERR %d\n", T_ADDRERR); 92 printf("#define\tT_ILLINST %d\n", T_ILLINST); 93 printf("#define\tT_ZERODIV %d\n", T_ZERODIV); 94 printf("#define\tT_CHKINST %d\n", T_CHKINST); 95 printf("#define\tT_TRAPVINST %d\n", T_TRAPVINST); 96 printf("#define\tT_PRIVINST %d\n", T_PRIVINST); 97 printf("#define\tT_TRACE %d\n", T_TRACE); 98 printf("#define\tT_MMUFLT %d\n", T_MMUFLT); 99 printf("#define\tT_SSIR %d\n", T_SSIR); 100 printf("#define\tT_FMTERR %d\n", T_FMTERR); 101 printf("#define\tT_COPERR %d\n", T_COPERR); 102 printf("#define\tT_FPERR %d\n", T_FPERR); 103 printf("#define\tT_ASTFLT %d\n", T_ASTFLT); 104 printf("#define\tT_TRAP15 %d\n", T_TRAP15); 105 printf("#define\tPSL_S %d\n", PSL_S); 106 printf("#define\tPSL_IPL7 %d\n", PSL_IPL7); 107 printf("#define\tPSL_LOWIPL %d\n", PSL_LOWIPL); 108 printf("#define\tPSL_HIGHIPL %d\n", PSL_HIGHIPL); 109 printf("#define\tPSL_USER %d\n", PSL_USER); 110 printf("#define\tSPL1 %d\n", PSL_S | PSL_IPL1); 111 printf("#define\tSPL2 %d\n", PSL_S | PSL_IPL2); 112 printf("#define\tSPL3 %d\n", PSL_S | PSL_IPL3); 113 printf("#define\tSPL4 %d\n", PSL_S | PSL_IPL4); 114 printf("#define\tSPL5 %d\n", PSL_S | PSL_IPL5); 115 printf("#define\tSPL6 %d\n", PSL_S | PSL_IPL6); 116 printf("#define\tFC_USERD %d\n", FC_USERD); 117 printf("#define\tFC_PURGE %d\n", FC_PURGE); 118 printf("#define\tMAXADDR %d\n", MAXADDR); 119 printf("#define\tIOMAPSIZE %d\n", IOMAPSIZE); 120 printf("#define\tIOBASE %d\n", IOBASE); 121 printf("#define\tMMUSTAT %d\n", MMUSTAT); 122 printf("#define\tMMUCMD %d\n", MMUCMD); 123 printf("#define\tMMUSSTP %d\n", MMUSSTP); 124 printf("#define\tMMUUSTP %d\n", MMUUSTP); 125 printf("#define\tMMUTBINVAL %d\n", MMUTBINVAL); 126 printf("#define\tMMU_BERR %d\n", MMU_BERR); 127 printf("#define\tMMU_ENAB %d\n", MMU_ENAB); 128 printf("#define\tMMU_FAULT %d\n", MMU_FAULT); 129 printf("#define\tMMU_CEN %d\n", MMU_CEN); 130 printf("#define\tMMU_IEN %d\n", MMU_IEN); 131 printf("#define\tMMU_FPE %d\n", MMU_FPE); 132 printf("#define\tCACHE_ON %d\n", CACHE_ON); 133 printf("#define\tCACHE_OFF %d\n", CACHE_OFF); 134 printf("#define\tCACHE_CLR %d\n", CACHE_CLR); 135 printf("#define\tIC_CLEAR %d\n", IC_CLEAR); 136 printf("#define\tDC_CLEAR %d\n", DC_CLEAR); 137 printf("#define\tPG_V %d\n", PG_V); 138 printf("#define\tPG_NV %d\n", PG_NV); 139 printf("#define\tPG_RO %d\n", PG_RO); 140 printf("#define\tPG_RW %d\n", PG_RW); 141 printf("#define\tPG_CI %d\n", PG_CI); 142 printf("#define\tPG_PROT %d\n", PG_PROT); 143 printf("#define\tPG_FRAME %d\n", PG_FRAME); 144 printf("#define\tSG_V %d\n", SG_V); 145 printf("#define\tSG_NV %d\n", SG_NV); 146 printf("#define\tSG_RW %d\n", SG_RW); 147 printf("#define\tSG_FRAME %d\n", SG_FRAME); 148 printf("#define\tPCB_FLAGS %d\n", &pcb->pcb_flags); 149 printf("#define\tPCB_PS %d\n", &pcb->pcb_ps); 150 printf("#define\tPCB_USTP %d\n", &pcb->pcb_ustp); 151 printf("#define\tPCB_USP %d\n", &pcb->pcb_usp); 152 printf("#define\tPCB_REGS %d\n", pcb->pcb_regs); 153 printf("#define\tPCB_P0BR %d\n", &pcb->pcb_p0br); 154 printf("#define\tPCB_P0LR %d\n", &pcb->pcb_p0lr); 155 printf("#define\tPCB_P1BR %d\n", &pcb->pcb_p1br); 156 printf("#define\tPCB_P1LR %d\n", &pcb->pcb_p1lr); 157 printf("#define\tPCB_SZPT %d\n", &pcb->pcb_szpt); 158 printf("#define\tPCB_CMAP2 %d\n", &pcb->pcb_cmap2); 159 printf("#define\tPCB_SSWAP %d\n", &pcb->pcb_sswap); 160 printf("#define\tPCB_SIGC %d\n", pcb->pcb_sigc); 161 printf("#define\tPCB_ONFAULT %d\n", &pcb->pcb_onfault); 162 printf("#define\tPCB_FPCTX %d\n", &pcb->pcb_fpregs); 163 printf("#define\tSP %d\n", SP); 164 printf("#define\tB_READ %d\n", B_READ); 165 printf("#define\tENOENT %d\n", ENOENT); 166 printf("#define\tEFAULT %d\n", EFAULT); 167 printf("#define\tENAMETOOLONG %d\n", ENAMETOOLONG); 168 printf("#define\tCLKCR1 %d\n", CLKCR1); 169 printf("#define\tCLKCR2 %d\n", CLKCR2); 170 printf("#define\tCLKCR3 %d\n", CLKCR3); 171 printf("#define\tCLKSR %d\n", CLKSR); 172 printf("#define\tCLKMSB1 %d\n", CLKMSB1); 173 printf("#define\tCLKMSB2 %d\n", CLKMSB2); 174 printf("#define\tCLKMSB3 %d\n", CLKMSB3); 175 printf("#define\tSYS_exit %d\n", SYS_exit); 176 printf("#define\tSYS_execv %d\n", SYS_execv); 177 printf("#define\tSYS_sigreturn %d\n", SYS_sigreturn); 178 for (i = 0; i < 32; i++) { 179 if ((1 << i) & SPTECHG) 180 printf("#define\tSPTECHGB %d\n", i); 181 if ((1 << i) & PCB_AST) 182 printf("#define\tPCB_ASTB %d\n", i); 183 if ((1 << i) & PCB_HPUXTRACE) 184 printf("#define\tPCB_TRCB %d\n", i); 185 } 186 exit(0); 187 } 188