| author | |
| committer | |
| log | 5900dc05804a4089eb7d1ccd8a36b4ade16c02e4 |
| tree | 35b48b2b31be891a3a3f0dcf34562a7c099e2c98 |
| parent | 562170681a3d0c8502892f8975f369c4b269fe1a |
8 files changed, 3 insertions(+), 13 deletions(-)
src/arch/x86_64/CodeGen.zig+2-2| ... | @@ -2528,7 +2528,7 @@ fn airErrUnionPayloadPtrSet(self: *Self, inst: Air.Inst.Index) !void { | ... | @@ -2528,7 +2528,7 @@ fn airErrUnionPayloadPtrSet(self: *Self, inst: Air.Inst.Index) !void { |
| 2528 | const dst_lock = self.register_manager.lockReg(dst_reg); | 2528 | const dst_lock = self.register_manager.lockReg(dst_reg); |
| 2529 | defer if (dst_lock) |lock| self.register_manager.unlockReg(lock); | 2529 | defer if (dst_lock) |lock| self.register_manager.unlockReg(lock); |
| 2530 | 2530 | ||
| 2531 | const pl_off = @intCast(i32, errUnionErrorOffset(pl_ty, self.target.*)); | 2531 | const pl_off = @intCast(i32, errUnionPayloadOffset(pl_ty, self.target.*)); |
| 2532 | const dst_abi_size = @intCast(u32, dst_ty.abiSize(self.target.*)); | 2532 | const dst_abi_size = @intCast(u32, dst_ty.abiSize(self.target.*)); |
| 2533 | try self.asmRegisterMemory( | 2533 | try self.asmRegisterMemory( |
| 2534 | .lea, | 2534 | .lea, |
| ... | @@ -5602,7 +5602,7 @@ fn airCmp(self: *Self, inst: Air.Inst.Index, op: math.CompareOperator) !void { | ... | @@ -5602,7 +5602,7 @@ fn airCmp(self: *Self, inst: Air.Inst.Index, op: math.CompareOperator) !void { |
| 5602 | 5602 | ||
| 5603 | const rhs_mcv = try self.resolveInst(bin_op.rhs); | 5603 | const rhs_mcv = try self.resolveInst(bin_op.rhs); |
| 5604 | const rhs_lock = switch (rhs_mcv) { | 5604 | const rhs_lock = switch (rhs_mcv) { |
| 5605 | .register => |reg| self.register_manager.lockRegAssumeUnused(reg), | 5605 | .register => |reg| self.register_manager.lockReg(reg), |
| 5606 | else => null, | 5606 | else => null, |
| 5607 | }; | 5607 | }; |
| 5608 | defer if (rhs_lock) |lock| self.register_manager.unlockReg(lock); | 5608 | defer if (rhs_lock) |lock| self.register_manager.unlockReg(lock); |
src/print_air.zig+1| ... | @@ -804,6 +804,7 @@ const Writer = struct { | ... | @@ -804,6 +804,7 @@ const Writer = struct { |
| 804 | var case_i: u32 = 0; | 804 | var case_i: u32 = 0; |
| 805 | 805 | ||
| 806 | try w.writeOperand(s, inst, 0, pl_op.operand); | 806 | try w.writeOperand(s, inst, 0, pl_op.operand); |
| 807 | if (w.skip_body) return s.writeAll(", ..."); | ||
| 807 | const old_indent = w.indent; | 808 | const old_indent = w.indent; |
| 808 | w.indent += 2; | 809 | w.indent += 2; |
| 809 | 810 |
test/behavior/bugs/12776.zig-1| ... | @@ -31,7 +31,6 @@ const CPU = packed struct { | ... | @@ -31,7 +31,6 @@ const CPU = packed struct { |
| 31 | test { | 31 | test { |
| 32 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; | 32 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; |
| 33 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; | 33 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; |
| 34 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | ||
| 35 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; | 34 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; |
| 36 | 35 | ||
| 37 | var ram = try RAM.new(); | 36 | var ram = try RAM.new(); |
test/behavior/bugs/1442.zig-1| ... | @@ -9,7 +9,6 @@ const Union = union(enum) { | ... | @@ -9,7 +9,6 @@ const Union = union(enum) { |
| 9 | test "const error union field alignment" { | 9 | test "const error union field alignment" { |
| 10 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; | 10 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; |
| 11 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; | 11 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; |
| 12 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | ||
| 13 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO | 12 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
| 14 | var union_or_err: anyerror!Union = Union{ .Color = 1234 }; | 13 | var union_or_err: anyerror!Union = Union{ .Color = 1234 }; |
| 15 | try std.testing.expect((union_or_err catch unreachable).Color == 1234); | 14 | try std.testing.expect((union_or_err catch unreachable).Color == 1234); |
test/behavior/error.zig-4| ... | @@ -370,7 +370,6 @@ fn intLiteral(str: []const u8) !?i64 { | ... | @@ -370,7 +370,6 @@ fn intLiteral(str: []const u8) !?i64 { |
| 370 | } | 370 | } |
| 371 | 371 | ||
| 372 | test "nested error union function call in optional unwrap" { | 372 | test "nested error union function call in optional unwrap" { |
| 373 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO | ||
| 374 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO | 373 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 375 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO | 374 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 376 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO | 375 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
| ... | @@ -499,7 +498,6 @@ test "function pointer with return type that is error union with payload which i | ... | @@ -499,7 +498,6 @@ test "function pointer with return type that is error union with payload which i |
| 499 | } | 498 | } |
| 500 | 499 | ||
| 501 | test "return result loc as peer result loc in inferred error set function" { | 500 | test "return result loc as peer result loc in inferred error set function" { |
| 502 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO | ||
| 503 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO | 501 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 504 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO | 502 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 505 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO | 503 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
| ... | @@ -531,7 +529,6 @@ test "return result loc as peer result loc in inferred error set function" { | ... | @@ -531,7 +529,6 @@ test "return result loc as peer result loc in inferred error set function" { |
| 531 | } | 529 | } |
| 532 | 530 | ||
| 533 | test "error payload type is correctly resolved" { | 531 | test "error payload type is correctly resolved" { |
| 534 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO | ||
| 535 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO | 532 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 536 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO | 533 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 537 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO | 534 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
| ... | @@ -665,7 +662,6 @@ test "coerce error set to the current inferred error set" { | ... | @@ -665,7 +662,6 @@ test "coerce error set to the current inferred error set" { |
| 665 | } | 662 | } |
| 666 | 663 | ||
| 667 | test "error union payload is properly aligned" { | 664 | test "error union payload is properly aligned" { |
| 668 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO | ||
| 669 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO | 665 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 670 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO | 666 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 671 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO | 667 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
test/behavior/struct.zig-3| ... | @@ -1116,7 +1116,6 @@ test "for loop over pointers to struct, getting field from struct pointer" { | ... | @@ -1116,7 +1116,6 @@ test "for loop over pointers to struct, getting field from struct pointer" { |
| 1116 | } | 1116 | } |
| 1117 | 1117 | ||
| 1118 | test "anon init through error unions and optionals" { | 1118 | test "anon init through error unions and optionals" { |
| 1119 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO | ||
| 1120 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO | 1119 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 1121 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO | 1120 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 1122 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO | 1121 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
| ... | @@ -1162,7 +1161,6 @@ test "anon init through optional" { | ... | @@ -1162,7 +1161,6 @@ test "anon init through optional" { |
| 1162 | } | 1161 | } |
| 1163 | 1162 | ||
| 1164 | test "anon init through error union" { | 1163 | test "anon init through error union" { |
| 1165 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO | ||
| 1166 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO | 1164 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 1167 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO | 1165 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 1168 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO | 1166 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
| ... | @@ -1182,7 +1180,6 @@ test "anon init through error union" { | ... | @@ -1182,7 +1180,6 @@ test "anon init through error union" { |
| 1182 | } | 1180 | } |
| 1183 | 1181 | ||
| 1184 | test "typed init through error unions and optionals" { | 1182 | test "typed init through error unions and optionals" { |
| 1185 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO | ||
| 1186 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO | 1183 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 1187 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO | 1184 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 1188 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO | 1185 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
test/behavior/switch_prong_err_enum.zig-1| ... | @@ -23,7 +23,6 @@ fn doThing(form_id: u64) anyerror!FormValue { | ... | @@ -23,7 +23,6 @@ fn doThing(form_id: u64) anyerror!FormValue { |
| 23 | test "switch prong returns error enum" { | 23 | test "switch prong returns error enum" { |
| 24 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; | 24 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; |
| 25 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; | 25 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; |
| 26 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | ||
| 27 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO | 26 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
| 28 | 27 | ||
| 29 | switch (doThing(17) catch unreachable) { | 28 | switch (doThing(17) catch unreachable) { |
test/behavior/switch_prong_implicit_cast.zig-1| ... | @@ -17,7 +17,6 @@ fn foo(id: u64) !FormValue { | ... | @@ -17,7 +17,6 @@ fn foo(id: u64) !FormValue { |
| 17 | test "switch prong implicit cast" { | 17 | test "switch prong implicit cast" { |
| 18 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; | 18 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; |
| 19 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; | 19 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; |
| 20 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | ||
| 21 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO | 20 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
| 22 | 21 | ||
| 23 | const result = switch (foo(2) catch unreachable) { | 22 | const result = switch (foo(2) catch unreachable) { |