llvm: fix vector type in vector_store_elem

Closes #15848
This commit is contained in:
Veikka Tuominen 2023-05-25 15:57:30 +03:00
parent 34865d6938
commit 4a3539e449
2 changed files with 3 additions and 2 deletions

View File

@ -7030,7 +7030,7 @@ pub const FuncGen = struct {
const operand = try self.resolveInst(extra.rhs);
const loaded_vector = blk: {
const elem_llvm_ty = try self.dg.lowerType(vector_ptr_ty.elemType2());
const elem_llvm_ty = try self.dg.lowerType(vector_ptr_ty.childType());
const load_inst = self.builder.buildLoad(elem_llvm_ty, vector_ptr, "");
const target = self.dg.module.getTarget();
load_inst.setAlignment(vector_ptr_ty.ptrAlignment(target));

View File

@ -1296,7 +1296,8 @@ test "store packed vector element" {
var v = @Vector(4, u1){ 1, 1, 1, 1 };
try expectEqual(@Vector(4, u1){ 1, 1, 1, 1 }, v);
v[0] = 0;
var index: usize = 0;
v[index] = 0;
try expectEqual(@Vector(4, u1){ 0, 1, 1, 1 }, v);
}