1 #include <lunaix/trace.h>
4 trace_print_transistion_short(struct hart_state* hstate)
6 trace_log(" trigger: iv=%d, ecause=%p",
7 hart_vector_stamp(hstate),
12 trace_print_transition_full(struct hart_state* hstate)
14 trace_log("hart state transition");
15 trace_log(" vector=%d, ecause=0x%x",
16 hart_vector_stamp(hstate),
18 trace_log(" eflags=0x%x", hstate->execp->eflags);
19 trace_log(" sp=%p, [seg_sel=0x%04x]",
22 trace_log(" ip=%p, seg_sel=0x%04x",
28 trace_dump_state(struct hart_state* hstate)
30 struct regcontext* rh = &hstate->registers;
31 struct exec_param* ep = hstate->execp;
32 trace_log("hart state dump (depth=%d)", hstate->depth);
33 trace_log(" eax=0x%08x, ebx=0x%08x, ecx=0x%08x",
34 rh->eax, rh->ebx, rh->ecx);
35 trace_log(" edx=0x%08x, ebp=0x%08x",
37 trace_log(" ds=0x%04x, edi=0x%08x",
39 trace_log(" es=0x%04x, esi=0x%08x",
41 trace_log(" fs=0x%04x, gs=0x%x",
43 trace_log(" cs=0x%04x, ip=0x%08x",
45 trace_log(" [ss=0x%04x],sp=0x%08x",
47 trace_log(" eflags=0x%08x",