diff options
Diffstat (limited to 'sys/powerpc/include/ucontext.h')
-rw-r--r-- | sys/powerpc/include/ucontext.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/sys/powerpc/include/ucontext.h b/sys/powerpc/include/ucontext.h index 58b6a80..23b3ab4 100644 --- a/sys/powerpc/include/ucontext.h +++ b/sys/powerpc/include/ucontext.h @@ -44,10 +44,25 @@ typedef struct __mcontext { int mc_len; /* sizeof(__mcontext) */ uint64_t mc_avec[32*2]; /* vector register file */ uint32_t mc_av[2]; - uint32_t mc_frame[41]; + register_t mc_frame[42]; uint64_t mc_fpreg[33]; } mcontext_t __aligned(16); +#if defined(_KERNEL) && defined(__powerpc64__) +typedef struct __mcontext32 { + int mc_vers; + int mc_flags; +#define _MC_FP_VALID 0x01 +#define _MC_AV_VALID 0x02 + int mc_onstack; /* saved onstack flag */ + int mc_len; /* sizeof(__mcontext) */ + uint64_t mc_avec[32*2]; /* vector register file */ + uint32_t mc_av[2]; + uint32_t mc_frame[42]; + uint64_t mc_fpreg[33]; +} mcontext32_t __aligned(16); +#endif + /* GPRs and supervisor-level regs */ #define mc_gpr mc_frame #define mc_lr mc_frame[32] |