NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: port-alpha/60479 (alpha fails to save/restore fpu registers on signal delivery)



> On Jul 22, 2026, at 3:15 PM, Taylor R Campbell via gnats <gnats-admin%NetBSD.org@localhost> wrote:
>> 
>> Synopsis: alpha fails to save/restore fpu registers on signal delivery

Taking a peek … “are you sure?”

sendsig_signfo() does:

        cpu_getmcontext(l, &frame.sf_uc.uc_mcontext, &frame.sf_uc.uc_flags);

…and cpu_getmcontext() does:

        /* Save floating point register context, if any, and copy it. */
        if (fpu_valid_p(l)) {
                fpu_save(l);
                (void)memcpy(&mcp->__fpregs, &pcb->pcb_fp,
                    sizeof (mcp->__fpregs));
                mcp->__fpregs.__fp_fpcr = alpha_read_fp_c(l);
                *flags |= _UC_FPU;
        }

I guess I’ll have to fire one up and make sure ucontext / mcontexts tests pass first.

-- thorpej




Home | Main Index | Thread Index | Old Index