aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Object/ObjectFile.cpp
diff options
context:
space:
mode:
authorDavid Green <david.green@arm.com>2023-10-04 09:34:08 +0100
committerGitHub <noreply@github.com>2023-10-04 09:34:08 +0100
commit186c9079d418c5ccf4920fec9540240b630914ba (patch)
tree5d724189a382574ef8b361fb0174c0bf3119d0cf /llvm/lib/Object/ObjectFile.cpp
parentc2ff180d5f2313d6fe2f9a1bda919da34d05ca66 (diff)
downloadllvm-186c9079d418c5ccf4920fec9540240b630914ba.zip
llvm-186c9079d418c5ccf4920fec9540240b630914ba.tar.gz
llvm-186c9079d418c5ccf4920fec9540240b630914ba.tar.bz2
[InstCombine] Expand redundant phi cycle elimination (#67968)
There is a combine in instcombine that will look for phi cycles that only have a single incoming value: ``` %0 = phi i64 [ %3, %exit ], [ %othervalue, %preheader ] %3 = phi i64 [ %0, %body ], [ %othervalue, %body2 ] ``` This currently doesn't handle if %othervalue is a phi though, as the algorithm will recurse into the phi and fail with multiple incoming values. This adjusts the algorithm, not requiring the initial value to be found immediately, allowing it to be set to the value of one of the phis that would otherwise fail due to having multiple input values.
Diffstat (limited to 'llvm/lib/Object/ObjectFile.cpp')
0 files changed, 0 insertions, 0 deletions