/illumos-gate/usr/src/lib/libc/i386/threads/ |
H A D | machdep.c | 102 fs = uc.uc_mcontext.gregs[FS]; in setup_context() 103 es = uc.uc_mcontext.gregs[ES]; in setup_context() 104 ds = uc.uc_mcontext.gregs[DS]; in setup_context() 105 cs = uc.uc_mcontext.gregs[CS]; in setup_context() 106 ss = uc.uc_mcontext.gregs[SS]; in setup_context() 111 ucp->uc_mcontext.gregs[FS] = fs; in setup_context() 112 ucp->uc_mcontext.gregs[ES] = es; in setup_context() 113 ucp->uc_mcontext.gregs[DS] = ds; in setup_context() 114 ucp->uc_mcontext.gregs[CS] = cs; in setup_context() 115 ucp->uc_mcontext.gregs[SS] = ss; in setup_context() [all …]
|
/illumos-gate/usr/src/uts/sparc/syscall/ |
H A D | getcontext.c | 66 bzero(&ucp->uc_mcontext.fpregs.fpu_en, sizeof (ucontext_t) - in savecontext() 67 offsetof(ucontext_t, uc_mcontext.fpregs.fpu_en)); in savecontext() 104 getgregs(lwp, ucp->uc_mcontext.gregs); in savecontext() 105 getasrs(lwp, ucp->uc_mcontext.asrs); in savecontext() 107 getfpregs(lwp, &ucp->uc_mcontext.fpregs); in savecontext() 108 getfpasrs(lwp, ucp->uc_mcontext.asrs); in savecontext() 109 if (ucp->uc_mcontext.fpregs.fpu_en == 0) in savecontext() 111 ucp->uc_mcontext.gwins = (gwindows_t *)NULL; in savecontext() 125 mcontext_t *mcp = &ucp->uc_mcontext; in restorecontext() 152 fpregset_t *fp = &ucp->uc_mcontext.fpregs; in restorecontext() [all …]
|
/illumos-gate/usr/src/ucblib/libucb/sparc/sys/ |
H A D | signal.c | 126 ucp->uc_mcontext.gregs[REG_PC] = in ucbsigvechandler() 127 ucp->uc_mcontext.gregs[REG_nPC]; in ucbsigvechandler() 128 ucp->uc_mcontext.gregs[REG_nPC] += 4; in ucbsigvechandler() 130 sc.sc_sp = ucp->uc_mcontext.gregs[REG_SP]; in ucbsigvechandler() 131 sc.sc_pc = ucp->uc_mcontext.gregs[REG_PC]; in ucbsigvechandler() 132 sc.sc_npc = ucp->uc_mcontext.gregs[REG_nPC]; in ucbsigvechandler() 136 sc.sc_psr = ucp->uc_mcontext.gregs[REG_CCR]; in ucbsigvechandler() 138 sc.sc_psr = ucp->uc_mcontext.gregs[REG_PSR]; in ucbsigvechandler() 141 sc.sc_g1 = ucp->uc_mcontext.gregs[REG_G1]; in ucbsigvechandler() 142 sc.sc_o0 = ucp->uc_mcontext.gregs[REG_O0]; in ucbsigvechandler() [all …]
|
/illumos-gate/usr/src/cmd/csh/sparc/ |
H A D | signal.c | 79 sc.sc_sp = ucp->uc_mcontext.gregs[REG_O6]; in sigvechandler() 80 sc.sc_pc = ucp->uc_mcontext.gregs[REG_PC]; in sigvechandler() 81 sc.sc_npc = ucp->uc_mcontext.gregs[REG_nPC]; in sigvechandler() 82 sc.sc_psr = ucp->uc_mcontext.gregs[REG_PSR]; in sigvechandler() 83 sc.sc_g1 = ucp->uc_mcontext.gregs[REG_G1]; in sigvechandler() 84 sc.sc_o0 = ucp->uc_mcontext.gregs[REG_O0]; in sigvechandler() 85 if (ucp->uc_mcontext.gwins != (gwindows_t *)0) { in sigvechandler() 87 sc.sc_wbcnt = ucp->uc_mcontext.gwins->wbcnt; in sigvechandler() 90 sc.sc_spbuf[i][j] = (int)ucp->uc_mcontext.gwins->spbuf[j]; in sigvechandler() 92 sc.sc_wbuf[i][j] = ucp->uc_mcontext.gwins->wbuf[i].rw_local[j]; in sigvechandler() [all …]
|
/illumos-gate/usr/src/ucblib/libucb/i386/sys/ |
H A D | signal.c | 105 sc.sc_sp = (long)ucp->uc_mcontext.gregs[REG_RSP]; in ucbsigvechandler() 106 sc.sc_pc = (long)ucp->uc_mcontext.gregs[REG_RIP]; in ucbsigvechandler() 107 sc.sc_ps = (long)ucp->uc_mcontext.gregs[REG_RFL]; in ucbsigvechandler() 108 sc.sc_r0 = (long)ucp->uc_mcontext.gregs[REG_RAX]; in ucbsigvechandler() 109 sc.sc_r1 = (long)ucp->uc_mcontext.gregs[REG_RDX]; in ucbsigvechandler() 111 sc.sc_sp = (int)ucp->uc_mcontext.gregs[UESP]; in ucbsigvechandler() 112 sc.sc_pc = (int)ucp->uc_mcontext.gregs[EIP]; in ucbsigvechandler() 113 sc.sc_ps = (int)ucp->uc_mcontext.gregs[EFL]; in ucbsigvechandler() 114 sc.sc_r0 = (int)ucp->uc_mcontext.gregs[EAX]; in ucbsigvechandler() 115 sc.sc_r1 = (int)ucp->uc_mcontext.gregs[EDX]; in ucbsigvechandler() [all …]
|
/illumos-gate/usr/src/lib/libm/common/m9x/ |
H A D | __fex_hdlr.c | 271 i = ((int)uap->uc_mcontext.fpregs.fpu_fsr >> 5) & 0x1f; in __fex_hdlr() 292 gsr = uap->uc_mcontext.asrs[3]; in __fex_hdlr() 295 if (uap->uc_mcontext.xrs.xrs_id == XRS_ID) in __fex_hdlr() 296 gsr = (*(unsigned long long*)((prxregset_t*)uap->uc_mcontext. in __fex_hdlr() 344 fsr = uap->uc_mcontext.fpregs.fpu_fsr; in __fex_hdlr() 348 uap->uc_mcontext.fpregs.fpu_fsr = fsr; in __fex_hdlr() 404 if (!(uap->uc_mcontext.fpregs.fp_reg_set.fpchip_state.status & 0x80)) { in __fex_hdlr() 421 addr = (unsigned long)uap->uc_mcontext.gregs[REG_PC]; in __fex_hdlr() 422 accrued = uap->uc_mcontext.fpregs.fp_reg_set. in __fex_hdlr() 464 accrued |= uap->uc_mcontext.fpregs.fp_reg_set. in __fex_hdlr() [all …]
|
H A D | __fex_i386.c | 140 #define fpreg(u,x) *(long double *)(10*(x)+(char*)&(u)->uc_mcontext.fpregs.fp_reg_set.fpchip_state.… 142 #define fpreg(u,x) *(long double *)(10*(x)+(char*)&(u)->uc_mcontext.fpregs.fp_reg_set.fpchip_state.… 153 sw = uap->uc_mcontext.fpregs.fp_reg_set.fpchip_state.status; in __fex_get_x86_exc() 155 cw = uap->uc_mcontext.fpregs.fp_reg_set.fpchip_state.cw; in __fex_get_x86_exc() 157 cw = uap->uc_mcontext.fpregs.fp_reg_set.fpchip_state.state[CW]; in __fex_get_x86_exc() 246 op = uap->uc_mcontext.fpregs.fp_reg_set.fpchip_state.fop >> 16; in __fex_get_invalid_type() 247 ea = uap->uc_mcontext.fpregs.fp_reg_set.fpchip_state.rdp; in __fex_get_invalid_type() 249 op = uap->uc_mcontext.fpregs.fp_reg_set.fpchip_state.state[OP] >> 16; in __fex_get_invalid_type() 250 ea = uap->uc_mcontext.fpregs.fp_reg_set.fpchip_state.state[EA]; in __fex_get_invalid_type() 579 sw = uap->uc_mcontext.fpregs.fp_reg_set.fpchip_state.status; in __fex_get_op() [all …]
|
H A D | fex_log.c | 239 fp = FRAMEP(uc.uc_mcontext.gregs[REG_SP]); in fex_log_entry() 241 fp = FRAMEP(uc.uc_mcontext.gregs[EBP]); in fex_log_entry() 300 stk = (char*)uap->uc_mcontext.gregs[REG_PC]; in __fex_mklog() 301 fp = FRAMEP(uap->uc_mcontext.gregs[REG_SP]); in __fex_mklog() 303 stk = (char*)uap->uc_mcontext.gregs[REG_PC]; in __fex_mklog() 304 fp = FRAMEP(uap->uc_mcontext.gregs[REG_RBP]); in __fex_mklog() 306 stk = (char*)uap->uc_mcontext.gregs[PC]; in __fex_mklog() 307 fp = FRAMEP(uap->uc_mcontext.gregs[EBP]); in __fex_mklog()
|
H A D | __fex_sparc.c | 49 #define FPreg(X) &uap->uc_mcontext.fpregs.fpu_fr.fpu_regs[X] 51 #define FPREG(X) &uap->uc_mcontext.fpregs.fpu_fr.fpu_dregs[(X>>1)| \ 58 #define FPxreg(X) &((prxregset_t*)uap->uc_mcontext.xrs.xrs_ptr)->pr_un.pr_v8p.pr_xfr.pr_regs[X] 60 #define FPreg(X) &uap->uc_mcontext.fpregs.fpu_fr.fpu_regs[X] 100 instr = uap->uc_mcontext.fpregs.fpu_q->FQu.fpq.fpq_instr; in __fex_get_invalid_type() 194 instr = uap->uc_mcontext.fpregs.fpu_q->FQu.fpq.fpq_instr; in __fex_get_op() 484 instr = uap->uc_mcontext.fpregs.fpu_q->FQu.fpq.fpq_instr; in __fex_st_result() 493 uap->uc_mcontext.fpregs.fpu_fsr |= 0xc00; in __fex_st_result() 496 uap->uc_mcontext.fpregs.fpu_fsr |= (3l << ((rd << 1) + 30)); in __fex_st_result() 498 ((prxregset_t*)uap->uc_mcontext.xrs.xrs_ptr)->pr_un.pr_v8p.pr_xfsr |= (3 << ((rd - 1) << 1)); in __fex_st_result()
|
/illumos-gate/usr/src/lib/libc/amd64/gen/ |
H A D | makectxt.c | 67 ucp->uc_mcontext.gregs[REG_PC] = (greg_t)func; in makecontext() 91 ucp->uc_mcontext.gregs[REG_RDI] = tmp; in makecontext() 94 ucp->uc_mcontext.gregs[REG_RSI] = tmp; in makecontext() 97 ucp->uc_mcontext.gregs[REG_RDX] = tmp; in makecontext() 100 ucp->uc_mcontext.gregs[REG_RCX] = tmp; in makecontext() 103 ucp->uc_mcontext.gregs[REG_R8] = tmp; in makecontext() 106 ucp->uc_mcontext.gregs[REG_R9] = tmp; in makecontext() 118 ucp->uc_mcontext.gregs[REG_SP] = (greg_t)sp; in makecontext()
|
H A D | siglongjmp.c | 50 ucp->uc_mcontext.gregs[REG_R0] = val; in siglongjmp() 52 ucp->uc_mcontext.gregs[REG_R0] = 1; in siglongjmp()
|
/illumos-gate/usr/src/uts/intel/syscall/ |
H A D | getcontext.c | 132 bzero(&ucp->uc_mcontext.fpregs, sizeof (ucontext_t) - in savecontext() 133 offsetof(ucontext_t, uc_mcontext.fpregs)); in savecontext() 190 getgregs(lwp, ucp->uc_mcontext.gregs); in savecontext() 193 getfpregs(lwp, &ucp->uc_mcontext.fpregs); in savecontext() 256 setgregs(lwp, ucp->uc_mcontext.gregs); in restorecontext() 272 setfpregs(lwp, &ucp->uc_mcontext.fpregs); in restorecontext() 361 sizeof (uc.uc_mcontext.fpregs))) { in getsetcontext() 368 copyin(&ucp->uc_mcontext.fpregs, &uc.uc_mcontext.fpregs, in getsetcontext() 369 sizeof (uc.uc_mcontext.fpregs))) { in getsetcontext() 437 bzero(&ucp->uc_mcontext.fpregs, sizeof (ucontext32_t) - in savecontext32() [all …]
|
/illumos-gate/usr/src/cmd/csh/i386/ |
H A D | signal.c | 79 sc.sc_sp = (int) ucp->uc_mcontext.gregs[UESP]; in sigvechandler() 80 sc.sc_pc = (int) ucp->uc_mcontext.gregs[EIP]; in sigvechandler() 81 sc.sc_ps = (int) ucp->uc_mcontext.gregs[EFL]; in sigvechandler() 82 sc.sc_eax = (int) ucp->uc_mcontext.gregs[EAX]; in sigvechandler() 83 sc.sc_edx = (int) ucp->uc_mcontext.gregs[EDX]; in sigvechandler() 110 ucp->uc_mcontext.gregs[UESP] = (int) sc.sc_sp; in sigvechandler() 111 ucp->uc_mcontext.gregs[EIP] = (int) sc.sc_pc; in sigvechandler() 112 ucp->uc_mcontext.gregs[EFL] = (int) sc.sc_ps; in sigvechandler() 113 ucp->uc_mcontext.gregs[EAX] = (int) sc.sc_eax; in sigvechandler() 114 ucp->uc_mcontext.gregs[EDX] = (int) sc.sc_edx; in sigvechandler()
|
/illumos-gate/usr/src/uts/sparc/v9/os/ |
H A D | xregs.c | 56 uc->uc_mcontext.xrs.xrs_id = 0; in xregs_clrptr() 57 uc->uc_mcontext.xrs.xrs_ptr = NULL; in xregs_clrptr() 68 return (uc->uc_mcontext.xrs.xrs_id == XRS_ID); in xregs_hasptr() 78 if (uc->uc_mcontext.xrs.xrs_id == XRS_ID) in xregs_getptr() 79 return (uc->uc_mcontext.xrs.xrs_ptr); in xregs_getptr() 90 uc->uc_mcontext.xrs.xrs_id = XRS_ID; in xregs_setptr() 91 uc->uc_mcontext.xrs.xrs_ptr = xrp; in xregs_setptr() 100 uc->uc_mcontext.xrs.xrs_id = 0; in xregs_clrptr32() 101 uc->uc_mcontext.xrs.xrs_ptr = 0; in xregs_clrptr32() 108 return (uc->uc_mcontext.xrs.xrs_id == XRS_ID); in xregs_hasptr32() [all …]
|
H A D | v9dep.c | 1093 sulword_noerr(&fp->uc.uc_mcontext.gwins, (ulong_t)sp); in sendsig() 1099 sulword_noerr(&fp->uc.uc_mcontext.gwins, (ulong_t)NULL); in sendsig() 1103 sulword_noerr(&fp->uc.uc_mcontext.fpregs.fpu_q, (ulong_t)fqp); in sendsig() 1122 sulword_noerr(&fp->uc.uc_mcontext.fpregs.fpu_q, (ulong_t)NULL); in sendsig() 1123 suword8_noerr(&fp->uc.uc_mcontext.fpregs.fpu_qcnt, 0); in sendsig() 1421 suword32_noerr(&fp->uc.uc_mcontext.gwins, in sendsig32() 1428 suword32_noerr(&fp->uc.uc_mcontext.gwins, 0); in sendsig32() 1438 suword32_noerr(&fp->uc.uc_mcontext.fpregs.fpu_q, in sendsig32() 1458 suword32_noerr(&fp->uc.uc_mcontext.fpregs.fpu_q, 0); in sendsig32() 1459 suword8_noerr(&fp->uc.uc_mcontext.fpregs.fpu_qcnt, 0); in sendsig32() [all …]
|
/illumos-gate/usr/src/lib/libc/amd64/threads/ |
H A D | machdep.c | 77 ucp->uc_mcontext.gregs[REG_FSBASE] = (greg_t)ulwp; in setup_context() 78 ucp->uc_mcontext.gregs[REG_FS] = 0; /* null selector indicates fsbase */ in setup_context() 81 ucp->uc_mcontext.gregs[REG_SS] = UDS_SEL; in setup_context() 92 ucp->uc_mcontext.gregs[REG_RDI] = (greg_t)ulwp; in setup_context() 93 ucp->uc_mcontext.gregs[REG_RIP] = (greg_t)func; in setup_context() 94 ucp->uc_mcontext.gregs[REG_RSP] = (greg_t)stack; in setup_context() 95 ucp->uc_mcontext.gregs[REG_RBP] = (greg_t)(stack + 1); in setup_context() 194 (void) memcpy(ucp->uc_mcontext.gregs, rs, _NGREG * sizeof (greg_t)); in __csigsetjmp()
|
/illumos-gate/usr/src/lib/libc/sparc/threads/ |
H A D | machdep.c | 81 ucp->uc_mcontext.gregs[REG_PC] = (greg_t)func; in setup_context() 82 ucp->uc_mcontext.gregs[REG_nPC] = (greg_t)func + 4; in setup_context() 83 ucp->uc_mcontext.gregs[REG_O0] = (greg_t)ulwp; in setup_context() 84 ucp->uc_mcontext.gregs[REG_SP] = (greg_t)(stack - STACK_BIAS); in setup_context() 85 ucp->uc_mcontext.gregs[REG_O7] = (greg_t)_lwp_start; in setup_context() 86 ucp->uc_mcontext.gregs[REG_G7] = (greg_t)ulwp; in setup_context()
|
/illumos-gate/usr/src/cmd/mdb/intel/amd64/kmdb/ |
H A D | kmdb_makecontext.c | 49 ucp->uc_mcontext.gregs[REG_PC] = (greg_t)func; in kmdb_makecontext() 50 ucp->uc_mcontext.gregs[REG_SP] = (greg_t)stack; in kmdb_makecontext() 51 ucp->uc_mcontext.gregs[REG_RDI] = (greg_t)arg; in kmdb_makecontext()
|
/illumos-gate/usr/src/lib/libc/sparcv9/gen/ |
H A D | _xregs_clrptr.c | 38 uc->uc_mcontext.xrs.xrs_id = 0; in _xregs_clrptr() 39 uc->uc_mcontext.xrs.xrs_ptr = NULL; in _xregs_clrptr()
|
/illumos-gate/usr/src/lib/libc/sparc/gen/ |
H A D | _xregs_clrptr.c | 39 uc->uc_mcontext.xrs.xrs_id = 0; in _xregs_clrptr() 40 uc->uc_mcontext.xrs.xrs_ptr = NULL; in _xregs_clrptr()
|
/illumos-gate/usr/src/lib/libc/i386/gen/ |
H A D | siglongjmp.c | 53 ucp->uc_mcontext.gregs[EAX] = val; in siglongjmp() 55 ucp->uc_mcontext.gregs[EAX] = 1; in siglongjmp()
|
H A D | makectxt.c | 90 ucp->uc_mcontext.gregs[EIP] = (greg_t)func; in makecontext() 106 ucp->uc_mcontext.gregs[UESP] = (greg_t)sp; in makecontext()
|
/illumos-gate/usr/src/uts/sparc/sys/ |
H A D | ucontext.h | 87 mcontext_t uc_mcontext; member 104 mcontext32_t uc_mcontext; member
|
/illumos-gate/usr/src/uts/intel/sys/ |
H A D | ucontext.h | 87 mcontext_t uc_mcontext; member 108 mcontext32_t uc_mcontext; member
|
/illumos-gate/usr/src/lib/libc/port/threads/ |
H A D | sigaction.c | 210 if (sig == SIGFPE && ucp->uc_mcontext.fpregs.fpu_qcnt) { in call_user_handler() 211 fpregset_t *fp = &ucp->uc_mcontext.fpregs; in call_user_handler() 568 uc.uc_mcontext.gregs[REG_G7] = (greg_t)self; in setcontext() 575 uc.uc_mcontext.gregs[REG_FS] = (greg_t)0; in setcontext() 576 uc.uc_mcontext.gregs[REG_FSBASE] = (greg_t)self; in setcontext() 578 uc.uc_mcontext.gregs[GS] = (greg_t)LWPGS_SEL; in setcontext()
|