From: Sam Parker Date: Thu, 1 Oct 2020 12:37:47 +0000 (+0100) Subject: [NFC][ARM] LowOverheadLoop DEBUG statements X-Git-Tag: llvmorg-13-init~10408 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7e02bc81c6dad90b0f98f74152f4b0991087d78d;p=platform%2Fupstream%2Fllvm.git [NFC][ARM] LowOverheadLoop DEBUG statements --- diff --git a/llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp b/llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp index ac787a1..d642499 100644 --- a/llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp +++ b/llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp @@ -603,8 +603,10 @@ bool LowOverheadLoop::ValidateTailPredicate() { return false; } - if (!VPTState::isValid(RDA)) + if (!VPTState::isValid(RDA)) { + LLVM_DEBUG(dbgs() << "ARM Loops: Invalid VPT state.\n"); return false; + } if (!ValidateLiveOuts()) { LLVM_DEBUG(dbgs() << "ARM Loops: Invalid live outs.\n"); @@ -655,9 +657,13 @@ bool LowOverheadLoop::ValidateTailPredicate() { // instructions in the preheader. auto CannotInsertWDLSTPBetween = [](MachineBasicBlock::iterator I, MachineBasicBlock::iterator E) { - for (; I != E; ++I) - if (shouldInspect(*I)) + for (; I != E; ++I) { + if (shouldInspect(*I)) { + LLVM_DEBUG(dbgs() << "ARM Loops: Instruction blocks [W|D]LSTP" + << " insertion: " << *I); return true; + } + } return false; }; @@ -719,11 +725,17 @@ bool LowOverheadLoop::ValidateTailPredicate() { continue; if (isSubImmOpcode(MI->getOpcode())) { - if (FoundSub || !IsValidSub(MI, ExpectedVectorWidth)) + if (FoundSub || !IsValidSub(MI, ExpectedVectorWidth)) { + LLVM_DEBUG(dbgs() << "ARM Loops: Unexpected instruction in element" + " count: " << *MI); return false; + } FoundSub = true; - } else + } else { + LLVM_DEBUG(dbgs() << "ARM Loops: Unexpected instruction in element" + " count: " << *MI); return false; + } } ToRemove.insert(ElementChain.begin(), ElementChain.end()); } @@ -1082,8 +1094,14 @@ void LowOverheadLoop::Validate(ARMBasicBlockUtils *BBUtils) { Revert = true; return; } - TryAdjustInsertionPoint(StartInsertPt, Start, RDA); + LLVM_DEBUG(if (StartInsertPt == StartInsertBB->end()) + dbgs() << "ARM Loops: Will insert LoopStart at end of block\n"; + else + dbgs() << "ARM Loops: Will insert LoopStart at " + << *StartInsertPt + ); + Revert = !ValidateRanges(Start, End, BBUtils, ML); CannotTailPredicate = !ValidateTailPredicate(); }