| ... | ... | @@ -1841,7 +1841,7 @@ fn airMinMax( |
| 1841 | 1841 | if (int_info.bits > 64) return self.fail("TODO: > 64 bit @min", .{}); |
| 1842 | 1842 | |
| 1843 | 1843 | const lhs_reg, const lhs_lock = blk: { |
| 1844 | | if (lhs == .register) break :blk .{ lhs.register, null }; |
| 1844 | if (lhs == .register) break :blk .{ lhs.register, self.register_manager.lockReg(lhs.register) }; |
| 1845 | 1845 | |
| 1846 | 1846 | const lhs_reg, const lhs_lock = try self.allocReg(); |
| 1847 | 1847 | try self.genSetReg(lhs_ty, lhs_reg, lhs); |
| ... | ... | @@ -1850,7 +1850,7 @@ fn airMinMax( |
| 1850 | 1850 | defer if (lhs_lock) |lock| self.register_manager.unlockReg(lock); |
| 1851 | 1851 | |
| 1852 | 1852 | const rhs_reg, const rhs_lock = blk: { |
| 1853 | | if (rhs == .register) break :blk .{ rhs.register, null }; |
| 1853 | if (rhs == .register) break :blk .{ rhs.register, self.register_manager.lockReg(rhs.register) }; |
| 1854 | 1854 | |
| 1855 | 1855 | const rhs_reg, const rhs_lock = try self.allocReg(); |
| 1856 | 1856 | try self.genSetReg(rhs_ty, rhs_reg, rhs); |
| ... | ... | @@ -2088,7 +2088,7 @@ fn binOpRegister( |
| 2088 | 2088 | rhs_ty: Type, |
| 2089 | 2089 | ) !MCValue { |
| 2090 | 2090 | const lhs_reg, const lhs_lock = blk: { |
| 2091 | | if (lhs == .register) break :blk .{ lhs.register, null }; |
| 2091 | if (lhs == .register) break :blk .{ lhs.register, self.register_manager.lockReg(lhs.register) }; |
| 2092 | 2092 | |
| 2093 | 2093 | const lhs_reg, const lhs_lock = try self.allocReg(); |
| 2094 | 2094 | try self.genSetReg(lhs_ty, lhs_reg, lhs); |
| ... | ... | @@ -2097,7 +2097,7 @@ fn binOpRegister( |
| 2097 | 2097 | defer if (lhs_lock) |lock| self.register_manager.unlockReg(lock); |
| 2098 | 2098 | |
| 2099 | 2099 | const rhs_reg, const rhs_lock = blk: { |
| 2100 | | if (rhs == .register) break :blk .{ rhs.register, null }; |
| 2100 | if (rhs == .register) break :blk .{ rhs.register, self.register_manager.lockReg(rhs.register) }; |
| 2101 | 2101 | |
| 2102 | 2102 | const rhs_reg, const rhs_lock = try self.allocReg(); |
| 2103 | 2103 | try self.genSetReg(rhs_ty, rhs_reg, rhs); |
| ... | ... | @@ -2358,7 +2358,7 @@ fn airSubWithOverflow(self: *Self, inst: Air.Inst.Index) !void { |
| 2358 | 2358 | const offset = result_mcv.load_frame; |
| 2359 | 2359 | |
| 2360 | 2360 | const lhs_reg, const lhs_lock = blk: { |
| 2361 | | if (lhs == .register) break :blk .{ lhs.register, null }; |
| 2361 | if (lhs == .register) break :blk .{ lhs.register, self.register_manager.lockReg(lhs.register) }; |
| 2362 | 2362 | |
| 2363 | 2363 | const lhs_reg, const lhs_lock = try self.allocReg(); |
| 2364 | 2364 | try self.genSetReg(lhs_ty, lhs_reg, lhs); |
| ... | ... | @@ -2367,7 +2367,7 @@ fn airSubWithOverflow(self: *Self, inst: Air.Inst.Index) !void { |
| 2367 | 2367 | defer if (lhs_lock) |lock| self.register_manager.unlockReg(lock); |
| 2368 | 2368 | |
| 2369 | 2369 | const rhs_reg, const rhs_lock = blk: { |
| 2370 | | if (rhs == .register) break :blk .{ rhs.register, null }; |
| 2370 | if (rhs == .register) break :blk .{ rhs.register, self.register_manager.lockReg(rhs.register) }; |
| 2371 | 2371 | |
| 2372 | 2372 | const rhs_reg, const rhs_lock = try self.allocReg(); |
| 2373 | 2373 | try self.genSetReg(rhs_ty, rhs_reg, rhs); |
| ... | ... | @@ -2596,7 +2596,7 @@ fn airBitAnd(self: *Self, inst: Air.Inst.Index) !void { |
| 2596 | 2596 | const rhs_ty = self.typeOf(bin_op.rhs); |
| 2597 | 2597 | |
| 2598 | 2598 | const lhs_reg, const lhs_lock = blk: { |
| 2599 | | if (lhs == .register) break :blk .{ lhs.register, null }; |
| 2599 | if (lhs == .register) break :blk .{ lhs.register, self.register_manager.lockReg(lhs.register) }; |
| 2600 | 2600 | |
| 2601 | 2601 | const lhs_reg, const lhs_lock = try self.allocReg(); |
| 2602 | 2602 | try self.genSetReg(lhs_ty, lhs_reg, lhs); |
| ... | ... | @@ -2605,7 +2605,7 @@ fn airBitAnd(self: *Self, inst: Air.Inst.Index) !void { |
| 2605 | 2605 | defer if (lhs_lock) |lock| self.register_manager.unlockReg(lock); |
| 2606 | 2606 | |
| 2607 | 2607 | const rhs_reg, const rhs_lock = blk: { |
| 2608 | | if (rhs == .register) break :blk .{ rhs.register, null }; |
| 2608 | if (rhs == .register) break :blk .{ rhs.register, self.register_manager.lockReg(rhs.register) }; |
| 2609 | 2609 | |
| 2610 | 2610 | const rhs_reg, const rhs_lock = try self.allocReg(); |
| 2611 | 2611 | try self.genSetReg(rhs_ty, rhs_reg, rhs); |
| ... | ... | @@ -2641,7 +2641,7 @@ fn airBitOr(self: *Self, inst: Air.Inst.Index) !void { |
| 2641 | 2641 | const rhs_ty = self.typeOf(bin_op.rhs); |
| 2642 | 2642 | |
| 2643 | 2643 | const lhs_reg, const lhs_lock = blk: { |
| 2644 | | if (lhs == .register) break :blk .{ lhs.register, null }; |
| 2644 | if (lhs == .register) break :blk .{ lhs.register, self.register_manager.lockReg(lhs.register) }; |
| 2645 | 2645 | |
| 2646 | 2646 | const lhs_reg, const lhs_lock = try self.allocReg(); |
| 2647 | 2647 | try self.genSetReg(lhs_ty, lhs_reg, lhs); |
| ... | ... | @@ -2650,7 +2650,7 @@ fn airBitOr(self: *Self, inst: Air.Inst.Index) !void { |
| 2650 | 2650 | defer if (lhs_lock) |lock| self.register_manager.unlockReg(lock); |
| 2651 | 2651 | |
| 2652 | 2652 | const rhs_reg, const rhs_lock = blk: { |
| 2653 | | if (rhs == .register) break :blk .{ rhs.register, null }; |
| 2653 | if (rhs == .register) break :blk .{ rhs.register, self.register_manager.lockReg(rhs.register) }; |
| 2654 | 2654 | |
| 2655 | 2655 | const rhs_reg, const rhs_lock = try self.allocReg(); |
| 2656 | 2656 | try self.genSetReg(rhs_ty, rhs_reg, rhs); |
| ... | ... | @@ -4717,7 +4717,7 @@ fn airBoolOp(self: *Self, inst: Air.Inst.Index) !void { |
| 4717 | 4717 | const rhs_ty = Type.bool; |
| 4718 | 4718 | |
| 4719 | 4719 | const lhs_reg, const lhs_lock = blk: { |
| 4720 | | if (lhs == .register) break :blk .{ lhs.register, null }; |
| 4720 | if (lhs == .register) break :blk .{ lhs.register, self.register_manager.lockReg(lhs.register) }; |
| 4721 | 4721 | |
| 4722 | 4722 | const lhs_reg, const lhs_lock = try self.allocReg(); |
| 4723 | 4723 | try self.genSetReg(lhs_ty, lhs_reg, lhs); |
| ... | ... | @@ -4726,7 +4726,7 @@ fn airBoolOp(self: *Self, inst: Air.Inst.Index) !void { |
| 4726 | 4726 | defer if (lhs_lock) |lock| self.register_manager.unlockReg(lock); |
| 4727 | 4727 | |
| 4728 | 4728 | const rhs_reg, const rhs_lock = blk: { |
| 4729 | | if (rhs == .register) break :blk .{ rhs.register, null }; |
| 4729 | if (rhs == .register) break :blk .{ rhs.register, self.register_manager.lockReg(rhs.register) }; |
| 4730 | 4730 | |
| 4731 | 4731 | const rhs_reg, const rhs_lock = try self.allocReg(); |
| 4732 | 4732 | try self.genSetReg(rhs_ty, rhs_reg, rhs); |