| ... | @@ -8060,35 +8060,35 @@ fn builtinCall( | ... | @@ -8060,35 +8060,35 @@ fn builtinCall( |
| 8060 | }, | 8060 | }, |
| 8061 | .fence => { | 8061 | .fence => { |
| 8062 | const order = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .atomic_order_type } }, params[0]); | 8062 | const order = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .atomic_order_type } }, params[0]); |
| 8063 | const result = try gz.addExtendedPayload(.fence, Zir.Inst.UnNode{ | 8063 | _ = try gz.addExtendedPayload(.fence, Zir.Inst.UnNode{ |
| 8064 | .node = gz.nodeIndexToRelative(node), | 8064 | .node = gz.nodeIndexToRelative(node), |
| 8065 | .operand = order, | 8065 | .operand = order, |
| 8066 | }); | 8066 | }); |
| 8067 | return rvalue(gz, ri, result, node); | 8067 | return rvalue(gz, ri, .void_value, node); |
| 8068 | }, | 8068 | }, |
| 8069 | .set_float_mode => { | 8069 | .set_float_mode => { |
| 8070 | const order = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .float_mode_type } }, params[0]); | 8070 | const order = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .float_mode_type } }, params[0]); |
| 8071 | const result = try gz.addExtendedPayload(.set_float_mode, Zir.Inst.UnNode{ | 8071 | _ = try gz.addExtendedPayload(.set_float_mode, Zir.Inst.UnNode{ |
| 8072 | .node = gz.nodeIndexToRelative(node), | 8072 | .node = gz.nodeIndexToRelative(node), |
| 8073 | .operand = order, | 8073 | .operand = order, |
| 8074 | }); | 8074 | }); |
| 8075 | return rvalue(gz, ri, result, node); | 8075 | return rvalue(gz, ri, .void_value, node); |
| 8076 | }, | 8076 | }, |
| 8077 | .set_align_stack => { | 8077 | .set_align_stack => { |
| 8078 | const order = try expr(gz, scope, align_ri, params[0]); | 8078 | const order = try expr(gz, scope, align_ri, params[0]); |
| 8079 | const result = try gz.addExtendedPayload(.set_align_stack, Zir.Inst.UnNode{ | 8079 | _ = try gz.addExtendedPayload(.set_align_stack, Zir.Inst.UnNode{ |
| 8080 | .node = gz.nodeIndexToRelative(node), | 8080 | .node = gz.nodeIndexToRelative(node), |
| 8081 | .operand = order, | 8081 | .operand = order, |
| 8082 | }); | 8082 | }); |
| 8083 | return rvalue(gz, ri, result, node); | 8083 | return rvalue(gz, ri, .void_value, node); |
| 8084 | }, | 8084 | }, |
| 8085 | .set_cold => { | 8085 | .set_cold => { |
| 8086 | const order = try expr(gz, scope, ri, params[0]); | 8086 | const order = try expr(gz, scope, ri, params[0]); |
| 8087 | const result = try gz.addExtendedPayload(.set_cold, Zir.Inst.UnNode{ | 8087 | _ = try gz.addExtendedPayload(.set_cold, Zir.Inst.UnNode{ |
| 8088 | .node = gz.nodeIndexToRelative(node), | 8088 | .node = gz.nodeIndexToRelative(node), |
| 8089 | .operand = order, | 8089 | .operand = order, |
| 8090 | }); | 8090 | }); |
| 8091 | return rvalue(gz, ri, result, node); | 8091 | return rvalue(gz, ri, .void_value, node); |
| 8092 | }, | 8092 | }, |
| 8093 | | 8093 | |
| 8094 | .src => { | 8094 | .src => { |
| ... | @@ -8373,14 +8373,14 @@ fn builtinCall( | ... | @@ -8373,14 +8373,14 @@ fn builtinCall( |
| 8373 | }, | 8373 | }, |
| 8374 | .atomic_store => { | 8374 | .atomic_store => { |
| 8375 | const int_type = try typeExpr(gz, scope, params[0]); | 8375 | const int_type = try typeExpr(gz, scope, params[0]); |
| 8376 | const result = try gz.addPlNode(.atomic_store, node, Zir.Inst.AtomicStore{ | 8376 | _ = try gz.addPlNode(.atomic_store, node, Zir.Inst.AtomicStore{ |
| 8377 | // zig fmt: off | 8377 | // zig fmt: off |
| 8378 | .ptr = try expr(gz, scope, .{ .rl = .none }, params[1]), | 8378 | .ptr = try expr(gz, scope, .{ .rl = .none }, params[1]), |
| 8379 | .operand = try expr(gz, scope, .{ .rl = .{ .ty = int_type } }, params[2]), | 8379 | .operand = try expr(gz, scope, .{ .rl = .{ .ty = int_type } }, params[2]), |
| 8380 | .ordering = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .atomic_order_type } }, params[3]), | 8380 | .ordering = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .atomic_order_type } }, params[3]), |
| 8381 | // zig fmt: on | 8381 | // zig fmt: on |
| 8382 | }); | 8382 | }); |
| 8383 | return rvalue(gz, ri, result, node); | 8383 | return rvalue(gz, ri, .void_value, node); |
| 8384 | }, | 8384 | }, |
| 8385 | .mul_add => { | 8385 | .mul_add => { |
| 8386 | const float_type = try typeExpr(gz, scope, params[0]); | 8386 | const float_type = try typeExpr(gz, scope, params[0]); |
| ... | @@ -8421,20 +8421,20 @@ fn builtinCall( | ... | @@ -8421,20 +8421,20 @@ fn builtinCall( |
| 8421 | return rvalue(gz, ri, result, node); | 8421 | return rvalue(gz, ri, result, node); |
| 8422 | }, | 8422 | }, |
| 8423 | .memcpy => { | 8423 | .memcpy => { |
| 8424 | const result = try gz.addPlNode(.memcpy, node, Zir.Inst.Memcpy{ | 8424 | _ = try gz.addPlNode(.memcpy, node, Zir.Inst.Memcpy{ |
| 8425 | .dest = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .manyptr_u8_type } }, params[0]), | 8425 | .dest = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .manyptr_u8_type } }, params[0]), |
| 8426 | .source = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .manyptr_const_u8_type } }, params[1]), | 8426 | .source = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .manyptr_const_u8_type } }, params[1]), |
| 8427 | .byte_count = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .usize_type } }, params[2]), | 8427 | .byte_count = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .usize_type } }, params[2]), |
| 8428 | }); | 8428 | }); |
| 8429 | return rvalue(gz, ri, result, node); | 8429 | return rvalue(gz, ri, .void_value, node); |
| 8430 | }, | 8430 | }, |
| 8431 | .memset => { | 8431 | .memset => { |
| 8432 | const result = try gz.addPlNode(.memset, node, Zir.Inst.Memset{ | 8432 | _ = try gz.addPlNode(.memset, node, Zir.Inst.Memset{ |
| 8433 | .dest = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .manyptr_u8_type } }, params[0]), | 8433 | .dest = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .manyptr_u8_type } }, params[0]), |
| 8434 | .byte = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .u8_type } }, params[1]), | 8434 | .byte = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .u8_type } }, params[1]), |
| 8435 | .byte_count = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .usize_type } }, params[2]), | 8435 | .byte_count = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .usize_type } }, params[2]), |
| 8436 | }); | 8436 | }); |
| 8437 | return rvalue(gz, ri, result, node); | 8437 | return rvalue(gz, ri, .void_value, node); |
| 8438 | }, | 8438 | }, |
| 8439 | .shuffle => { | 8439 | .shuffle => { |
| 8440 | const result = try gz.addPlNode(.shuffle, node, Zir.Inst.Shuffle{ | 8440 | const result = try gz.addPlNode(.shuffle, node, Zir.Inst.Shuffle{ |
| ... | @@ -8475,12 +8475,12 @@ fn builtinCall( | ... | @@ -8475,12 +8475,12 @@ fn builtinCall( |
| 8475 | .prefetch => { | 8475 | .prefetch => { |
| 8476 | const ptr = try expr(gz, scope, .{ .rl = .none }, params[0]); | 8476 | const ptr = try expr(gz, scope, .{ .rl = .none }, params[0]); |
| 8477 | const options = try comptimeExpr(gz, scope, .{ .rl = .{ .ty = .prefetch_options_type } }, params[1]); | 8477 | const options = try comptimeExpr(gz, scope, .{ .rl = .{ .ty = .prefetch_options_type } }, params[1]); |
| 8478 | const result = try gz.addExtendedPayload(.prefetch, Zir.Inst.BinNode{ | 8478 | _ = try gz.addExtendedPayload(.prefetch, Zir.Inst.BinNode{ |
| 8479 | .node = gz.nodeIndexToRelative(node), | 8479 | .node = gz.nodeIndexToRelative(node), |
| 8480 | .lhs = ptr, | 8480 | .lhs = ptr, |
| 8481 | .rhs = options, | 8481 | .rhs = options, |
| 8482 | }); | 8482 | }); |
| 8483 | return rvalue(gz, ri, result, node); | 8483 | return rvalue(gz, ri, .void_value, node); |
| 8484 | }, | 8484 | }, |
| 8485 | .c_va_arg => { | 8485 | .c_va_arg => { |
| 8486 | if (astgen.fn_block == null) { | 8486 | if (astgen.fn_block == null) { |