Sync ucontext with reality. The struct trapframe changes need to be

reflected here.

Approved by:	re (blanket amd64/*)
This commit is contained in:
peter 2003-05-12 18:23:04 +00:00
parent 1170968d0c
commit 2d77a1cdad
2 changed files with 13 additions and 13 deletions

View File

@ -245,7 +245,7 @@ sendsig(catcher, sig, mask, code)
sf.sf_uc.uc_stack.ss_flags = (p->p_flag & P_ALTSTACK)
? ((oonstack) ? SS_ONSTACK : 0) : SS_DISABLE;
sf.sf_uc.uc_mcontext.mc_onstack = (oonstack) ? 1 : 0;
bcopy(regs, &sf.sf_uc.uc_mcontext.mc_r15, sizeof(*regs));
bcopy(regs, &sf.sf_uc.uc_mcontext.mc_rdi, sizeof(*regs));
sf.sf_uc.uc_mcontext.mc_len = sizeof(sf.sf_uc.uc_mcontext); /* magic */
get_fpcontext(td, &sf.sf_uc.uc_mcontext);
fpstate_drop(td);
@ -371,7 +371,7 @@ sigreturn(td, uap)
ret = set_fpcontext(td, &ucp->uc_mcontext);
if (ret != 0)
return (ret);
bcopy(&ucp->uc_mcontext.mc_r15, regs, sizeof(*regs));
bcopy(&ucp->uc_mcontext.mc_rdi, regs, sizeof(*regs));
PROC_LOCK(p);
#if defined(COMPAT_43) || defined(COMPAT_SUNOS)

View File

@ -38,21 +38,21 @@ typedef struct __mcontext {
* and ucontext_t at the same time.
*/
register_t mc_onstack; /* XXX - sigcontext compat. */
register_t mc_r15; /* machine state (struct trapframe) */
register_t mc_r14;
register_t mc_r13;
register_t mc_r12;
register_t mc_r11;
register_t mc_r10;
register_t mc_r9;
register_t mc_r8;
register_t mc_rdi;
register_t mc_rdi; /* machine state (struct trapframe) */
register_t mc_rsi;
register_t mc_rbp;
register_t mc_rbx;
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_err;
register_t mc_rip;