[llvm] r353852 - [MCA] Improved debug prints. NFC
Andrea Di Biagio via llvm-commits
llvm-commits at lists.llvm.org
Tue Feb 12 08:18:57 PST 2019
Author: adibiagio
Date: Tue Feb 12 08:18:57 2019
New Revision: 353852
URL: http://llvm.org/viewvc/llvm-project?rev=353852&view=rev
Log:
[MCA] Improved debug prints. NFC
Modified:
llvm/trunk/include/llvm/MCA/Support.h
llvm/trunk/lib/MCA/Stages/ExecuteStage.cpp
llvm/trunk/lib/MCA/Support.cpp
Modified: llvm/trunk/include/llvm/MCA/Support.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MCA/Support.h?rev=353852&r1=353851&r2=353852&view=diff
==============================================================================
--- llvm/trunk/include/llvm/MCA/Support.h (original)
+++ llvm/trunk/include/llvm/MCA/Support.h Tue Feb 12 08:18:57 2019
@@ -60,24 +60,13 @@ public:
return (Denominator == 1) ? Numerator : (double)Numerator / Denominator;
}
+ unsigned getNumerator() const { return Numerator; }
+ unsigned getDenominator() const { return Denominator; }
+
// Add the components of RHS to this instance. Instead of calculating
// the final value here, we keep track of the numerator and denominator
// separately, to reduce floating point error.
- ResourceCycles &operator+=(const ResourceCycles &RHS) {
- if (Denominator == RHS.Denominator)
- Numerator += RHS.Numerator;
- else {
- // Create a common denominator for LHS and RHS by calculating the least
- // common multiple from the GCD.
- unsigned GCD = GreatestCommonDivisor64(Denominator, RHS.Denominator);
- unsigned LCM = (Denominator * RHS.Denominator) / GCD;
- unsigned LHSNumerator = Numerator * (LCM / Denominator);
- unsigned RHSNumerator = RHS.Numerator * (LCM / RHS.Denominator);
- Numerator = LHSNumerator + RHSNumerator;
- Denominator = LCM;
- }
- return *this;
- }
+ ResourceCycles &operator+=(const ResourceCycles &RHS);
};
/// Populates vector Masks with processor resource masks.
Modified: llvm/trunk/lib/MCA/Stages/ExecuteStage.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MCA/Stages/ExecuteStage.cpp?rev=353852&r1=353851&r2=353852&view=diff
==============================================================================
--- llvm/trunk/lib/MCA/Stages/ExecuteStage.cpp (original)
+++ llvm/trunk/lib/MCA/Stages/ExecuteStage.cpp Tue Feb 12 08:18:57 2019
@@ -188,9 +188,10 @@ void ExecuteStage::notifyInstructionIssu
LLVM_DEBUG({
dbgs() << "[E] Instruction Issued: #" << IR << '\n';
for (const std::pair<ResourceRef, ResourceCycles> &Resource : Used) {
+ assert(Resource.second.getDenominator() == 1 && "Invalid cycles!");
dbgs() << "[E] Resource Used: [" << Resource.first.first << '.'
<< Resource.first.second << "], ";
- dbgs() << "cycles: " << Resource.second << '\n';
+ dbgs() << "cycles: " << Resource.second.getNumerator() << '\n';
}
});
Modified: llvm/trunk/lib/MCA/Support.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MCA/Support.cpp?rev=353852&r1=353851&r2=353852&view=diff
==============================================================================
--- llvm/trunk/lib/MCA/Support.cpp (original)
+++ llvm/trunk/lib/MCA/Support.cpp Tue Feb 12 08:18:57 2019
@@ -20,6 +20,22 @@ namespace mca {
#define DEBUG_TYPE "llvm-mca"
+ResourceCycles &ResourceCycles::operator+=(const ResourceCycles &RHS) {
+ if (Denominator == RHS.Denominator)
+ Numerator += RHS.Numerator;
+ else {
+ // Create a common denominator for LHS and RHS by calculating the least
+ // common multiple from the GCD.
+ unsigned GCD = GreatestCommonDivisor64(Denominator, RHS.Denominator);
+ unsigned LCM = (Denominator * RHS.Denominator) / GCD;
+ unsigned LHSNumerator = Numerator * (LCM / Denominator);
+ unsigned RHSNumerator = RHS.Numerator * (LCM / RHS.Denominator);
+ Numerator = LHSNumerator + RHSNumerator;
+ Denominator = LCM;
+ }
+ return *this;
+}
+
void computeProcResourceMasks(const MCSchedModel &SM,
MutableArrayRef<uint64_t> Masks) {
unsigned ProcResourceID = 0;
@@ -56,8 +72,9 @@ void computeProcResourceMasks(const MCSc
<< "\n");
for (unsigned I = 0, E = SM.getNumProcResourceKinds(); I < E; ++I) {
const MCProcResourceDesc &Desc = *SM.getProcResource(I);
- LLVM_DEBUG(dbgs() << '[' << I << "] " << Desc.Name << " - " << Masks[I]
- << '\n');
+ LLVM_DEBUG(dbgs() << '[' << format_decimal(I,2) << "] " << " - "
+ << format_hex(Masks[I],16) << " - "
+ << Desc.Name << '\n');
}
#endif
}
More information about the llvm-commits
mailing list