Home
last modified time | relevance | path

Searched refs:rip (Results 1 – 11 of 11) sorted by relevance

/DragonOS-0.1.8/kernel/src/exception/
Dentry.S121 leaq do_divide_error(%rip), %rax // 获取中断服务程序的地址
130 leaq do_debug(%rip), %rax // 获取中断服务程序的地址
141 leaq do_nmi(%rip), %rax
149 leaq do_int3(%rip), %rax // 获取中断服务程序的地址
157 leaq do_overflow(%rip), %rax // 获取中断服务程序的地址
165 leaq do_bounds(%rip), %rax // 获取中断服务程序的地址
173 leaq do_undefined_opcode(%rip), %rax // 获取中断服务程序的地址
181 leaq do_dev_not_avaliable(%rip), %rax // 获取中断服务程序的地址
188 leaq do_double_fault(%rip), %rax // 获取中断服务程序的地址
196 leaq do_coprocessor_segment_overrun(%rip), %rax // 获取中断服务程序的地址
[all …]
Dtrap.c16 regs->rsp, regs->rip, proc_current_cpu_id, current_pcb->pid); in do_divide_error()
27 …tError Code:%#18lx,\tRSP:%#18lx,\tRIP:%#18lx\t CPU:%d, pid:%d\n", error_code, regs->rsp, regs->rip, in do_debug()
40 …nmi(2),\tError Code:%#18lx,\tRSP:%#18lx,\tRIP:%#18lx\t CPU:%d\n", error_code, regs->rsp, regs->rip, in do_nmi()
53 …nt3(3),\tError Code:%#18lx,\tRSP:%#18lx,\tRIP:%#18lx\t CPU:%d\n", error_code, regs->rsp, regs->rip, in do_int3()
67 regs->rip, proc_current_cpu_id); in do_overflow()
77 …nds(5),\tError Code:%#18lx,\tRSP:%#18lx,\tRIP:%#18lx\t CPU:%d\n", error_code, regs->rsp, regs->rip, in do_bounds()
89 regs->rsp, regs->rip, proc_current_cpu_id, current_pcb->pid); in do_undefined_opcode()
100 regs->rip, proc_current_cpu_id, current_pcb->pid); in do_dev_not_avaliable()
113 regs->rip, proc_current_cpu_id); in do_double_fault()
124 regs->rsp, regs->rip, proc_current_cpu_id); in do_coprocessor_segment_overrun()
[all …]
/DragonOS-0.1.8/kernel/src/
Dhead.S217 movq switch_to_start64(%rip), %rax
246 lgdt GDT_POINTER(%rip) //这里我没搞明白rip相对寻址, 看了文档,大概是用来实现PIC的(position independent code)
249 lidt IDT_POINTER(%rip)
251 movq GDT_POINTER(%rip), %r12
252 movq head_stack_start(%rip), %rsp
322 movq switch_seg(%rip), %rax
343 movq head_stack_start(%rip), %rsp //rsp的地址
346 leaq GDT_Table(%rip), %r8
347 leaq GDT_END(%rip), %r9
352 leaq IDT_Table(%rip), %r8
[all …]
/DragonOS-0.1.8/kernel/src/process/
Dptrace.h26 unsigned long rip; member
Dprocess.h68 … : "=m"(prev->thread->rsp), "=m"(prev->thread->rip) \
69 … : "m"(next->thread->rsp), "m"(next->thread->rip), "D"(prev), "S"(next) \
Dfork.c286 thd->rip = (uint64_t)ret_from_intr; in process_copy_thread()
288 thd->rip = (uint64_t)kernel_thread_func; in process_copy_thread()
290 thd->rip = (uint64_t)ret_from_intr; in process_copy_thread()
Dprocess.c205 current_pcb->thread->rip = (ul)ret_from_intr; in initial_kernel_thread()
224 "m"(current_pcb->thread->rsp), "m"(current_pcb->thread->rip), "c"(NULL), in initial_kernel_thread()
301 regs.rip = (ul)kernel_thread_func; in kernel_thread()
Dproc-types.h49 ul rip; member
/DragonOS-0.1.8/kernel/src/debug/traceback/
Dtraceback.c50 uint64_t ret_addr = regs->rip; in traceback()
/DragonOS-0.1.8/kernel/src/ipc/
Dsignal.rs664 regs.rip = unsafe { ka._u._sa_handler }; in setup_frame()
669 if regs.rip >= USER_MAX_LINEAR_ADDR { in setup_frame()
676 regs.rip = 0; in setup_frame()
/DragonOS-0.1.8/kernel/src/arch/x86_64/
Dsyscall.rs248 regs.rip = load_result.entry_point().data() as u64; in tmp_rs_execve()