@@ -629,8 +629,8 @@ Fetch::processCacheCompletion(PacketPtr pkt)
629629 }
630630
631631 // Verify fetchBufferPC alignment with the supplying FSQ entry.
632- if (fetchBuffer[tid].valid && dbpbtb->ftqHasHead ( )) {
633- const auto &stream = dbpbtb->ftqHead ( );
632+ if (fetchBuffer[tid].valid && dbpbtb->ftqHasFetching ( 0 )) {
633+ const auto &stream = dbpbtb->ftqFetchingTarget ( 0 );
634634 if (fetchBuffer[tid].startPC != stream.startPC ) {
635635 panic (" fetchBufferPC %#x should be aligned with FSQ startPC %#x" ,
636636 fetchBuffer[tid].startPC , stream.startPC );
@@ -782,8 +782,8 @@ Fetch::lookupAndUpdateNextPC(const DynInstPtr &inst, PCStateBase &next_pc)
782782 // Decoupled+BTB-only: compute next PC directly from the supplying FSQ entry.
783783 ThreadID tid = inst->threadNumber ;
784784 assert (dbpbtb);
785- assert (dbpbtb->ftqHasHead ( ));
786- const auto &stream = dbpbtb->ftqHead ( );
785+ assert (dbpbtb->ftqHasFetching ( 0 ));
786+ const auto &stream = dbpbtb->ftqFetchingTarget ( 0 );
787787
788788 const Addr curr_pc = next_pc.instAddr ();
789789 assert (stream.startPC <= curr_pc && curr_pc < stream.predEndPC );
@@ -1542,11 +1542,11 @@ Fetch::handleIEWSignals()
15421542 if (!resolveQueue.empty ()) {
15431543 auto &entry = resolveQueue.front ();
15441544 unsigned int stream_id = entry.resolvedFTQId ;
1545- dbpbtb->prepareResolveUpdateEntries (stream_id);
1545+ dbpbtb->prepareResolveUpdateEntries (stream_id, 0 );
15461546 for (const auto resolvedInstPC : entry.resolvedInstPC ) {
1547- dbpbtb->markCFIResolved (stream_id, resolvedInstPC);
1547+ dbpbtb->markCFIResolved (stream_id, resolvedInstPC, 0 );
15481548 }
1549- bool success = dbpbtb->resolveUpdate (stream_id);
1549+ bool success = dbpbtb->resolveUpdate (stream_id, 0 );
15501550 if (success) {
15511551 dbpbtb->notifyResolveSuccess ();
15521552 resolveQueue.pop_front ();
@@ -1565,7 +1565,7 @@ Fetch::handleCommitSignals(ThreadID tid)
15651565 if (fromCommit->commitInfo [tid].doneFtqId ) {
15661566 DPRINTF (DecoupleBP, " Commit stream Id: %lu\n " , fromCommit->commitInfo [tid].doneFtqId );
15671567 assert (dbpbtb);
1568- dbpbtb->update (fromCommit->commitInfo [tid].doneFtqId , tid);
1568+ dbpbtb->commit (fromCommit->commitInfo [tid].doneFtqId , tid);
15691569 }
15701570 return false ;
15711571 }
@@ -1700,8 +1700,8 @@ Fetch::buildInst(ThreadID tid, StaticInstPtr staticInst,
17001700 instruction->isMov ());
17011701 assert (dbpbtb);
17021702 DPRINTF (DecoupleBP, " Set instruction %lu with fetch id %lu\n " ,
1703- instruction->seqNum , dbpbtb->ftqHeadId ());
1704- instruction->setFtqId (dbpbtb->ftqHeadId ());
1703+ instruction->seqNum , dbpbtb->ftqHeadId (0 ));
1704+ instruction->setFtqId (dbpbtb->ftqHeadId (0 ));
17051705
17061706#if TRACING_ON
17071707 if (trace) {
@@ -1757,7 +1757,7 @@ bool
17571757Fetch::checkDecoupledFrontend (ThreadID tid)
17581758{
17591759 assert (dbpbtb);
1760- if (!isTraceMode () && !dbpbtb->ftqHasHead ( )) {
1760+ if (!isTraceMode () && !dbpbtb->ftqHasFetching ( 0 )) {
17611761 dbpbtb->addFtqNotValid ();
17621762 DPRINTF (Fetch, " Skip fetch when FSQ head is not available\n " );
17631763 setAllFetchStalls (StallReason::FTQBubble);
@@ -2051,7 +2051,7 @@ Fetch::sendNextCacheRequest(ThreadID tid, const PCStateBase &pc_state) {
20512051 }
20522052
20532053 assert (dbpbtb);
2054- const auto &stream = dbpbtb->ftqHead ( );
2054+ const auto &stream = dbpbtb->ftqFetchingTarget ( 0 );
20552055 const Addr start_pc = stream.startPC ;
20562056 fetchBuffer[tid].startPC = start_pc;
20572057
0 commit comments