aboutsummaryrefslogtreecommitdiff
path: root/src/arch/x86_64/CodeGen.zig
diff options
context:
space:
mode:
authorJohn Schmidt <john.schmidt.h@gmail.com>2022-03-24 23:02:06 +0100
committerJohn Schmidt <john.schmidt.h@gmail.com>2022-03-25 16:13:54 +0100
commitf47db0a0dbf64f1fef0ba86bd9f684a5df29bc3d (patch)
treed6b639b6f06472aca726dd6c5314b5e94600ca32 /src/arch/x86_64/CodeGen.zig
parent12d5efcbe621b98b5a99c5f84a9d5b605e4acc40 (diff)
downloadzig-f47db0a0dbf64f1fef0ba86bd9f684a5df29bc3d.tar.gz
zig-f47db0a0dbf64f1fef0ba86bd9f684a5df29bc3d.zip
sema: use `pl_op` for `@select`
Diffstat (limited to 'src/arch/x86_64/CodeGen.zig')
-rw-r--r--src/arch/x86_64/CodeGen.zig6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/arch/x86_64/CodeGen.zig b/src/arch/x86_64/CodeGen.zig
index 8a9aaebb22..4efb836c3a 100644
--- a/src/arch/x86_64/CodeGen.zig
+++ b/src/arch/x86_64/CodeGen.zig
@@ -5680,10 +5680,10 @@ fn airSplat(self: *Self, inst: Air.Inst.Index) !void {
}
fn airSelect(self: *Self, inst: Air.Inst.Index) !void {
- const ty_pl = self.air.instructions.items(.data)[inst].ty_pl;
- const extra = self.air.extraData(Air.Select, ty_pl.payload).data;
+ const pl_op = self.air.instructions.items(.data)[inst].pl_op;
+ const extra = self.air.extraData(Air.Bin, pl_op.payload).data;
const result: MCValue = if (self.liveness.isUnused(inst)) .dead else return self.fail("TODO implement airSelect for x86_64", .{});
- return self.finishAir(inst, result, .{ extra.pred, extra.a, extra.b });
+ return self.finishAir(inst, result, .{ pl_op.operand, extra.lhs, extra.rhs });
}
fn airShuffle(self: *Self, inst: Air.Inst.Index) !void {