[MemorySSA] Expose the verify as a debug option.

Summary: Expose VerifyMemorySSA as a debug option. If set, passes will call the MSSA->verifyMemorySSA() after calling into the updater's APIs when MemorySSA should be valid.

Reviewers: george.burgess.iv

Subscribers: sanjoy, jlebar, Prazek, llvm-commits

Differential Revision: https://reviews.llvm.org/D50749

llvm-svn: 339795
This commit is contained in:
Alina Sbirlea 2018-08-15 17:34:55 +00:00
parent c7510aa2ac
commit cc2e8ccc6f
2 changed files with 13 additions and 3 deletions

View File

@ -94,6 +94,10 @@ extern bool VerifyDomInfo;
///
extern bool VerifyLoopInfo;
/// Enables verification of MemorySSA.
///
extern bool VerifyMemorySSA;
///\}
/// EnableDebugBuffering - This defaults to false. If true, the debug

View File

@ -77,9 +77,15 @@ static cl::opt<unsigned> MaxCheckLimit(
cl::desc("The maximum number of stores/phis MemorySSA"
"will consider trying to walk past (default = 100)"));
static cl::opt<bool>
VerifyMemorySSA("verify-memoryssa", cl::init(false), cl::Hidden,
cl::desc("Verify MemorySSA in legacy printer pass."));
// Always verify MemorySSA if expensive checking is enabled.
#ifdef EXPENSIVE_CHECKS
bool llvm::VerifyMemorySSA = true;
#else
bool llvm::VerifyMemorySSA = false;
#endif
static cl::opt<bool, true>
VerifyMemorySSAX("verify-memoryssa", cl::location(VerifyMemorySSA),
cl::Hidden, cl::desc("Enable verification of MemorySSA."));
namespace llvm {