diff options
author | Peter Mikkelsen <petermikkelsen10@gmail.com> | 2025-07-29 21:40:45 +0200 |
---|---|---|
committer | Peter Mikkelsen <petermikkelsen10@gmail.com> | 2025-07-29 21:40:45 +0200 |
commit | 0a817a5a74c328229f8a732fc3ec22d8fd7dc20d (patch) | |
tree | a5f906687a28420a2ccb29c788e6779f221e7a75 /src/panic.c | |
parent | ca84afb315e813f08d725082320d40969b9f93e4 (diff) |
Some work on keeping track of memory, and providing more info in panics
Diffstat (limited to 'src/panic.c')
-rw-r--r-- | src/panic.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/panic.c b/src/panic.c index 5b17b04..3b39aeb 100644 --- a/src/panic.c +++ b/src/panic.c @@ -3,6 +3,17 @@ void panic(void) { + struct cpu_regs r; + dump_regs(&r); + print(u8"--- PANIC ---\n"); + print(u8"rax: %p rbx: %p rcx: %p rdx: %p\n", r.rax, r.rbx, r.rcx, r.rdx); + print(u8"rsi: %p rdi: %p rsp: %p rbp: %p\n", r.rsi, r.rdi, r.rsp, r.rbp); + print(u8"r8: %p r9: %p r10: %p r11: %p\n", r.r9, r.r9, r.r10, r.r11); + print(u8"r12: %p r13: %p r14: %p r15: %p\n", r.r12, r.r13, r.r14, r.r15); + print(u8"rip: %p cr0: %p cr2: %p cr3: %p\n", r.rip, r.cr0, r.cr2, r.cr3); + print(u8"cr4: %p cr8: %p cs: %p ds: %p\n", r.cr4, r.cr8, r.cs, r.ds); + print(u8"ss: %p es: %p fs: %p gs: %p\n", r.ss, r.es, r.fs, r.gs); + print(u8"rflags: %p\n", r.rflags); halt(); } |