diff options
author | jake <jake@FreeBSD.org> | 2003-04-03 18:28:03 +0000 |
---|---|---|
committer | jake <jake@FreeBSD.org> | 2003-04-03 18:28:03 +0000 |
commit | d37e1467193889798aa297d78b20582b354c55d7 (patch) | |
tree | fc04072b22327e50f2c8c111783edbdd9eb5f118 /sys/sparc64/include/pcb.h | |
parent | ffcfcc8152a16ce4eaf5f537dca60fae1e775fbc (diff) | |
download | FreeBSD-src-d37e1467193889798aa297d78b20582b354c55d7.zip FreeBSD-src-d37e1467193889798aa297d78b20582b354c55d7.tar.gz |
- Add space for kernel floating point registers to the pcb. These will be
used to support block copy and zero operations in the kernel which use the
floating point registers.
- While I'm changing the size, improve the layout of struct pcb, sort by size,
then alphabetical etc.
- Add some assertions to validate assumptions made about how the pcb is
allocated.
Diffstat (limited to 'sys/sparc64/include/pcb.h')
-rw-r--r-- | sys/sparc64/include/pcb.h | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/sys/sparc64/include/pcb.h b/sys/sparc64/include/pcb.h index 93615ba..38578d2 100644 --- a/sys/sparc64/include/pcb.h +++ b/sys/sparc64/include/pcb.h @@ -37,13 +37,15 @@ /* NOTE: pcb_ufp must be aligned on a 64 byte boundary. */ struct pcb { - uint32_t pcb_ufp[64]; - u_long pcb_sp; - u_long pcb_pc; - u_long pcb_flags; - u_long pcb_nsaved; - u_long pcb_rwsp[MAXWIN]; struct rwindow pcb_rw[MAXWIN]; + uint32_t pcb_kfp[64]; + uint32_t pcb_ufp[64]; + uint64_t pcb_rwsp[MAXWIN]; + uint64_t pcb_flags; + uint64_t pcb_nsaved; + uint64_t pcb_pc; + uint64_t pcb_sp; + uint64_t pcb_pad[4]; } __aligned(64); #ifdef _KERNEL |