| Issue |
76069
|
| Summary |
[clang][LoopVectorize] Inccorrect code generation in case of vectorize_predicate(enable)
|
| Labels |
clang
|
| Assignees |
|
| Reporter |
futog
|
Configuration:
--target=armv7a-none-eabihf -march=v7-a -mthumb -mfloat-abi=hard -mfpu=neon -O3
In vectorize.c:
[vectorize.zip](https://github.com/llvm/llvm-project/files/13729421/vectorize.zip)
var_27 will be set to '1', which is not correct.
The reason is that in BasicBlock for.cond.for.cond.cleanup_crit_edge (pred is middle.block) the arr_14 array is overindexed.
I think that the problem is that tail-fold by masking happens, even though the invariant is used outside of the loop.
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs