Sirraide wrote:
Er, well this doesn’t look right:
```c++
using i8x3 = _BitInt(32) __attribute__((ext_vector_type(3)));
i8x3 v1(i8x3 a) { return a; }
```
```llvm
%a.addr = alloca <3 x i32>, align 16
%extractVec = shufflevector <3 x i32> %a, <3 x i32> poison, <4 x i32> <i32 0,
i32 1, i32 2, i32 poison>
store <4 x i32> %extractVec, ptr %a.addr, align 16
```
We’re storing a `<4 x i32>` into a `<3 x i32>` alloca; I don’t think that’s
sound, is it?
https://github.com/llvm/llvm-project/pull/117487
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits