Revert "An attempt at wiring up the specUpdate interface for the Btb."

This reverts commit 022df36199.
This commit is contained in:
Jonathan Woodruff
2021-12-16 12:10:50 +00:00
parent 022df36199
commit 3322d1d3d7
3 changed files with 2 additions and 21 deletions

View File

@@ -353,11 +353,9 @@ module mkCore#(CoreId coreId)(Core);
end
GlobalSpecUpdate#(CorrectSpecPortNum, ConflictWrongSpecPortNum) globalSpecUpdate <- mkGlobalSpecUpdate(
joinSpeculationUpdate(
append(append(append(vec(fetchStage.specUpdate,
regRenamingTable.specUpdate,
append(append(append(vec(regRenamingTable.specUpdate,
specTagManager.specUpdate,
fix.memExeIfc.specUpdate),
aluSpecUpdate), btqSpecUpdate), fpuMulDivSpecUpdate)
fix.memExeIfc.specUpdate), aluSpecUpdate), fpuMulDivSpecUpdate), btqSpecUpdate)
),
rob.specUpdate
);

View File

@@ -57,7 +57,6 @@ import CCTypes::*;
import DefaultValue::*;
import Ras::*;
import EpochManager::*;
import HasSpecBits::*;
import Performance::*;
import Vector::*;
import Assert::*;
@@ -156,9 +155,6 @@ interface FetchStage;
// performance
interface Perf#(DecStagePerfType) perf;
// speculation update
interface SpeculationUpdate specUpdate;
`ifdef PERFORMANCE_MONITORING
method Bool redirect_evt;
`endif
@@ -1019,15 +1015,6 @@ module mkFetchStage(FetchStage);
`endif
endinterface
interface SpeculationUpdate specUpdate;
method Action correctSpeculation(SpecBits sb);
nextAddrPred.specUpdate.correctSpeculation(sb);
endmethod
method Action incorrectSpeculation(Bool kill_all, SpecTag specTag);
nextAddrPred.specUpdate.incorrectSpeculation(kill_all, specTag);
endmethod
endinterface
`ifdef PERFORMANCE_MONITORING
method Bool redirect_evt = redirect_evt_reg._read;
`endif

View File

@@ -43,7 +43,6 @@ import Vector::*;
import CHERICC_Fat::*;
import CHERICap::*;
import SpecFifo::*;
import HasSpecBits::*;
export NextAddrPred(..);
export mkBtb;
@@ -52,7 +51,6 @@ interface NextAddrPred#(numeric type hashSz);
method Action put_pc(CapMem pc);
interface Vector#(SupSizeX2, Maybe#(CapMem)) pred;
method Action update(CapMem pc, CapMem brTarget, Bool taken, SpecBits specBits);
interface SpeculationUpdate specUpdate;
// security
method Action flush;
method Bool flush_done;
@@ -171,8 +169,6 @@ module mkBtbCore(NextAddrPred#(hashSz))
updateQ.enq(ToSpecFifo {spec_bits: specBits, data: BtbUpdate {pc: pc, nextPc: nextPc, taken: taken}});
endmethod
interface SpeculationUpdate specUpdate = updateQ.specUpdate;
`ifdef SECURITY
method Action flush method Action flush;
for (Integer i = 0; i < valueOf(SupSizeX2); i = i + 1) begin