[mlir][llvm] Add vector insert/extract intrinsics
authorJavier Setoain <javier.setoain@gmail.com>
Mon, 6 Jun 2022 10:55:04 +0000 (11:55 +0100)
committerJavier Setoain <javier.setoain@gmail.com>
Mon, 27 Jun 2022 13:12:18 +0000 (14:12 +0100)
commitf39c2a11428313c6643464f75645ad6cf2cf1ea7
tree5e490f883b7f008b6a55f4d0c81614568a903fda
parent1466d65d9bbf7117ade258a80ef3bdfaff41ffde
[mlir][llvm] Add vector insert/extract intrinsics

These intrinsics will be needed to convert between fixed-length vectors
and scalable vectors.

This operation will be needed for VLS (vector-length specific)
vectorization, when interfacing with vector functions or intrinsics that
take scalable vectors as operands in a context where the length of our
vectors is known or assumed at compile time, but we still want to
generate scalable vector instructions.

Differential Revision: https://reviews.llvm.org/D127100
mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td
mlir/test/Dialect/LLVMIR/invalid.mlir
mlir/test/Dialect/LLVMIR/roundtrip.mlir
mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir