[llvm] [DependenceAnalysis] Extending SIV to handle fusable loops (PR #128782)
via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 17 11:51:45 PDT 2025
================
@@ -663,41 +681,12 @@ void Dependence::dump(raw_ostream &OS) const {
OS << "anti";
else if (isInput())
OS << "input";
- unsigned Levels = getLevels();
- OS << " [";
- for (unsigned II = 1; II <= Levels; ++II) {
- if (isSplitable(II))
- Splitable = true;
- if (isPeelFirst(II))
- OS << 'p';
- const SCEV *Distance = getDistance(II);
- if (Distance)
- OS << *Distance;
- else if (isScalar(II))
- OS << "S";
- else {
- unsigned Direction = getDirection(II);
- if (Direction == DVEntry::ALL)
- OS << "*";
- else {
- if (Direction & DVEntry::LT)
- OS << "<";
- if (Direction & DVEntry::EQ)
- OS << "=";
- if (Direction & DVEntry::GT)
- OS << ">";
- }
- }
- if (isPeelLast(II))
- OS << 'p';
- if (II < Levels)
- OS << " ";
+ dumpImp(OS);
+ unsigned FusableLevels = getFusableLevels();
+ if (FusableLevels > 0) {
+ OS << "! / assuming " << FusableLevels << " fused loop(s): ";
----------------
amehsan wrote:
shouldn't it be `assuming " << FusableLevels << " loop levels fused: ";` ?
https://github.com/llvm/llvm-project/pull/128782
More information about the llvm-commits
mailing list