[all-commits] [llvm/llvm-project] 10d0e2: [InstCombine] Split assume test in expensive and n...
Nikita Popov via All-commits
all-commits at lists.llvm.org
Fri Jan 17 09:01:13 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 10d0e2882bbed5865e9716f6a091dd39facb02d9
https://github.com/llvm/llvm-project/commit/10d0e2882bbed5865e9716f6a091dd39facb02d9
Author: Nikita Popov <nikita.ppv at gmail.com>
Date: 2020-01-17 (Fri, 17 Jan 2020)
Changed paths:
M llvm/test/Transforms/InstCombine/assume.ll
Log Message:
-----------
[InstCombine] Split assume test in expensive and not; NFC
The IR difference in @icmp1 serves as a test for D72864.
Commit: 77befe54f7d72e79f94a3255ae10d529d3b19733
https://github.com/llvm/llvm-project/commit/77befe54f7d72e79f94a3255ae10d529d3b19733
Author: Nikita Popov <nikita.ppv at gmail.com>
Date: 2020-01-17 (Fri, 17 Jan 2020)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/assume.ll
Log Message:
-----------
[InstCombine] Fix worklist management in return combine
There are two related bugs here: First, we don't add the operand
we're replacing to the worklist, which means it may not get DCEd
(see test change). Second, usually this would just get picked up
in the next iteration, but we also do not report the instruction
as changed. This means that we do not get that extra instcombine
iteration, and more importantly, may break the pass pipeline, as
the function is not marked as changed.
Differential Revision: https://reviews.llvm.org/D72864
Compare: https://github.com/llvm/llvm-project/compare/2ca092f32095...77befe54f7d7
More information about the All-commits
mailing list