Changes

Changes from Git (git https://github.com/llvm/llvm-project.git)

Summary

  1. [mlir][VectorOps] Redo the scalar loop emission in VectoToSCF to pad instead of clipping (details)
Commit 239eff502bca64f544f311e7d7a65fdec01cb9c4 by benny.kra
[mlir][VectorOps] Redo the scalar loop emission in VectoToSCF to pad instead of clipping

This replaces the select chain for edge-padding with an scf.if that
performs the memory operation when the index is in bounds and uses the
pad value when it's not. For transfer_write the same mechanism is used,
skipping the store when the index is out of bounds.

The integration test has a bunch of cases of how I believe this should
work.

Differential Revision: https://reviews.llvm.org/D87241
The file was modifiedmlir/integration_test/Dialect/Vector/CPU/test-transfer-to-loops.mlir
The file was modifiedmlir/test/Conversion/VectorToSCF/vector-to-loops.mlir
The file was modifiedmlir/lib/Conversion/VectorToSCF/VectorToSCF.cpp
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp