@@ -81,29 +81,9 @@ namespace gem5
8181namespace o3
8282{
8383
84- namespace
85- {
86-
8784constexpr uint8_t RvcInstBytes = 2 ;
8885constexpr uint8_t BaseInstBytes = 4 ;
8986
90- void
91- trimResolveTrainInstsAfterTaken (Fetch::ResolveTrainQueueEntry &entry)
92- {
93- auto first_taken = std::find_if (
94- entry.insts .begin (), entry.insts .end (),
95- [](const Fetch::ResolveTrainInstData &inst_data) {
96- return inst_data.taken ;
97- });
98- if (first_taken == entry.insts .end ()) {
99- return ;
100- }
101-
102- entry.insts .erase (std::next (first_taken), entry.insts .end ());
103- }
104-
105- } // anonymous namespace
106-
10787Fetch::IcachePort::IcachePort (Fetch *_fetch, CPU *_cpu) :
10888 RequestPort (_cpu->name () + ".icache_port", _cpu), fetch(_fetch)
10989{}
@@ -1657,6 +1637,21 @@ Fetch::appendResolveTrainInst(
16571637 trimResolveTrainInstsAfterTaken (entry);
16581638}
16591639
1640+ void
1641+ Fetch::trimResolveTrainInstsAfterTaken (ResolveTrainQueueEntry &entry)
1642+ {
1643+ auto first_taken = std::find_if (
1644+ entry.insts .begin (), entry.insts .end (),
1645+ [](const ResolveTrainInstData &inst_data) {
1646+ return inst_data.taken ;
1647+ });
1648+ if (first_taken == entry.insts .end ()) {
1649+ return ;
1650+ }
1651+
1652+ entry.insts .erase (std::next (first_taken), entry.insts .end ());
1653+ }
1654+
16601655void
16611656Fetch::filterResolveTrainQueue ()
16621657{
0 commit comments