Revert unwanted MMIOInst diff in e7fbf32b38
This stopped unmapped addresses from faulting, instead giving back a list of all Invalid entries, triggering the "Fetched insts not enough" assertion in FetchStage's doDecode. Fixes rv64mi-p-access.
This commit is contained in:
@@ -77,13 +77,15 @@ module mkMMIOInst(MMIOInst);
|
||||
|
||||
method InstFetchTarget getFetchTarget(Addr phyPc);
|
||||
let addr = getDataAlignedAddr(phyPc);
|
||||
if(addr >= mainMemBaseAddr && (addr < mainMemBoundAddr) &&
|
||||
addr != toHostAddr && addr != fromHostAddr)
|
||||
begin
|
||||
return MainMem;
|
||||
end
|
||||
if (soc_map.m_is_IO_addr (phyPc)) begin
|
||||
return IODevice;
|
||||
end
|
||||
else if(addr >= mainMemBaseAddr && (addr < mainMemBoundAddr) &&
|
||||
addr != toHostAddr && addr != fromHostAddr) begin
|
||||
return MainMem;
|
||||
end
|
||||
else begin
|
||||
return IODevice;
|
||||
return Fault;
|
||||
end
|
||||
endmethod
|
||||
|
||||
|
||||
Reference in New Issue
Block a user