[PATCH] D39407: [(new) Pass Manager] instantiate SimplifyCFG with the same options as the old PM
Sanjay Patel via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sat Dec 16 07:29:44 PST 2017
spatel added subscribers: bmakam, efriedma.
spatel added a comment.
> Further updating this: Taking the compiler from https://reviews.llvm.org/rL318299 with the new llvm/Transforms/Scalar/SimplifyCFG.h and setting needCanonicalLoops to false fixes the issue; taking the old llvm/Transforms/Scalar/SimplifyCFG.h and setting needCanonicalLoops to true reintroduces the issue. The values of other flags seem to be unrelated to this regression.
>
> With profiling we're particularly seeing slowdowns in the DecompressAllTags<SnappyArrayWriter> function.
Thanks for narrowing it down. I probably can't offer much assistance with the regression for the next few days, but let me provide some backstory for this change and cc some people who might have insight.
This patch is part of a sequence intended to solve:
https://bugs.llvm.org/show_bug.cgi?id=34603
...for **both** pass managers.
The 'NeedCanonicalLoop' portion in question was introduced/discussed in:
https://reviews.llvm.org/D35411
IMO, it was just an oversight that that change only affected the legacy pass manager. That was a carried limitation from the commit that introduced "-latesimplifycfg":
https://reviews.llvm.org/D30333
Repository:
rL LLVM
https://reviews.llvm.org/D39407
More information about the llvm-commits
mailing list