Full RVFI flow-control integration with Toooba's flow control.

This enables us to run all test classes successfully.
This commit is contained in:
Jonathan Woodruff
2019-12-18 15:49:42 +00:00
parent 909423e8e8
commit f101ad129e
6 changed files with 170 additions and 48 deletions

View File

@@ -316,7 +316,11 @@ module mkCore#(CoreId coreId)(Core);
"; ", fshow(spec_tag), "; ", fshow(inst_tag));
end
epochManager.incrementEpoch;
fetchStage.redirect(new_pc);
fetchStage.redirect(new_pc
`ifdef RVFI_DII
, inst_tag.diid + 1
`endif
);
globalSpecUpdate.incorrectSpec(False, spec_tag, inst_tag);
endmethod
method correctSpec = globalSpecUpdate.correctSpec[finishAluCorrectSpecPort(i)].put;
@@ -931,7 +935,11 @@ module mkCore#(CoreId coreId)(Core);
Bit#(64) startpc,
Addr toHostAddr, Addr fromHostAddr
);
fetchStage.start(startpc);
fetchStage.start(startpc
`ifdef RVFI_DII
, 0
`endif
);
started <= True;
mmio.setHtifAddrs(toHostAddr, fromHostAddr);
// start rename debug