[all-commits] [llvm/llvm-project] 3e6c38: [SimplifyCFG] Rerun PHI deduplication after common...
Roman Lebedev via All-commits
all-commits at lists.llvm.org
Thu Jul 15 06:35:37 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 3e6c383dc63685a6248fd6f1ffabad0b42af99a0
https://github.com/llvm/llvm-project/commit/3e6c383dc63685a6248fd6f1ffabad0b42af99a0
Author: Roman Lebedev <lebedev.ri at gmail.com>
Date: 2021-07-15 (Thu, 15 Jul 2021)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Transforms/PGOProfile/cspgo_profile_summary.ll
M llvm/test/Transforms/PhaseOrdering/X86/earlycse-after-simplifycfg-two-entry-phi-node-folding.ll
M llvm/test/Transforms/SimplifyCFG/X86/sink-common-code.ll
Log Message:
-----------
[SimplifyCFG] Rerun PHI deduplication after common code sinkinkg (PR51092)
`SinkCommonCodeFromPredecessors()` doesn't itself ensure that duplicate PHI nodes aren't created.
I suppose, we could teach it to do that on-the-fly (& account for the already-existing PHI nodes,
& adjust costmodel), the diff will be bigger than this.
The alternative is to schedule a new EarlyCSE pass invocation somewhere later in the pipeline.
Clearly, we don't have any EarlyCSE runs in module optimization passline, so this pattern isn't cleaned up...
That would perhaps better, but it will again have some compile time impact.
Reviewed By: RKSimon
Differential Revision: https://reviews.llvm.org/D106010
More information about the All-commits
mailing list