[PATCH] D94576: [LoopVectorize] Guard verifyFunction with EXPENSIVE_CHECKS macro
Florian Hahn via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 13 02:00:14 PST 2021
fhahn added a comment.
> We have found that the calls to verifyFunction can take up to 66% of the time spent in llvm::LoopVectorizePass::processLoop. For some source files, verifyFunction took around 10% of the total compile time.
See also https://bugs.llvm.org/show_bug.cgi?id=47712. I'm curious, where is the time spent in the verifier? PR47712 mentions a regression in the verifier where the majority of time is spent in `visitMDNode`. Is this a similar issue?
In general, I think the function verification has been very valuable in terms of surfacing bugs and I would be very reluctant to move it behind expensive checks, especially since we had this check for a long time. As mentioned in PR47712, I think `verifyFunction` should be `O(# instructions in function)` and not behind `EXPENSIVE_CHECKS`.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D94576/new/
https://reviews.llvm.org/D94576
More information about the llvm-commits
mailing list