@@ -1457,36 +1457,14 @@ LSQUnit::storePipeS1(const DynInstPtr &inst, std::bitset<LdStFlagNum> &flag)
1457
1457
}
1458
1458
1459
1459
Fault
1460
- LSQUnit::storePipeS2 (const DynInstPtr &inst, std::bitset<LdStFlagNum> &flag)
1460
+ LSQUnit::emptyStorePipeSx (const DynInstPtr &inst, std::bitset<LdStFlagNum> &flag, uint64_t stage )
1461
1461
{
1462
+ // empty store pipe stage, Does not perform any operation
1462
1463
Fault fault = inst->getFault ();
1463
1464
assert (!inst->isSquashed ());
1464
1465
1465
- DPRINTF (LSQUnit, " StorePipeS2: Executing store PC %s [sn:%lli] flags: %s\n " ,
1466
- inst->pcState (), inst->seqNum , getLdStFlagStr (flag));
1467
- return fault;
1468
- }
1469
-
1470
- Fault
1471
- LSQUnit::storePipeS3 (const DynInstPtr &inst, std::bitset<LdStFlagNum> &flag)
1472
- {
1473
- Fault fault = inst->getFault ();
1474
- assert (!inst->isSquashed ());
1475
-
1476
- DPRINTF (LSQUnit, " StorePipeS3: Executing store PC %s [sn:%lli] flags: %s\n " ,
1477
- inst->pcState (), inst->seqNum , getLdStFlagStr (flag));
1478
- return fault;
1479
- }
1480
-
1481
- Fault
1482
- LSQUnit::storePipeS4 (const DynInstPtr &inst, std::bitset<LdStFlagNum> &flag)
1483
- {
1484
- Fault fault = inst->getFault ();
1485
- assert (!inst->isSquashed ());
1486
-
1487
- DPRINTF (LSQUnit, " StorePipeS4: Executing store PC %s [sn:%lli] flags: %s\n " ,
1488
- inst->pcState (), inst->seqNum , getLdStFlagStr (flag));
1489
-
1466
+ DPRINTF (LSQUnit, " StorePipeS%d: Executing store PC %s [sn:%lli] flags: %s\n " ,
1467
+ stage, inst->pcState (), inst->seqNum , getLdStFlagStr (flag));
1490
1468
return fault;
1491
1469
}
1492
1470
@@ -1521,13 +1499,9 @@ LSQUnit::executeStorePipeSx()
1521
1499
iewStage->SquashCheckAfterExe (inst);
1522
1500
break ;
1523
1501
case 2 :
1524
- fault = storePipeS2 (inst, flag);
1525
- break ;
1526
1502
case 3 :
1527
- fault = storePipeS3 (inst, flag);
1528
- break ;
1529
1503
case 4 :
1530
- fault = storePipeS4 (inst, flag);
1504
+ fault = emptyStorePipeSx (inst, flag, i );
1531
1505
break ;
1532
1506
default :
1533
1507
panic (" unsupported storepipe length" );
@@ -2551,33 +2525,37 @@ LSQUnit::recvRetry()
2551
2525
void
2552
2526
LSQUnit::dumpLoadPipe ()
2553
2527
{
2554
- DPRINTF (LSQUnit, " Dumping LoadPipe:\n " );
2555
- for (int i = 0 ; i < loadPipeSx.size (); i++) {
2556
- DPRINTF (LSQUnit, " Load S%d:, size: %d\n " , i, loadPipeSx[i]->size );
2557
- for (int j = 0 ; j < loadPipeSx[i]->size ; j++) {
2558
- DPRINTF (LSQUnit, " PC: %s, [tid:%i] [sn:%lli] flags: %s\n " ,
2559
- loadPipeSx[i]->insts [j]->pcState (),
2560
- loadPipeSx[i]->insts [j]->threadNumber ,
2561
- loadPipeSx[i]->insts [j]->seqNum ,
2562
- getLdStFlagStr (loadPipeSx[i]->flags [j])
2563
- );
2528
+ if (GEM5_UNLIKELY (::gem5::debug::LSQUnit)) {
2529
+ DPRINTFN (" Dumping LoadPipe:\n " );
2530
+ for (int i = 0 ; i < loadPipeSx.size (); i++) {
2531
+ DPRINTFN (" Load S%d:, size: %d\n " , i, loadPipeSx[i]->size );
2532
+ for (int j = 0 ; j < loadPipeSx[i]->size ; j++) {
2533
+ DPRINTFN (" PC: %s, [tid:%i] [sn:%lli] flags: %s\n " ,
2534
+ loadPipeSx[i]->insts [j]->pcState (),
2535
+ loadPipeSx[i]->insts [j]->threadNumber ,
2536
+ loadPipeSx[i]->insts [j]->seqNum ,
2537
+ getLdStFlagStr (loadPipeSx[i]->flags [j])
2538
+ );
2539
+ }
2564
2540
}
2565
2541
}
2566
2542
}
2567
2543
2568
2544
void
2569
2545
LSQUnit::dumpStorePipe ()
2570
2546
{
2571
- DPRINTF (LSQUnit, " Dumping StorePipe:\n " );
2572
- for (int i = 0 ; i < storePipeSx.size (); i++) {
2573
- DPRINTF (LSQUnit, " Store S%d:, size: %d\n " , i, storePipeSx[i]->size );
2574
- for (int j = 0 ; j < storePipeSx[i]->size ; j++) {
2575
- DPRINTF (LSQUnit, " PC: %s, [tid:%i] [sn:%lli] flags: %s\n " ,
2576
- storePipeSx[i]->insts [j]->pcState (),
2577
- storePipeSx[i]->insts [j]->threadNumber ,
2578
- storePipeSx[i]->insts [j]->seqNum ,
2579
- getLdStFlagStr (storePipeSx[i]->flags [j])
2580
- );
2547
+ if (GEM5_UNLIKELY (::gem5::debug::LSQUnit)) {
2548
+ DPRINTFN (" Dumping StorePipe:\n " );
2549
+ for (int i = 0 ; i < storePipeSx.size (); i++) {
2550
+ DPRINTFN (" Store S%d:, size: %d\n " , i, storePipeSx[i]->size );
2551
+ for (int j = 0 ; j < storePipeSx[i]->size ; j++) {
2552
+ DPRINTFN (" PC: %s, [tid:%i] [sn:%lli] flags: %s\n " ,
2553
+ storePipeSx[i]->insts [j]->pcState (),
2554
+ storePipeSx[i]->insts [j]->threadNumber ,
2555
+ storePipeSx[i]->insts [j]->seqNum ,
2556
+ getLdStFlagStr (storePipeSx[i]->flags [j])
2557
+ );
2558
+ }
2581
2559
}
2582
2560
}
2583
2561
}
0 commit comments