• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /barrelfish-2018-10-04/lib/barrelfish/arch/x86_64/

Lines Matching defs:regs

61  * \param regs Register state snapshot
72 struct registers_x86_64 *regs = archregs;
73 assert_disabled(regs->rip > BASE_PAGE_SIZE);
74 assert_disabled((regs->eflags & USER_EFLAGS) == USER_EFLAGS); // flags
89 "movq 0*8(%[regs]), %%rax \n\t"
90 "movq 2*8(%[regs]), %%rcx \n\t"
91 "movq 3*8(%[regs]), %%rdx \n\t"
92 "movq 4*8(%[regs]), %%rsi \n\t"
93 "movq 5*8(%[regs]), %%rdi \n\t"
94 "movq 6*8(%[regs]), %%rbp \n\t"
95 "movq 8*8(%[regs]), %%r8 \n\t"
96 "movq 9*8(%[regs]), %%r9 \n\t"
97 "movq 10*8(%[regs]), %%r10 \n\t"
98 "movq 11*8(%[regs]), %%r11 \n\t"
99 "movq 12*8(%[regs]), %%r12 \n\t"
100 "movq 13*8(%[regs]), %%r13 \n\t"
101 "movq 14*8(%[regs]), %%r14 \n\t"
102 "movq 15*8(%[regs]), %%r15 \n\t"
104 "pushq 7*8(%[regs]) \n\t" // RSP
105 "pushq 17*8(%[regs]) \n\t" // RFLAGS
107 "pushq 16*8(%[regs]) \n\t" // RIP
108 "movq 1*8(%[regs]), %%rbx \n\t" // RBX was base register
112 [regs] "b" (regs),
115 [fs] "m" (regs->fs),
116 [gs] "m" (regs->gs),
117 [fxsave_area] "m" (regs->fxsave_area)
170 __asm volatile ("movq %%rbp, 6*8(%[regs]) \n\t"
171 "movq %%rsp, 7*8(%[regs]) \n\t"
173 "movq %%rcx, 16*8(%[regs]) \n\t" // RIP
175 "popq 17*8(%[regs]) \n\t" // RFLAGS
183 : [regs] "a" (from_regs),
208 * \param regs Location to save current register state
226 struct registers_x86_64 *regs = state;
234 __asm volatile ("movq %%rbp, 6*8(%[regs]) \n\t"
235 "movq %%rsp, 7*8(%[regs]) \n\t"
237 "movq %%rcx, 16*8(%[regs]) \n\t" // RIP
239 "popq 17*8(%[regs]) \n\t" // RFLAGS
246 : [regs] "a" (regs),
247 [fs] "m" (regs->fs),
248 [fxsave_area] "m" (regs->fxsave_area),
249 [gs] "m" (regs->gs)
285 struct registers_x86_64 *regs = state;
293 __asm volatile ("movq %%rbp, 6*8(%[regs]) \n\t"
294 "movq %%rsp, 7*8(%[regs]) \n\t"
296 "movq %%rcx, 16*8(%[regs]) \n\t" // RIP
298 "popq 17*8(%[regs]) \n\t" // RFLAGS
304 : [regs] "a" (regs),
305 [fs] "m" (regs->fs),
306 [gs] "m" (regs->gs)