[PATCH] D91362: [SelectionDAG] Add llvm.vector.{extract,insert} intrinsics
Cameron McInally via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 12 10:17:20 PST 2020
cameron.mcinally added inline comments.
================
Comment at: llvm/docs/LangRef.rst:15995
+ declare <4 x float> @llvm.vector.insert.v4f32(<4 x float> %subvec, <4 x float> %vec, i64 %idx)
+ declare <2 x double> @llvm.vector.insert.v2f64(<2 x double> %subvec, <2 x double> %vec, i64 %idx)
+
----------------
sdesmalen wrote:
> Can you add/change the example for inserting a fixed-width vector into a scalable vector. That is one of the main reasons for adding this intrinsic.
This caught me off guard. What are the semantics of:
```
declare <4 x float> @llvm.vector.insert.v4f32(<4 x float> %subvec, <4 x float> %vec, i64 %idx)
```
Is that a full vector copy? I would have expected the subvector VL to be strictly less than the destination VL. E.g.:
```
declare <4 x float> @llvm.vector.insert.v2f32.v4f32(<2 x float> %subvec, <4 x float> %vec, i64 %idx)
```
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D91362/new/
https://reviews.llvm.org/D91362
More information about the llvm-commits
mailing list