[llvm] r230861 - Fixup for recent -fast-isel-abort change: code didn't match description
Mehdi Amini
mehdi.amini at apple.com
Sat Feb 28 11:34:54 PST 2015
Author: mehdi_amini
Date: Sat Feb 28 13:34:54 2015
New Revision: 230861
URL: http://llvm.org/viewvc/llvm-project?rev=230861&view=rev
Log:
Fixup for recent -fast-isel-abort change: code didn't match description
Level 1 should abort for all instructions but call/terminators/args.
Instead it was aborting only if the level was > 2
From: Mehdi Amini <mehdi.amini at apple.com>
Modified:
llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
Modified: llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp?rev=230861&r1=230860&r2=230861&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp (original)
+++ llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp Sat Feb 28 13:34:54 2015
@@ -1282,16 +1282,19 @@ void SelectionDAGISel::SelectAllBasicBlo
continue;
}
+ bool ShouldAbort = EnableFastISelAbort;
if (EnableFastISelVerbose || EnableFastISelAbort) {
if (isa<TerminatorInst>(Inst)) {
// Use a different message for terminator misses.
dbgs() << "FastISel missed terminator: ";
+ // Don't abort unless for terminator unless the level is really high
+ ShouldAbort = (EnableFastISelAbort > 2);
} else {
dbgs() << "FastISel miss: ";
}
Inst->dump();
}
- if (EnableFastISelAbort > 2)
+ if (ShouldAbort)
// FastISel selector couldn't handle something and bailed.
// For the purpose of debugging, just abort.
llvm_unreachable("FastISel didn't select the entire block");
More information about the llvm-commits
mailing list