Skip to content

Commit

Permalink
pk: remove vestigial trapframe_t::insn field
Browse files Browse the repository at this point in the history
This assumes that stval is populated with the opcode on illegal
instruction exceptions.  But since we're only using the opcode for
error reporting, it's OK if this assumption is violated.
  • Loading branch information
aswaterman committed Mar 29, 2021
1 parent c09d4af commit fe4118a
Show file tree
Hide file tree
Showing 4 changed files with 1 addition and 14 deletions.
3 changes: 1 addition & 2 deletions pk/console.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,7 @@ void dump_tf(trapframe_t* tf)
for(int j = 0; j < 4; j++)
printk("%s %lx%c", get_regname(i+j), tf->gpr[i+j], j < 3 ? ' ' : '\n');
}
printk("pc %lx va %lx insn %x sr %lx\n", tf->epc, tf->badvaddr,
(uint32_t)tf->insn, tf->status);
printk("pc %lx va/inst %lx sr %lx\n", tf->epc, tf->badvaddr, tf->status);
}

void do_panic(const char* s, ...)
Expand Down
4 changes: 0 additions & 4 deletions pk/entry.S
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,6 @@
STORE t1,33*REGBYTES(x2)
STORE t2,34*REGBYTES(x2)
STORE t3,35*REGBYTES(x2)

# get faulting insn, if it wasn't a fetch-related trap
li x5,-1
STORE x5,36*REGBYTES(x2)
1:
.endm

Expand Down
7 changes: 0 additions & 7 deletions pk/handlers.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,6 @@ static void handle_store_access_fault(trapframe_t *tf)

static void handle_illegal_instruction(trapframe_t* tf)
{
tf->insn = *(uint16_t*)tf->epc;
int len = insn_len(tf->insn);
if (len == 4)
tf->insn |= ((uint32_t)*(uint16_t*)(tf->epc + 2) << 16);
else
kassert(len == 2);

dump_tf(tf);
panic("An illegal instruction was executed!");
}
Expand Down
1 change: 0 additions & 1 deletion pk/pk.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ typedef struct
long epc;
long badvaddr;
long cause;
long insn;
} trapframe_t;

#define panic(s,...) do { do_panic(s"\n", ##__VA_ARGS__); } while(0)
Expand Down

0 comments on commit fe4118a

Please sign in to comment.