[Mlir-commits] [mlir] [mlir][VectorToLLVM] emit `inbounds|nuw` GEP flags when lowering `vector.load/store` (PR #202118)

Federico Bruzzone llvmlistbot at llvm.org
Thu Jun 11 02:34:38 PDT 2026


FedericoBruzzone wrote:

> > The missing flags have two concrete downstream effects:
> > 
> > * Index arithmetic (`llvm.mul/llvm.add`): with no `overflow<nsw,nuw>` annotation SCEV cannot prove the induction-variable computation is monotone, thus loop auto-vectorizer bails out.
> > * GEP: with no `inbounds|nuw`the BasicAliasAnalysis falls back to conservative aliasing, thus further vectorization and alias-based optimizations are blocked.
> 
> Why would this matter if MLIR already generates vectorized code? Genuine question.

Fair point! 
I really want to explain this point as soon as I can (probably later today). Thanks for the question <3

https://github.com/llvm/llvm-project/pull/202118


More information about the Mlir-commits mailing list