diff --git a/tools/bugpoint/Miscompilation.cpp b/tools/bugpoint/Miscompilation.cpp index 7c7d5a3e357..310e2ac0a9d 100644 --- a/tools/bugpoint/Miscompilation.cpp +++ b/tools/bugpoint/Miscompilation.cpp @@ -37,6 +37,10 @@ namespace { DisableLoopExtraction("disable-loop-extraction", cl::desc("Don't extract loops when searching for miscompilations"), cl::init(false)); + static llvm::cl::opt + DisableBlockExtraction("disable-block-extraction", + cl::desc("Don't extract blocks when searching for miscompilations"), + cl::init(false)); class ReduceMiscompilingPasses : public ListReducer { BugDriver &BD; @@ -556,7 +560,7 @@ DebugAMiscompilation(BugDriver &BD, outs() << '\n'; } - if (!BugpointIsInterrupted && + if (!BugpointIsInterrupted && !DisableBlockExtraction && ExtractBlocks(BD, TestFn, MiscompiledFunctions)) { // Okay, we extracted some blocks and the problem still appears. See if we // can eliminate some of the created functions from being candidates.