[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