Date: Wed, 23 Aug 2006 21:49:31 GMT From: Oleksandr Tymoshenko <gonzo@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 104863 for review Message-ID: <200608232149.k7NLnVaU022557@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=104863 Change 104863 by gonzo@gonzo_hideout on 2006/08/23 21:48:56 o Define register size for libc routines in asm.h o Replace amd64's ucontext with mips' one. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/asm.h#6 edit .. //depot/projects/mips2/src/sys/mips/include/ucontext.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/asm.h#6 (text+ko) ==== @@ -101,6 +101,11 @@ #define ta2 $10 #define ta3 $11 +/* XXX: values which depends on register size. + * Used for sigcontext/mcontext_t handling. + */ +#define SZREG 4 +#define _OFFSETOF_SC_REGS 8 #if 0 /* XXX: Should this be kt0 or kt1? */ ==== //depot/projects/mips2/src/sys/mips/include/ucontext.h#2 (text+ko) ==== @@ -39,44 +39,14 @@ * and ucontext_t at the same time. */ __register_t mc_onstack; /* XXX - sigcontext compat. */ - __register_t mc_rdi; /* machine state (struct trapframe) */ - __register_t mc_rsi; - __register_t mc_rdx; - __register_t mc_rcx; - __register_t mc_r8; - __register_t mc_r9; - __register_t mc_rax; - __register_t mc_rbx; - __register_t mc_rbp; - __register_t mc_r10; - __register_t mc_r11; - __register_t mc_r12; - __register_t mc_r13; - __register_t mc_r14; - __register_t mc_r15; - __register_t mc_trapno; - __register_t mc_addr; - __register_t mc_flags; - __register_t mc_err; - __register_t mc_rip; - __register_t mc_cs; - __register_t mc_rflags; - __register_t mc_rsp; - __register_t mc_ss; + __register_t mc_pc; /* pc at time of signal */ + __register_t mc_regs[32]; /* processor regs 0 to 31 */ + __register_t mullo, mulhi;/* mullo and mulhi registers... */ + int mc_fpused; /* fp has been used */ + int mc_fpregs[33]; /* fp regs 0 to 31 and csr */ + int mc_fpc_eir; /* floating point exception instruction reg */ + int mc_xxx[8]; /* XXX reserved */ - long mc_len; /* sizeof(mcontext_t) */ -#define _MC_FPFMT_NODEV 0x10000 /* device not present or configured */ -#define _MC_FPFMT_XMM 0x10002 - long mc_fpformat; -#define _MC_FPOWNED_NONE 0x20000 /* FP state not used */ -#define _MC_FPOWNED_FPU 0x20001 /* FP state came from FPU */ -#define _MC_FPOWNED_PCB 0x20002 /* FP state came from PCB */ - long mc_ownedfp; - /* - * See <machine/fpu.h> for the internals of mc_fpstate[]. - */ - long mc_fpstate[64] __aligned(16); - long mc_spare[8]; } mcontext_t; #endif /* !_MACHINE_UCONTEXT_H_ */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200608232149.k7NLnVaU022557>