Configuration: --target=armv7a-none-eabihf -march=v7-a -mthumb -mfloat-abi=hard -mfpu=neon -O3 In vectorize.c: 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 loop induction variable is used outside of the loop. [vectorize.zip](https://github.com/llvm/llvm-project/files/13729421/vectorize.zip)