aboutsummaryrefslogtreecommitdiff
path: root/src/arch
diff options
context:
space:
mode:
authorVeikka Tuominen <git@vexu.eu>2022-12-15 20:34:26 +0200
committerAndrew Kelley <andrew@ziglang.org>2022-12-15 21:06:35 -0500
commit8a0a6b7387fcd0017db85de14793abfd6ec7f6e5 (patch)
tree75382432d967dd5cff1fa5aaded940a627b8df7b /src/arch
parent0d92fcf6a503780dcaadccef87e72824c7942a96 (diff)
downloadzig-8a0a6b7387fcd0017db85de14793abfd6ec7f6e5.tar.gz
zig-8a0a6b7387fcd0017db85de14793abfd6ec7f6e5.zip
port packed vector elem ptr logic from stage1
Closes #12812 Closes #13925
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/aarch64/CodeGen.zig1
-rw-r--r--src/arch/arm/CodeGen.zig1
-rw-r--r--src/arch/riscv64/CodeGen.zig1
-rw-r--r--src/arch/sparc64/CodeGen.zig1
-rw-r--r--src/arch/wasm/CodeGen.zig2
-rw-r--r--src/arch/x86_64/CodeGen.zig1
6 files changed, 7 insertions, 0 deletions
diff --git a/src/arch/aarch64/CodeGen.zig b/src/arch/aarch64/CodeGen.zig
index e09664598a..8c87a005d5 100644
--- a/src/arch/aarch64/CodeGen.zig
+++ b/src/arch/aarch64/CodeGen.zig
@@ -873,6 +873,7 @@ fn genBody(self: *Self, body: []const Air.Inst.Index) InnerError!void {
.is_named_enum_value => return self.fail("TODO implement is_named_enum_value", .{}),
.error_set_has_value => return self.fail("TODO implement error_set_has_value", .{}),
+ .vector_store_elem => return self.fail("TODO implement vector_store_elem", .{}),
.wasm_memory_size => unreachable,
.wasm_memory_grow => unreachable,
diff --git a/src/arch/arm/CodeGen.zig b/src/arch/arm/CodeGen.zig
index 8197d85b48..9d6d18d5c9 100644
--- a/src/arch/arm/CodeGen.zig
+++ b/src/arch/arm/CodeGen.zig
@@ -783,6 +783,7 @@ fn genBody(self: *Self, body: []const Air.Inst.Index) InnerError!void {
.is_named_enum_value => return self.fail("TODO implement is_named_enum_value", .{}),
.error_set_has_value => return self.fail("TODO implement error_set_has_value", .{}),
+ .vector_store_elem => return self.fail("TODO implement vector_store_elem", .{}),
.wasm_memory_size => unreachable,
.wasm_memory_grow => unreachable,
diff --git a/src/arch/riscv64/CodeGen.zig b/src/arch/riscv64/CodeGen.zig
index 58661926bb..24e24076f7 100644
--- a/src/arch/riscv64/CodeGen.zig
+++ b/src/arch/riscv64/CodeGen.zig
@@ -697,6 +697,7 @@ fn genBody(self: *Self, body: []const Air.Inst.Index) InnerError!void {
.is_named_enum_value => return self.fail("TODO implement is_named_enum_value", .{}),
.error_set_has_value => return self.fail("TODO implement error_set_has_value", .{}),
+ .vector_store_elem => return self.fail("TODO implement vector_store_elem", .{}),
.wasm_memory_size => unreachable,
.wasm_memory_grow => unreachable,
diff --git a/src/arch/sparc64/CodeGen.zig b/src/arch/sparc64/CodeGen.zig
index 6eac6ba4fc..1672547f58 100644
--- a/src/arch/sparc64/CodeGen.zig
+++ b/src/arch/sparc64/CodeGen.zig
@@ -714,6 +714,7 @@ fn genBody(self: *Self, body: []const Air.Inst.Index) InnerError!void {
.is_named_enum_value => @panic("TODO implement is_named_enum_value"),
.error_set_has_value => @panic("TODO implement error_set_has_value"),
+ .vector_store_elem => @panic("TODO implement vector_store_elem"),
.wasm_memory_size => unreachable,
.wasm_memory_grow => unreachable,
diff --git a/src/arch/wasm/CodeGen.zig b/src/arch/wasm/CodeGen.zig
index 99c0facb1a..70a2aea3c9 100644
--- a/src/arch/wasm/CodeGen.zig
+++ b/src/arch/wasm/CodeGen.zig
@@ -1971,6 +1971,7 @@ fn genInst(func: *CodeGen, inst: Air.Inst.Index) InnerError!void {
.is_named_enum_value,
.error_set_has_value,
.addrspace_cast,
+ .vector_store_elem,
=> |tag| return func.fail("TODO: Implement wasm inst: {s}", .{@tagName(tag)}),
.add_optimized,
@@ -2213,6 +2214,7 @@ fn airStore(func: *CodeGen, inst: Air.Inst.Index) InnerError!void {
const ptr_ty = func.air.typeOf(bin_op.lhs);
const ptr_info = ptr_ty.ptrInfo().data;
const ty = ptr_ty.childType();
+
if (ptr_info.host_size == 0) {
try func.store(lhs, rhs, ty, 0);
} else {
diff --git a/src/arch/x86_64/CodeGen.zig b/src/arch/x86_64/CodeGen.zig
index bfb60bf74a..d0599150bd 100644
--- a/src/arch/x86_64/CodeGen.zig
+++ b/src/arch/x86_64/CodeGen.zig
@@ -785,6 +785,7 @@ fn genBody(self: *Self, body: []const Air.Inst.Index) InnerError!void {
.is_named_enum_value => return self.fail("TODO implement is_named_enum_value", .{}),
.error_set_has_value => return self.fail("TODO implement error_set_has_value", .{}),
+ .vector_store_elem => return self.fail("TODO implement vector_store_elem", .{}),
.wasm_memory_size => unreachable,
.wasm_memory_grow => unreachable,