849c575f97
* d10v-sim.h (simops): Add flag is_long. (State): Add pc_changed. Instructions which update the PC should use the JMP macro which sets this. (JMP): New macro. Sets the PC and the pc_changed flag. * gencode.c (write_opcodes): Add is_long field. * interp.c (lookup_hash): If we blindly apply a short opcode's mask to a long opcode we could get a false match. Check the opcode size. (hash): Add a size field to the hash table. (sim_open): Initialize size field in hash table. (sim_resume): Change to logic for setting the PC. Used to increment the PC if it had not been changed. This didn't allow single-instruction loops. Now checks the flag State.pc_changed. Also now stops when ^C is received. (dmem_addr): Fix translation of data segments to unified memory. (sim_ctrl_c): New function. When ^C is received, set stop_simulator flag. * simops.c: Changed all branch and jump instructions to use new JMP macro. (OP_20000000): Corrected trace information to show this is a ldi.l, not a ldi.s instruction. |
||
---|---|---|
.. | ||
.Sanitize | ||
ChangeLog | ||
configure | ||
configure.in | ||
d10v_sim.h | ||
endian.c | ||
gencode.c | ||
interp.c | ||
Makefile.in | ||
simops.c |