[PATCH] D30003: AssumptionCache: Disable the verifier by default, move it behind a hidden cl::opt and verify from releaseMemory().

Hal Finkel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 15 16:36:16 PST 2017


hfinkel added a comment.

In https://reviews.llvm.org/D30003#677903, @sanjoy wrote:

> I guess I'm late to the party here, but checking my assumptions (no pun intended!) -- if `AssumptionCacheTracker::verifyAnalysis` fails after a pass `Frobnicate` then we're in a situation where `opt -frobnicate -other-pass` may have different behavior than `opt -frobnicate | opt -other-pass` (assuming `other-pass` uses `AssumptionCache`), right?  If so, that's troubling.


Yea, the problem is: do you prefer different answers or an assertion failure.  We discussed on IRC that Peter found a number of places where we already don't update the cache and, thus, only luck was preventing hitting asserts later. We should use the flag introduced in this pass to search out and fix these things, but in the mean time, we shouldn't trouble our users with assertion failures.


Repository:
  rL LLVM

https://reviews.llvm.org/D30003





More information about the llvm-commits mailing list