#include <stdio.h>
#include <string.h>
#include <stdarg.h>
+#include "intr.h"
#include "asmops.h"
struct all_registers {
for(;;) halt_cpu();
}
+
+void backtrace(void)
+{
+ int lvl = 0;
+ uint32_t *frmptr;
+ int ien = get_intr_flag();
+ disable_intr();
+ get_ebp(frmptr);
+ set_intr_flag(ien);
+
+ while(frmptr) {
+ printf("%d: %p\n", lvl++, (void*)frmptr[1]);
+ frmptr = (uint32_t*)*frmptr;
+ }
+}