[PATCH] D98628: [MCA] Disable RCU for InOrderIssueStage
Andrea Di Biagio via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Mar 15 05:37:25 PDT 2021
andreadb requested changes to this revision.
andreadb added a comment.
This revision now requires changes to proceed.
There is nothing wrong with using a dummy RCU for the InOrderIssue stage.
The RCUtokenID is always stored in the instruction at dispatch time. You don't need any changes to pre-existing dispatch stage APIs (and listeners).
Note that your code still does this:
unsigned RCUTokenID = RetireControlUnit::UnhandledTokenID;
IS.dispatch(RCUTokenID);
Your check on `TotalROBEntries` is fine. However, RetireControlUnitStatistics could (and probably should) be disabled for in-order processors (since it doesn't really makes sense).
Excluding those API changes which I don't particularly like, the other changes look mostly harmless and are basically a NFC restructuring.
I strongly suggest that we focus on fixing D98604 <https://reviews.llvm.org/D98604> first.
Once D98604 <https://reviews.llvm.org/D98604> is fixed, then you can update this patch and discuss the changes to RetireControlUnitStatistics (and whether those make any sense in practice for in-order processors). I don't think that we should touch the dispatch stage, nor the event associated to it.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D98628/new/
https://reviews.llvm.org/D98628
More information about the llvm-commits
mailing list