[MemorySSA] Combine verifications.
authorAlina Sbirlea <asbirlea@google.com>
Fri, 22 Nov 2019 22:12:28 +0000 (14:12 -0800)
committerAlina Sbirlea <asbirlea@google.com>
Tue, 26 Nov 2019 00:05:38 +0000 (16:05 -0800)
commit14a2bbb1ff9439b798f29e5ae63a6f9240a72983
tree625d1cc95efc2fabe0727a56c5e0c382d3204336
parent5906fb682da1a037061dae146254a7b79d648604
[MemorySSA] Combine verifications.

Summary:
Combine three verification methods into one to improve compile time when asserts are enabled.
Motivated by PR44066.

Sample change of timings on testcase in PR44066 (release+asserts):
MSSA off or verification disabled: 1.13s.
MSSA on (ToT): 2.48s.
With patch: 2.03s.
With enabling DefUses after combining Domination+Ordering: 2.6s.
After also combining DefUses with Domination+Ordering: 2.06s (candidate to be taken out of EXPENSIVE_CHECKS).

Subscribers: Prazek, hiraditya, george.burgess.iv, sanjoy.google, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D70618
llvm/include/llvm/Analysis/MemorySSA.h
llvm/lib/Analysis/MemorySSA.cpp