forked from OSchip/llvm-project
Correct implementation of -verify-machineinstrs such that it's still overridable for EXPENSIVE_CHECKS
-verify-machineinstrs was implemented as a simple bool. As a result, the 'VerifyMachineCode == cl::BOU_UNSET' used by EXPENSIVE_CHECKS to make it on by default but possible to disable didn't work as intended. Changed -verify-machineinstrs to a boolOrDefault to correct this. llvm-svn: 343696
This commit is contained in:
parent
1c8ed2081f
commit
10dedc00d0
|
@ -108,10 +108,10 @@ static cl::opt<bool> PrintISelInput("print-isel-input", cl::Hidden,
|
|||
cl::desc("Print LLVM IR input to isel pass"));
|
||||
static cl::opt<bool> PrintGCInfo("print-gc", cl::Hidden,
|
||||
cl::desc("Dump garbage collector data"));
|
||||
static cl::opt<bool> VerifyMachineCode("verify-machineinstrs", cl::Hidden,
|
||||
cl::desc("Verify generated machine code"),
|
||||
cl::init(false),
|
||||
cl::ZeroOrMore);
|
||||
static cl::opt<cl::boolOrDefault>
|
||||
VerifyMachineCode("verify-machineinstrs", cl::Hidden,
|
||||
cl::desc("Verify generated machine code"),
|
||||
cl::ZeroOrMore);
|
||||
enum RunOutliner { AlwaysOutline, NeverOutline, TargetDefault };
|
||||
// Enable or disable the MachineOutliner.
|
||||
static cl::opt<RunOutliner> EnableMachineOutliner(
|
||||
|
@ -553,7 +553,7 @@ void TargetPassConfig::addPrintPass(const std::string &Banner) {
|
|||
}
|
||||
|
||||
void TargetPassConfig::addVerifyPass(const std::string &Banner) {
|
||||
bool Verify = VerifyMachineCode;
|
||||
bool Verify = VerifyMachineCode == cl::BOU_TRUE;
|
||||
#ifdef EXPENSIVE_CHECKS
|
||||
if (VerifyMachineCode == cl::BOU_UNSET)
|
||||
Verify = TM->isMachineVerifierClean();
|
||||
|
|
Loading…
Reference in New Issue