[all-commits] [llvm/llvm-project] fca699: [AArch64] Fix a minor issue with AArch64LoopIdiomT...
David Sherwood via All-commits
all-commits at lists.llvm.org
Wed Jan 17 06:30:18 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: fca6992be1f272f5e997bd510ca03c9389550c13
https://github.com/llvm/llvm-project/commit/fca6992be1f272f5e997bd510ca03c9389550c13
Author: David Sherwood <57997763+david-arm at users.noreply.github.com>
Date: 2024-01-17 (Wed, 17 Jan 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64LoopIdiomTransform.cpp
M llvm/test/Transforms/LoopIdiom/AArch64/byte-compare-index.ll
Log Message:
-----------
[AArch64] Fix a minor issue with AArch64LoopIdiomTransform (#78136)
I found another case where in the end block we could have a PHI that we
deal with incorrectly. The two incoming values are unique - one of them
is
the induction variable and another one is a value defined outside the
loop, e.g.
%final_val = phi i32 [ %inc, %while.body ], [ %d, %while.cond ]
We won't correctly select between the two values in the new end block
that
we create and so we will get the wrong result.
More information about the All-commits
mailing list