pcb.h (10b3b54548f2290bbe8d8f88c59c28d12b7a635d) | pcb.h (6cf9a08d2c338e25f0be42326e6880f089156562) |
---|---|
1/*- 2 * Copyright (c) 2003 Peter Wemm. 3 * Copyright (c) 1990 The Regents of the University of California. 4 * All rights reserved. 5 * 6 * This code is derived from software contributed to Berkeley by 7 * William Jolitz. 8 * --- 43 unchanged lines hidden (view full) --- 52 register_t pcb_rbp; 53 register_t pcb_rsp; 54 register_t pcb_rbx; 55 register_t pcb_rip; 56 register_t pcb_fsbase; 57 register_t pcb_gsbase; 58 u_long pcb_flags; 59#define PCB_DBREGS 0x02 /* process using debug registers */ | 1/*- 2 * Copyright (c) 2003 Peter Wemm. 3 * Copyright (c) 1990 The Regents of the University of California. 4 * All rights reserved. 5 * 6 * This code is derived from software contributed to Berkeley by 7 * William Jolitz. 8 * --- 43 unchanged lines hidden (view full) --- 52 register_t pcb_rbp; 53 register_t pcb_rsp; 54 register_t pcb_rbx; 55 register_t pcb_rip; 56 register_t pcb_fsbase; 57 register_t pcb_gsbase; 58 u_long pcb_flags; 59#define PCB_DBREGS 0x02 /* process using debug registers */ |
60#define PCB_KERNFPU 0x04 /* kernel uses fpu */ |
|
60#define PCB_FPUINITDONE 0x08 /* fpu state is initialized */ | 61#define PCB_FPUINITDONE 0x08 /* fpu state is initialized */ |
62#define PCB_USERFPUINITDONE 0x10 /* fpu user state is initialized */ |
|
61#define PCB_GS32BIT 0x20 /* linux gs switch */ 62#define PCB_32BIT 0x40 /* process has 32 bit context (segs etc) */ 63#define PCB_FULLCTX 0x80 /* full context restore on sysret */ 64 65 u_int64_t pcb_dr0; 66 u_int64_t pcb_dr1; 67 u_int64_t pcb_dr2; 68 u_int64_t pcb_dr3; 69 u_int64_t pcb_dr6; 70 u_int64_t pcb_dr7; 71 | 63#define PCB_GS32BIT 0x20 /* linux gs switch */ 64#define PCB_32BIT 0x40 /* process has 32 bit context (segs etc) */ 65#define PCB_FULLCTX 0x80 /* full context restore on sysret */ 66 67 u_int64_t pcb_dr0; 68 u_int64_t pcb_dr1; 69 u_int64_t pcb_dr2; 70 u_int64_t pcb_dr3; 71 u_int64_t pcb_dr6; 72 u_int64_t pcb_dr7; 73 |
72 struct savefpu pcb_save; | 74 struct savefpu pcb_user_save; |
73 uint16_t pcb_initial_fpucw; 74 75 caddr_t pcb_onfault; /* copyin/out fault recovery */ 76 77 /* 32-bit segment descriptor */ 78 struct user_segment_descriptor pcb_gs32sd; 79 /* local tss, with i/o bitmap; NULL for common */ 80 struct amd64tss *pcb_tssp; | 75 uint16_t pcb_initial_fpucw; 76 77 caddr_t pcb_onfault; /* copyin/out fault recovery */ 78 79 /* 32-bit segment descriptor */ 80 struct user_segment_descriptor pcb_gs32sd; 81 /* local tss, with i/o bitmap; NULL for common */ 82 struct amd64tss *pcb_tssp; |
83 struct savefpu *pcb_save; |
|
81 char pcb_full_iret; 82}; 83 84struct xpcb { 85 struct pcb xpcb_pcb; 86 register_t xpcb_cr0; 87 register_t xpcb_cr2; 88 register_t xpcb_cr4; --- 16 unchanged lines hidden --- | 84 char pcb_full_iret; 85}; 86 87struct xpcb { 88 struct pcb xpcb_pcb; 89 register_t xpcb_cr0; 90 register_t xpcb_cr2; 91 register_t xpcb_cr4; --- 16 unchanged lines hidden --- |