Lines Matching defs:ucp

103 _sigvechandler(int sig, siginfo_t *sip, ucontext_t *ucp)
105 ucbsigvechandler(sig, sip, ucp);
110 ucbsigvechandler(int sig, siginfo_t *sip, ucontext_t *ucp)
119 sc.sc_onstack = ((ucp->uc_stack.ss_flags & SS_ONSTACK) != 0);
120 sc.sc_mask = set2mask(&ucp->uc_sigmask);
130 ucp->uc_mcontext.gregs[REG_PC] =
131 ucp->uc_mcontext.gregs[REG_nPC];
132 ucp->uc_mcontext.gregs[REG_nPC] += 4;
134 sc.sc_sp = ucp->uc_mcontext.gregs[REG_SP];
135 sc.sc_pc = ucp->uc_mcontext.gregs[REG_PC];
136 sc.sc_npc = ucp->uc_mcontext.gregs[REG_nPC];
140 sc.sc_psr = ucp->uc_mcontext.gregs[REG_CCR];
142 sc.sc_psr = ucp->uc_mcontext.gregs[REG_PSR];
145 sc.sc_g1 = ucp->uc_mcontext.gregs[REG_G1];
146 sc.sc_o0 = ucp->uc_mcontext.gregs[REG_O0];
156 sc.sc_wbcnt = (int)(sizeof (*ucp));
158 sc.sc_spbuf[1] = (char *)ucp;
165 if (ucp->uc_mcontext.gwins != (gwindows_t *)0) {
169 sc.sc_wbcnt = ucp->uc_mcontext.gwins->wbcnt;
171 for (i = 0; i < ucp->uc_mcontext.gwins; i++) {
172 sc.sc_spbuf[i] = ucp->uc_mcontext.gwins->spbuf[i];
175 ucp->uc_mcontext.gwins->wbuf[i].rw_local[j];
178 ucp->uc_mcontext.gwins->wbuf[i].rw_in[j];
279 ucp->uc_stack.ss_flags |= SS_ONSTACK;
281 ucp->uc_stack.ss_flags &= ~SS_ONSTACK;
282 mask2set(sc.sc_mask, &ucp->uc_sigmask);
285 ucp->uc_mcontext.gregs[REG_SP] = sc.sc_sp;
286 ucp->uc_mcontext.gregs[REG_PC] = sc.sc_pc;
287 ucp->uc_mcontext.gregs[REG_nPC] = sc.sc_npc;
289 ucp->uc_mcontext.gregs[REG_CCR] = sc.sc_psr;
291 ucp->uc_mcontext.gregs[REG_PSR] = sc.sc_psr;
293 ucp->uc_mcontext.gregs[REG_G1] = sc.sc_g1;
294 ucp->uc_mcontext.gregs[REG_O0] = sc.sc_o0;
299 ucp->uc_mcontext.gwins->wbcnt = sc.sc_wbcnt;
302 ucp->uc_mcontext.gwins->spbuf[i] = sc.sc_spbuf[i];
304 ucp->uc_mcontext.gwins->wbuf[i].rw_local[j] =
307 ucp->uc_mcontext.gwins->wbuf[i].rw_in[j] =
314 if (ucp->uc_mcontext.fpregs.fpu_qcnt > 0) {
315 ucp->uc_mcontext.fpregs.fpu_qcnt--;
316 ucp->uc_mcontext.fpregs.fpu_q++;
321 (void) setcontext(ucp);
341 ucontext_t uc, *ucp;
349 if (scp->sc_wbcnt == sizeof (*ucp)) {
351 ucp = (ucontext_t *)scp->sc_spbuf[1];
358 ucp = &uc;
359 (void) getcontext(ucp);
363 ucp->uc_stack.ss_flags |= SS_ONSTACK;
365 ucp->uc_stack.ss_flags &= ~SS_ONSTACK;
366 mask2set(scp->sc_mask, &ucp->uc_sigmask);
368 ucp->uc_mcontext.gregs[REG_SP] = scp->sc_sp;
369 ucp->uc_mcontext.gregs[REG_PC] = scp->sc_pc;
370 ucp->uc_mcontext.gregs[REG_nPC] = scp->sc_npc;
372 ucp->uc_mcontext.gregs[REG_CCR] = scp->sc_psr;
374 ucp->uc_mcontext.gregs[REG_PSR] = scp->sc_psr;
376 ucp->uc_mcontext.gregs[REG_G1] = scp->sc_g1;
377 ucp->uc_mcontext.gregs[REG_O0] = scp->sc_o0;
380 if (ucp->uc_mcontext.fpregs.fpu_qcnt > 0) {
381 ucp->uc_mcontext.fpregs.fpu_qcnt--;
382 ucp->uc_mcontext.fpregs.fpu_q++;
385 (void) setcontext(ucp);