Lines Matching refs:mpcb

87 	struct machpcb *mpcb;
92 mpcb = lwptompcb(lwp);
140 pfp->fpu_q = mpcb->mpcb_fpu_q;
478 struct machpcb *mpcb = lwptompcb(lwp);
486 if (mpcb->mpcb_wstate == WSTATE_USER32) {
494 mpcb->mpcb_wbcnt = 0;
497 mpcb->mpcb_spbuf[i] = sp;
499 (mpcb->mpcb_wbuf + (i * wbuf_rwindow_size));
504 mpcb->mpcb_wbcnt++;
511 struct machpcb *mpcb = lwptompcb(lwp);
520 if (mpcb->mpcb_wstate == WSTATE_USER32) {
529 mpcb->mpcb_wbcnt = 0;
532 mpcb->mpcb_spbuf[i] = sp;
534 (mpcb->mpcb_wbuf + (i * wbuf_rwindow_size));
539 mpcb->mpcb_wbcnt++;
551 struct machpcb *mpcb = lwptompcb(lwp);
552 int wbcnt = mpcb->mpcb_wbcnt;
559 if (mpcb->mpcb_wstate == WSTATE_USER32) {
569 sp = mpcb->mpcb_spbuf[i];
572 (mpcb->mpcb_wbuf + (i * wbuf_rwindow_size));
583 struct machpcb *mpcb = lwptompcb(lwp);
584 int wbcnt = mpcb->mpcb_wbcnt;
591 if (mpcb->mpcb_wstate == WSTATE_USER32) {
602 sp = mpcb->mpcb_spbuf[i];
604 (mpcb->mpcb_wbuf + (i * wbuf_rwindow_size));
626 struct machpcb *mpcb = lwptompcb(ttolwp(curthread));
636 if (mpcb->mpcb_wstate != WSTATE_USER32)
641 j = mpcb->mpcb_wbcnt;
643 sp = mpcb->mpcb_spbuf[--j];
645 if ((mpcb->mpcb_wstate != WSTATE_USER32) &&
670 err = xcopyout(mpcb->mpcb_wbuf +
678 uint_t *kaddr = (uint_t *)(mpcb->mpcb_wbuf +
701 mpcb->mpcb_wbcnt--;
702 for (k = j; k < mpcb->mpcb_wbcnt; k++) {
703 mpcb->mpcb_spbuf[k] = mpcb->mpcb_spbuf[k+1];
705 mpcb->mpcb_wbuf +
707 mpcb->mpcb_wbuf +
722 struct machpcb *mpcb = lwptompcb(lwp);
728 if (mpcb->mpcb_rsp[0] == NULL) {
743 mpcb->mpcb_rsp[0] = sp1;
744 rwindow_32ton(&rwindow32, &mpcb->mpcb_rwin[0]);
746 mpcb->mpcb_rsp[1] = NULL;
747 if (dotwo && mpcb->mpcb_rsp[0] != NULL &&
748 (sp2 = (caddr_t)mpcb->mpcb_rwin[0].rw_fp) != NULL) {
751 mpcb->mpcb_rsp[1] = sp2;
752 rwindow_32ton(&rwindow32, &mpcb->mpcb_rwin[1]);
754 return (mpcb->mpcb_rsp[0] != NULL);
762 struct machpcb *mpcb;
770 mpcb = lwptompcb(lwp);
772 if (mpcb->mpcb_rsp[0] == NULL) {
774 if ((copyin_nowatch(sp1, &mpcb->mpcb_rwin[0],
776 mpcb->mpcb_rsp[0] = sp1 - STACK_BIAS;
778 mpcb->mpcb_rsp[1] = NULL;
779 if (dotwo && mpcb->mpcb_rsp[0] != NULL &&
780 (sp2 = (caddr_t)mpcb->mpcb_rwin[0].rw_fp) != NULL) {
782 if ((copyin_nowatch(sp2, &mpcb->mpcb_rwin[1],
784 mpcb->mpcb_rsp[1] = sp2 - STACK_BIAS;
786 return (mpcb->mpcb_rsp[0] != NULL);
798 struct machpcb *mpcb = lwptompcb(lwp);
833 mpcb->mpcb_wstate != WSTATE_USER64) {
834 ASSERT(mpcb->mpcb_wbcnt == 0);
835 kmem_cache_free(wbuf32_cache, mpcb->mpcb_wbuf);
836 mpcb->mpcb_wbuf = kmem_cache_alloc(wbuf64_cache, KM_SLEEP);
837 ASSERT(((uintptr_t)mpcb->mpcb_wbuf & 7) == 0);
838 mpcb->mpcb_wstate = WSTATE_USER64;
840 mpcb->mpcb_wstate != WSTATE_USER32) {
841 ASSERT(mpcb->mpcb_wbcnt == 0);
842 kmem_cache_free(wbuf64_cache, mpcb->mpcb_wbuf);
843 mpcb->mpcb_wbuf = kmem_cache_alloc(wbuf32_cache, KM_SLEEP);
844 mpcb->mpcb_wstate = WSTATE_USER32;
846 mpcb->mpcb_pa = va_to_pa(mpcb);
847 mpcb->mpcb_wbuf_pa = va_to_pa(mpcb->mpcb_wbuf);
866 struct machpcb *mpcb = lwptompcb(ttolwp(tp));
868 mpcb->mpcb_pa = va_to_pa(mpcb);
869 mpcb->mpcb_wbuf_pa = va_to_pa(mpcb->mpcb_wbuf);
906 struct machpcb *mpcb;
920 mpcb = lwptompcb(lwp);
926 mpcb->mpcb_rsp[0] = NULL;
927 mpcb->mpcb_rsp[1] = NULL;
950 mpcb = lwptompcb(lwp);
951 if (mpcb->mpcb_wbcnt != 0) {
952 gwin_size = (mpcb->mpcb_wbcnt * sizeof (struct rwindow)) +
993 mpcb->mpcb_wbcnt != 0 &&
1103 copyout_noerr(mpcb->mpcb_fpu_q, fqp, fpq_size);
1114 mpcb->mpcb_fpu->fpu_qcnt = 0;
1118 mpcb->mpcb_flags |= FP_TRAPPED;
1133 if (mpcb->mpcb_wbcnt == 0) {
1151 mpcb->mpcb_wbcnt = 0; /* let user go on */
1237 struct machpcb *mpcb;
1251 mpcb = lwptompcb(lwp);
1257 mpcb->mpcb_rsp[0] = NULL;
1258 mpcb->mpcb_rsp[1] = NULL;
1278 mpcb = lwptompcb(lwp);
1279 if (mpcb->mpcb_wbcnt != 0) {
1280 gwin_size = (mpcb->mpcb_wbcnt * sizeof (struct rwindow32)) +
1323 mpcb->mpcb_wbcnt != 0 &&
1450 mpcb->mpcb_fpu->fpu_qcnt = 0;
1454 mpcb->mpcb_flags |= FP_TRAPPED;
1470 if (mpcb->mpcb_wbcnt == 0) {
1494 mpcb->mpcb_wbcnt = 0; /* let user go on */