1 /* $NetBSD: reg.h,v 1.4 2000/06/04 09:30:44 tsubai Exp $ */
3 #ifndef _POWERPC_REG_H_
4 #define _POWERPC_REG_H_
6 #include <sys/_types.h>
8 /* Must match struct trapframe */
10 __register_t fixreg[32];
23 /* Must match pcb.pcb_vec */
36 /* Must match struct trapframe */
63 * XXX these interfaces are MI, so they should be declared in a MI place.
65 int fill_regs(struct thread *, struct reg *);
66 int set_regs(struct thread *, struct reg *);
67 int fill_fpregs(struct thread *, struct fpreg *);
68 int set_fpregs(struct thread *, struct fpreg *);
69 int fill_dbregs(struct thread *, struct dbreg *);
70 int set_dbregs(struct thread *, struct dbreg *);
75 void cpu_save_thread_regs(struct thread *);
77 #ifdef COMPAT_FREEBSD32
80 int fill_regs32(struct thread *, struct reg32 *);
81 int set_regs32(struct thread *, struct reg32 *);
82 void ppc32_setregs(struct thread *, struct image_params *, uintptr_t);
84 #define fill_fpregs32(td, reg) fill_fpregs(td,(struct fpreg *)reg)
85 #define set_fpregs32(td, reg) set_fpregs(td,(struct fpreg *)reg)
86 #define fill_dbregs32(td, reg) fill_dbregs(td,(struct dbreg *)reg)
87 #define set_dbregs32(td, reg) set_dbregs(td,(struct dbreg *)reg)
92 #endif /* _POWERPC_REG_H_ */