@@ -170,7 +170,8 @@ bool SpikeCosim::backdoor_read_mem(uint32_t addr, size_t len,
170170// processor, and when we call step() again we start executing in the new
171171// context of the trap (trap handler, new MSTATUS, debug rom, etc. etc.)
172172bool SpikeCosim::step (uint32_t write_reg, uint32_t write_reg_data, uint32_t pc,
173- bool sync_trap, bool suppress_reg_write) {
173+ bool sync_trap, bool suppress_reg_write,
174+ uint32_t expanded_insn) {
174175 assert (write_reg < 32 );
175176
176177 // The DUT has just produced an RVFI item
@@ -320,7 +321,8 @@ bool SpikeCosim::step(uint32_t write_reg, uint32_t write_reg_data, uint32_t pc,
320321
321322bool SpikeCosim::check_retired_instr (uint32_t write_reg,
322323 uint32_t write_reg_data, uint32_t dut_pc,
323- bool suppress_reg_write) {
324+ bool suppress_reg_write,
325+ uint32_t expanded_insn) {
324326 // Check the retired instruction and all of its side-effects match those from
325327 // the DUT
326328
@@ -355,7 +357,8 @@ bool SpikeCosim::check_retired_instr(uint32_t write_reg,
355357 assert (!gpr_write_seen);
356358
357359 if (!suppress_reg_write &&
358- !check_gpr_write (reg_change, write_reg, write_reg_data)) {
360+ !check_gpr_write (reg_change, write_reg, write_reg_data,
361+ expanded_insn)) {
359362 return false ;
360363 }
361364
@@ -433,7 +436,8 @@ bool SpikeCosim::check_sync_trap(uint32_t write_reg, uint32_t dut_pc,
433436}
434437
435438bool SpikeCosim::check_gpr_write (const commit_log_reg_t ::value_type ®_change,
436- uint32_t write_reg, uint32_t write_reg_data) {
439+ uint32_t write_reg, uint32_t write_reg_data,
440+ uint32_t expanded_insn) {
437441 uint32_t cosim_write_reg = (reg_change.first >> 4 ) & 0x1f ;
438442
439443 if (write_reg == 0 ) {
0 commit comments