Lines Matching refs:regs

151 	struct trapframe *regs;  in linux_rt_sendsig()  local
162 regs = td->td_frame; in linux_rt_sendsig()
163 oonstack = sigonstack(regs->tf_rsp); in linux_rt_sendsig()
171 fp = (struct l_rt_sigframe *)regs->tf_rsp - 1; in linux_rt_sendsig()
198 frame.sf_uc.uc_mcontext.sc_edi = regs->tf_rdi; in linux_rt_sendsig()
199 frame.sf_uc.uc_mcontext.sc_esi = regs->tf_rsi; in linux_rt_sendsig()
200 frame.sf_uc.uc_mcontext.sc_ebp = regs->tf_rbp; in linux_rt_sendsig()
201 frame.sf_uc.uc_mcontext.sc_ebx = regs->tf_rbx; in linux_rt_sendsig()
202 frame.sf_uc.uc_mcontext.sc_esp = regs->tf_rsp; in linux_rt_sendsig()
203 frame.sf_uc.uc_mcontext.sc_edx = regs->tf_rdx; in linux_rt_sendsig()
204 frame.sf_uc.uc_mcontext.sc_ecx = regs->tf_rcx; in linux_rt_sendsig()
205 frame.sf_uc.uc_mcontext.sc_eax = regs->tf_rax; in linux_rt_sendsig()
206 frame.sf_uc.uc_mcontext.sc_eip = regs->tf_rip; in linux_rt_sendsig()
207 frame.sf_uc.uc_mcontext.sc_cs = regs->tf_cs; in linux_rt_sendsig()
208 frame.sf_uc.uc_mcontext.sc_gs = regs->tf_gs; in linux_rt_sendsig()
209 frame.sf_uc.uc_mcontext.sc_fs = regs->tf_fs; in linux_rt_sendsig()
210 frame.sf_uc.uc_mcontext.sc_es = regs->tf_es; in linux_rt_sendsig()
211 frame.sf_uc.uc_mcontext.sc_ds = regs->tf_ds; in linux_rt_sendsig()
212 frame.sf_uc.uc_mcontext.sc_eflags = regs->tf_rflags; in linux_rt_sendsig()
213 frame.sf_uc.uc_mcontext.sc_esp_at_signal = regs->tf_rsp; in linux_rt_sendsig()
214 frame.sf_uc.uc_mcontext.sc_ss = regs->tf_ss; in linux_rt_sendsig()
215 frame.sf_uc.uc_mcontext.sc_err = regs->tf_err; in linux_rt_sendsig()
229 regs->tf_rsp = PTROUT(fp); in linux_rt_sendsig()
230 regs->tf_rip = linux32_vdso_rt_sigcode; in linux_rt_sendsig()
231 regs->tf_rdi = PTROUT(catcher); in linux_rt_sendsig()
232 regs->tf_rflags &= ~(PSL_T | PSL_D); in linux_rt_sendsig()
233 regs->tf_cs = _ucode32sel; in linux_rt_sendsig()
234 regs->tf_ss = _udatasel; in linux_rt_sendsig()
235 regs->tf_ds = _udatasel; in linux_rt_sendsig()
236 regs->tf_es = _udatasel; in linux_rt_sendsig()
237 regs->tf_fs = _ufssel; in linux_rt_sendsig()
238 regs->tf_gs = _ugssel; in linux_rt_sendsig()
239 regs->tf_flags = TF_HASSEGS; in linux_rt_sendsig()
261 struct trapframe *regs; in linux_sendsig() local
278 regs = td->td_frame; in linux_sendsig()
279 oonstack = sigonstack(regs->tf_rsp); in linux_sendsig()
287 fp = (struct l_sigframe *)regs->tf_rsp - 1; in linux_sendsig()
302 frame.sf_sc.sc_gs = regs->tf_gs; in linux_sendsig()
303 frame.sf_sc.sc_fs = regs->tf_fs; in linux_sendsig()
304 frame.sf_sc.sc_es = regs->tf_es; in linux_sendsig()
305 frame.sf_sc.sc_ds = regs->tf_ds; in linux_sendsig()
306 frame.sf_sc.sc_edi = regs->tf_rdi; in linux_sendsig()
307 frame.sf_sc.sc_esi = regs->tf_rsi; in linux_sendsig()
308 frame.sf_sc.sc_ebp = regs->tf_rbp; in linux_sendsig()
309 frame.sf_sc.sc_ebx = regs->tf_rbx; in linux_sendsig()
310 frame.sf_sc.sc_esp = regs->tf_rsp; in linux_sendsig()
311 frame.sf_sc.sc_edx = regs->tf_rdx; in linux_sendsig()
312 frame.sf_sc.sc_ecx = regs->tf_rcx; in linux_sendsig()
313 frame.sf_sc.sc_eax = regs->tf_rax; in linux_sendsig()
314 frame.sf_sc.sc_eip = regs->tf_rip; in linux_sendsig()
315 frame.sf_sc.sc_cs = regs->tf_cs; in linux_sendsig()
316 frame.sf_sc.sc_eflags = regs->tf_rflags; in linux_sendsig()
317 frame.sf_sc.sc_esp_at_signal = regs->tf_rsp; in linux_sendsig()
318 frame.sf_sc.sc_ss = regs->tf_ss; in linux_sendsig()
319 frame.sf_sc.sc_err = regs->tf_err; in linux_sendsig()
333 regs->tf_rsp = PTROUT(fp); in linux_sendsig()
334 regs->tf_rip = linux32_vdso_sigcode; in linux_sendsig()
335 regs->tf_rdi = PTROUT(catcher); in linux_sendsig()
336 regs->tf_rflags &= ~(PSL_T | PSL_D); in linux_sendsig()
337 regs->tf_cs = _ucode32sel; in linux_sendsig()
338 regs->tf_ss = _udatasel; in linux_sendsig()
339 regs->tf_ds = _udatasel; in linux_sendsig()
340 regs->tf_es = _udatasel; in linux_sendsig()
341 regs->tf_fs = _ufssel; in linux_sendsig()
342 regs->tf_gs = _ugssel; in linux_sendsig()
343 regs->tf_flags = TF_HASSEGS; in linux_sendsig()
363 struct trapframe *regs; in linux_sigreturn() local
367 regs = td->td_frame; in linux_sigreturn()
379 if (!EFL_SECURE(eflags, regs->tf_rflags)) in linux_sigreturn()
392 ksi.ksi_addr = (void *)regs->tf_rip; in linux_sigreturn()
400 regs->tf_rdi = frame.sf_sc.sc_edi; in linux_sigreturn()
401 regs->tf_rsi = frame.sf_sc.sc_esi; in linux_sigreturn()
402 regs->tf_rbp = frame.sf_sc.sc_ebp; in linux_sigreturn()
403 regs->tf_rbx = frame.sf_sc.sc_ebx; in linux_sigreturn()
404 regs->tf_rdx = frame.sf_sc.sc_edx; in linux_sigreturn()
405 regs->tf_rcx = frame.sf_sc.sc_ecx; in linux_sigreturn()
406 regs->tf_rax = frame.sf_sc.sc_eax; in linux_sigreturn()
407 regs->tf_rip = frame.sf_sc.sc_eip; in linux_sigreturn()
408 regs->tf_cs = frame.sf_sc.sc_cs; in linux_sigreturn()
409 regs->tf_ds = frame.sf_sc.sc_ds; in linux_sigreturn()
410 regs->tf_es = frame.sf_sc.sc_es; in linux_sigreturn()
411 regs->tf_fs = frame.sf_sc.sc_fs; in linux_sigreturn()
412 regs->tf_gs = frame.sf_sc.sc_gs; in linux_sigreturn()
413 regs->tf_rflags = eflags; in linux_sigreturn()
414 regs->tf_rsp = frame.sf_sc.sc_esp_at_signal; in linux_sigreturn()
415 regs->tf_ss = frame.sf_sc.sc_ss; in linux_sigreturn()
439 struct trapframe *regs; in linux_rt_sigreturn() local
443 regs = td->td_frame; in linux_rt_sigreturn()
457 if (!EFL_SECURE(eflags, regs->tf_rflags)) in linux_rt_sigreturn()
470 ksi.ksi_addr = (void *)regs->tf_rip; in linux_rt_sigreturn()
481 regs->tf_gs = context->sc_gs; in linux_rt_sigreturn()
482 regs->tf_fs = context->sc_fs; in linux_rt_sigreturn()
483 regs->tf_es = context->sc_es; in linux_rt_sigreturn()
484 regs->tf_ds = context->sc_ds; in linux_rt_sigreturn()
485 regs->tf_rdi = context->sc_edi; in linux_rt_sigreturn()
486 regs->tf_rsi = context->sc_esi; in linux_rt_sigreturn()
487 regs->tf_rbp = context->sc_ebp; in linux_rt_sigreturn()
488 regs->tf_rbx = context->sc_ebx; in linux_rt_sigreturn()
489 regs->tf_rdx = context->sc_edx; in linux_rt_sigreturn()
490 regs->tf_rcx = context->sc_ecx; in linux_rt_sigreturn()
491 regs->tf_rax = context->sc_eax; in linux_rt_sigreturn()
492 regs->tf_rip = context->sc_eip; in linux_rt_sigreturn()
493 regs->tf_cs = context->sc_cs; in linux_rt_sigreturn()
494 regs->tf_rflags = eflags; in linux_rt_sigreturn()
495 regs->tf_rsp = context->sc_esp_at_signal; in linux_rt_sigreturn()
496 regs->tf_ss = context->sc_ss; in linux_rt_sigreturn()
573 struct trapframe *regs = td->td_frame; in linux_exec_setregs() local
577 regs = td->td_frame; in linux_exec_setregs()
591 saved_rflags = regs->tf_rflags & PSL_T; in linux_exec_setregs()
592 bzero((char *)regs, sizeof(struct trapframe)); in linux_exec_setregs()
593 regs->tf_rip = imgp->entry_addr; in linux_exec_setregs()
594 regs->tf_rsp = stack; in linux_exec_setregs()
595 regs->tf_rflags = PSL_USER | saved_rflags; in linux_exec_setregs()
596 regs->tf_gs = _ugssel; in linux_exec_setregs()
597 regs->tf_fs = _ufssel; in linux_exec_setregs()
598 regs->tf_es = _udatasel; in linux_exec_setregs()
599 regs->tf_ds = _udatasel; in linux_exec_setregs()
600 regs->tf_ss = _udatasel; in linux_exec_setregs()
601 regs->tf_flags = TF_HASSEGS; in linux_exec_setregs()
602 regs->tf_cs = _ucode32sel; in linux_exec_setregs()
603 regs->tf_rbx = (register_t)imgp->ps_strings; in linux_exec_setregs()