diff options
author | trimill <trimill@trimillxyz.org> | 2024-02-03 00:37:02 -0500 |
---|---|---|
committer | trimill <trimill@trimillxyz.org> | 2024-02-03 00:45:47 -0500 |
commit | 6d7a563d368241cb074cb356dd2fafa8c6d7115a (patch) | |
tree | 1046e13cc4580d3b75a614652cbdd3ab941e7da2 /src/arch/amd64/backtrace.c | |
parent | pretty colors (diff) | |
download | corn-6d7a563d368241cb074cb356dd2fafa8c6d7115a.tar.gz corn-6d7a563d368241cb074cb356dd2fafa8c6d7115a.tar.bz2 corn-6d7a563d368241cb074cb356dd2fafa8c6d7115a.zip |
improved debugger, refactored
Diffstat (limited to '')
-rw-r--r-- | src/arch/amd64/backtrace.c | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/src/arch/amd64/backtrace.c b/src/arch/amd64/backtrace.c index a5e8ffd..9e1c9d7 100644 --- a/src/arch/amd64/backtrace.c +++ b/src/arch/amd64/backtrace.c @@ -1,6 +1,5 @@ #include <backtrace.h> #include <lib.h> -#include "serial.h" struct stackframe { struct stackframe *rbp; @@ -36,17 +35,10 @@ void log_backtrace() { void log_backtrace_ex(void *ip, void *bp) { struct stackframe *frame = bp; - char buf[20]; - serial_out_str("Stack trace:\n"); - ultoa((size_t)ip, buf, 16); - serial_out_str(" 0x"); - serial_out_str(buf); - serial_out_str("\n"); + kputs("Stack trace:\n"); + kprintf(" %#lx\n", (size_t)ip); while (frame) { - ultoa((size_t)frame->rip, buf, 16); - serial_out_str(" 0x"); - serial_out_str(buf); - serial_out_str("\n"); + kprintf(" %#lx\n", (size_t)frame->rip); frame = frame->rbp; } |