aboutsummaryrefslogtreecommitdiff
path: root/src/arch/aarch64/CodeGen.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2023-03-03 12:08:18 -0700
committerAndrew Kelley <andrew@ziglang.org>2023-03-03 12:08:18 -0700
commitdf4cfc2ecf498bf4615ccbaa93438849322bbd18 (patch)
treea71611e86cacd8e021190cc4755574c514acb5c7 /src/arch/aarch64/CodeGen.zig
parent72443fb88cfddad8a58868c150eaf5818826cb21 (diff)
parent75ff34db9e93056482233f8476a06f78b4a2f3c2 (diff)
downloadzig-df4cfc2ecf498bf4615ccbaa93438849322bbd18.tar.gz
zig-df4cfc2ecf498bf4615ccbaa93438849322bbd18.zip
Merge remote-tracking branch 'origin/master' into llvm16
Diffstat (limited to 'src/arch/aarch64/CodeGen.zig')
-rw-r--r--src/arch/aarch64/CodeGen.zig6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/arch/aarch64/CodeGen.zig b/src/arch/aarch64/CodeGen.zig
index e7fef20a4f..818b04f890 100644
--- a/src/arch/aarch64/CodeGen.zig
+++ b/src/arch/aarch64/CodeGen.zig
@@ -4177,8 +4177,10 @@ fn airFieldParentPtr(self: *Self, inst: Air.Inst.Index) !void {
}
fn airArg(self: *Self, inst: Air.Inst.Index) !void {
- const arg_index = self.arg_index;
- self.arg_index += 1;
+ // skip zero-bit arguments as they don't have a corresponding arg instruction
+ var arg_index = self.arg_index;
+ while (self.args[arg_index] == .none) arg_index += 1;
+ self.arg_index = arg_index + 1;
const ty = self.air.typeOfIndex(inst);
const tag = self.air.instructions.items(.tag)[inst];