Lines Matching refs:tf

122 	struct trapframe *tf;
143 tf = td->td_frame;
144 oonstack = sigonstack(tf->fixreg[1]);
151 ksi->ksi_info.si_addr = (void *)((tf->exc == EXC_DSI) ?
152 tf->cpu.aim.dar : tf->srr0);
154 ksi->ksi_info.si_addr = (void *)((tf->exc == EXC_DSI) ?
155 tf->cpu.booke.dear : tf->srr0);
225 usfp = (void *)(tf->fixreg[1] - rndfsize);
249 tf->lr = (register_t)catcher;
250 tf->fixreg[1] = (register_t)usfp;
251 tf->fixreg[FIRSTARG] = sig;
253 tf->fixreg[FIRSTARG+2] = (register_t)usfp +
258 tf->fixreg[FIRSTARG+2] = (register_t)usfp +
268 tf->fixreg[FIRSTARG+1] = (register_t)usfp +
273 tf->fixreg[FIRSTARG+1] = (register_t)usfp +
281 tf->fixreg[FIRSTARG+1] = code;
283 tf->fixreg[FIRSTARG+3] = (tf->exc == EXC_DSI) ?
284 tf->cpu.aim.dar : tf->srr0;
286 tf->fixreg[FIRSTARG+3] = (tf->exc == EXC_DSI) ?
287 tf->cpu.booke.dear : tf->srr0;
293 tf->srr0 = (register_t)p->p_sysent->sv_sigcode_base;
308 tf->srr0, tf->fixreg[1]);
356 makectx(struct trapframe *tf, struct pcb *pcb)
359 pcb->pcb_lr = tf->srr0;
360 pcb->pcb_sp = tf->fixreg[1];
443 struct trapframe *tf;
447 tf = td->td_frame;
456 if ((mcp->mc_srr1 & PSL_USERSTATIC) != (tf->srr1 & PSL_USERSTATIC)) {
463 tls = tf->fixreg[13];
465 tls = tf->fixreg[2];
466 memcpy(tf, mcp->mc_frame, sizeof(mcp->mc_frame));
468 tf->fixreg[13] = tls;
470 tf->fixreg[2] = tls;
504 struct trapframe *tf;
510 tf = trapframe(td);
511 bzero(tf, sizeof *tf);
513 tf->fixreg[1] = -roundup(-stack + 48, 16);
515 tf->fixreg[1] = -roundup(-stack + 8, 16);
544 tf->fixreg[3] = argc;
545 tf->fixreg[4] = stack + sizeof(register_t);
546 tf->fixreg[5] = stack + (2 + argc)*sizeof(register_t);
547 tf->fixreg[6] = 0; /* auxillary vector */
548 tf->fixreg[7] = 0; /* termination vector */
549 tf->fixreg[8] = (register_t)imgp->ps_strings; /* NetBSD extension */
561 tf->srr0 = entry_desc[0] + imgp->reloc_base;
562 tf->fixreg[2] = entry_desc[1] + imgp->reloc_base;
563 tf->fixreg[11] = entry_desc[2] + imgp->reloc_base;
564 tf->srr1 = PSL_SF | PSL_USERSET | PSL_FE_DFLT;
566 tf->srr1 |= PSL_HV;
568 tf->srr0 = imgp->entry_addr;
569 tf->srr1 = PSL_USERSET | PSL_FE_DFLT;
578 struct trapframe *tf;
581 tf = trapframe(td);
582 bzero(tf, sizeof *tf);
583 tf->fixreg[1] = -roundup(-stack + 8, 16);
589 tf->fixreg[3] = argc;
590 tf->fixreg[4] = stack + sizeof(uint32_t);
591 tf->fixreg[5] = stack + (2 + argc)*sizeof(uint32_t);
592 tf->fixreg[6] = 0; /* auxillary vector */
593 tf->fixreg[7] = 0; /* termination vector */
594 tf->fixreg[8] = (register_t)imgp->ps_strings; /* NetBSD extension */
596 tf->srr0 = imgp->entry_addr;
597 tf->srr1 = PSL_MBO | PSL_USERSET | PSL_FE_DFLT;
598 tf->srr1 &= ~PSL_SF;
600 tf->srr1 |= PSL_HV;
608 struct trapframe *tf;
610 tf = td->td_frame;
611 memcpy(regs, tf, sizeof(struct reg));
641 struct trapframe *tf;
643 tf = td->td_frame;
644 memcpy(tf, regs, sizeof(struct reg));
675 struct trapframe *tf;
678 tf = td->td_frame;
680 tf->fixreg[i] = regs->fixreg[i];
681 tf->lr = regs->lr;
682 tf->cr = regs->cr;
683 tf->xer = regs->xer;
684 tf->ctr = regs->ctr;
685 tf->srr0 = regs->pc;
693 struct trapframe *tf;
696 tf = td->td_frame;
698 regs->fixreg[i] = tf->fixreg[i];
699 regs->lr = tf->lr;
700 regs->cr = tf->cr;
701 regs->xer = tf->xer;
702 regs->ctr = tf->ctr;
703 regs->pc = tf->srr0;
874 struct trapframe *tf;
881 tf = td->td_frame;
883 if (tf->fixreg[0] == SYS___syscall &&
885 int code = tf->fixreg[FIRSTARG + 1];
899 tf->fixreg[FIRSTARG] = 0;
900 tf->fixreg[FIRSTARG + 1] = td->td_retval[0];
902 tf->fixreg[FIRSTARG] = td->td_retval[0];
903 tf->fixreg[FIRSTARG + 1] = td->td_retval[1];
905 tf->cr &= ~0x10000000; /* Unset summary overflow */
911 tf->srr0 -= 4;
918 tf->fixreg[FIRSTARG] = error;
919 tf->cr |= 0x10000000; /* Set summary overflow */
968 struct trapframe *tf;
977 tf = td->td_frame;
978 bcopy(td0->td_frame, tf, sizeof(struct trapframe));
979 tf->fixreg[FIRSTARG] = 0;
980 tf->fixreg[FIRSTARG + 1] = 0;
981 tf->cr &= ~0x10000000;
984 cf = (struct callframe *)tf - 1;
988 cf->cf_arg1 = (register_t)tf;
1008 struct trapframe *tf;
1011 tf = td->td_frame;
1020 bzero(tf, sizeof(struct trapframe));
1022 tf->fixreg[1] = (register_t)sp;
1023 tf->fixreg[3] = (register_t)arg;
1025 tf->srr0 = (register_t)entry;
1027 tf->srr1 = PSL_MBO | PSL_USERSET | PSL_FE_DFLT;
1029 tf->srr1 &= ~PSL_SF;
1032 tf->srr1 = PSL_USERSET;
1038 tf->srr0 = entry_desc[0];
1039 tf->fixreg[2] = entry_desc[1];
1040 tf->fixreg[11] = entry_desc[2];
1041 tf->srr1 = PSL_SF | PSL_MBO | PSL_USERSET | PSL_FE_DFLT;
1047 tf->srr1 |= PSL_HV;