pcb.h (115006) | pcb.h (122278) |
---|---|
1/*- 2 * Copyright (c) 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 --- 20 unchanged lines hidden (view full) --- 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 30 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 31 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 34 * SUCH DAMAGE. 35 * 36 * from: @(#)pcb.h 5.10 (Berkeley) 5/12/91 | 1/*- 2 * Copyright (c) 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 --- 20 unchanged lines hidden (view full) --- 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 30 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 31 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 34 * SUCH DAMAGE. 35 * 36 * from: @(#)pcb.h 5.10 (Berkeley) 5/12/91 |
37 * $FreeBSD: head/sys/amd64/include/pcb.h 115006 2003-05-15 00:23:40Z peter $ | 37 * $FreeBSD: head/sys/amd64/include/pcb.h 122278 2003-11-08 02:39:46Z peter $ |
38 */ 39 40#ifndef _I386_PCB_H_ 41#define _I386_PCB_H_ 42 43/* | 38 */ 39 40#ifndef _I386_PCB_H_ 41#define _I386_PCB_H_ 42 43/* |
44 * Intel 386 process control block | 44 * AMD64 process control block |
45 */ | 45 */ |
46#include <machine/npx.h> | 46#include <machine/fpu.h> |
47 48struct pcb { 49 register_t padxx[8]; 50 register_t pcb_cr3; 51 register_t pcb_r15; 52 register_t pcb_r14; 53 register_t pcb_r13; 54 register_t pcb_r12; --- 6 unchanged lines hidden (view full) --- 61 register_t pcb_gsbase; 62 u_int32_t pcb_ds; 63 u_int32_t pcb_es; 64 u_int32_t pcb_fs; 65 u_int32_t pcb_gs; 66 67 struct savefpu pcb_save; 68 u_long pcb_flags; | 47 48struct pcb { 49 register_t padxx[8]; 50 register_t pcb_cr3; 51 register_t pcb_r15; 52 register_t pcb_r14; 53 register_t pcb_r13; 54 register_t pcb_r12; --- 6 unchanged lines hidden (view full) --- 61 register_t pcb_gsbase; 62 u_int32_t pcb_ds; 63 u_int32_t pcb_es; 64 u_int32_t pcb_fs; 65 u_int32_t pcb_gs; 66 67 struct savefpu pcb_save; 68 u_long pcb_flags; |
69#define PCB_NPXTRAP 0x01 /* npx trap pending */ 70#define PCB_NPXINITDONE 0x02 /* fpu state is initialized */ 71#define PCB_FULLCTX 0x04 /* full context restore on sysret */ | 69#define PCB_NPXINITDONE 0x01 /* fpu state is initialized */ 70#define PCB_FULLCTX 0x02 /* full context restore on sysret */ |
72 73 caddr_t pcb_onfault; /* copyin/out fault recovery */ 74}; 75 76#ifdef _KERNEL 77void savectx(struct pcb *); 78#endif 79 80#endif /* _I386_PCB_H_ */ | 71 72 caddr_t pcb_onfault; /* copyin/out fault recovery */ 73}; 74 75#ifdef _KERNEL 76void savectx(struct pcb *); 77#endif 78 79#endif /* _I386_PCB_H_ */ |