| ... | @@ -486,7 +486,7 @@ pub const MCValue = union(enum) { | ... | @@ -486,7 +486,7 @@ pub const MCValue = union(enum) { |
| 486 | } }, | 486 | } }, |
| 487 | } else .{ .base = .{ .reg = .ds }, .mod = .{ .off = addr } }, | 487 | } else .{ .base = .{ .reg = .ds }, .mod = .{ .off = addr } }, |
| 488 | .indirect => |reg_off| .{ | 488 | .indirect => |reg_off| .{ |
| 489 | .base = .{ .reg = registerAlias(reg_off.reg, @divExact(function.target.ptrBitWidth(), 8)) }, | 489 | .base = .{ .reg = reg_off.reg.toSize(.ptr, function.target) }, |
| 490 | .mod = .{ .rm = .{ | 490 | .mod = .{ .rm = .{ |
| 491 | .size = mod_rm.size, | 491 | .size = mod_rm.size, |
| 492 | .index = mod_rm.index, | 492 | .index = mod_rm.index, |
| ... | @@ -2408,7 +2408,7 @@ fn genBodyBlock(self: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -2408,7 +2408,7 @@ fn genBodyBlock(self: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 2408 | } | 2408 | } |
| 2409 | | 2409 | |
| 2410 | fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | 2410 | fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 2411 | @setEvalBranchQuota(18_100); | 2411 | @setEvalBranchQuota(19_300); |
| 2412 | const pt = cg.pt; | 2412 | const pt = cg.pt; |
| 2413 | const zcu = pt.zcu; | 2413 | const zcu = pt.zcu; |
| 2414 | const ip = &zcu.intern_pool; | 2414 | const ip = &zcu.intern_pool; |
| ... | @@ -2444,7 +2444,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -2444,7 +2444,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 2444 | try cg.inst_tracking.ensureUnusedCapacity(cg.gpa, 1); | 2444 | try cg.inst_tracking.ensureUnusedCapacity(cg.gpa, 1); |
| 2445 | switch (air_tags[@intFromEnum(inst)]) { | 2445 | switch (air_tags[@intFromEnum(inst)]) { |
| 2446 | // zig fmt: off | 2446 | // zig fmt: off |
| 2447 | .mul_sat => try cg.airMulSat(inst), | | |
| 2448 | .shl_sat => try cg.airShlSat(inst), | 2447 | .shl_sat => try cg.airShlSat(inst), |
| 2449 | | 2448 | |
| 2450 | .bitcast => try cg.airBitCast(inst), | 2449 | .bitcast => try cg.airBitCast(inst), |
| ... | @@ -4493,7 +4492,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4493,7 +4492,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4493 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 4492 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 4494 | }, | 4493 | }, |
| 4495 | .extra_temps = .{ | 4494 | .extra_temps = .{ |
| 4496 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, | 4495 | .{ .type = .u8, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4497 | .unused, | 4496 | .unused, |
| 4498 | .unused, | 4497 | .unused, |
| 4499 | .unused, | 4498 | .unused, |
| ... | @@ -4523,7 +4522,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4523,7 +4522,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4523 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 4522 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 4524 | }, | 4523 | }, |
| 4525 | .extra_temps = .{ | 4524 | .extra_temps = .{ |
| 4526 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, | 4525 | .{ .type = .u8, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4527 | .unused, | 4526 | .unused, |
| 4528 | .unused, | 4527 | .unused, |
| 4529 | .unused, | 4528 | .unused, |
| ... | @@ -4670,7 +4669,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4670,7 +4669,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4670 | }, | 4669 | }, |
| 4671 | .extra_temps = .{ | 4670 | .extra_temps = .{ |
| 4672 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4671 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 4673 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4672 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4674 | .unused, | 4673 | .unused, |
| 4675 | .unused, | 4674 | .unused, |
| 4676 | .unused, | 4675 | .unused, |
| ... | @@ -4700,7 +4699,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4700,7 +4699,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4700 | }, | 4699 | }, |
| 4701 | .extra_temps = .{ | 4700 | .extra_temps = .{ |
| 4702 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4701 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 4703 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4702 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4704 | .unused, | 4703 | .unused, |
| 4705 | .unused, | 4704 | .unused, |
| 4706 | .unused, | 4705 | .unused, |
| ... | @@ -4731,7 +4730,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4731,7 +4730,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4731 | }, | 4730 | }, |
| 4732 | .extra_temps = .{ | 4731 | .extra_temps = .{ |
| 4733 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4732 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 4734 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4733 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4735 | .unused, | 4734 | .unused, |
| 4736 | .unused, | 4735 | .unused, |
| 4737 | .unused, | 4736 | .unused, |
| ... | @@ -4763,7 +4762,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4763,7 +4762,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4763 | }, | 4762 | }, |
| 4764 | .extra_temps = .{ | 4763 | .extra_temps = .{ |
| 4765 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4764 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 4766 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4765 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4767 | .unused, | 4766 | .unused, |
| 4768 | .unused, | 4767 | .unused, |
| 4769 | .unused, | 4768 | .unused, |
| ... | @@ -4795,7 +4794,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4795,7 +4794,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4795 | .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } }, | 4794 | .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } }, |
| 4796 | }, | 4795 | }, |
| 4797 | .extra_temps = .{ | 4796 | .extra_temps = .{ |
| 4798 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4797 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4799 | .unused, | 4798 | .unused, |
| 4800 | .unused, | 4799 | .unused, |
| 4801 | .unused, | 4800 | .unused, |
| ... | @@ -4824,7 +4823,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4824,7 +4823,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4824 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 4823 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 4825 | }, | 4824 | }, |
| 4826 | .extra_temps = .{ | 4825 | .extra_temps = .{ |
| 4827 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4826 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4828 | .unused, | 4827 | .unused, |
| 4829 | .unused, | 4828 | .unused, |
| 4830 | .unused, | 4829 | .unused, |
| ... | @@ -4853,7 +4852,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4853,7 +4852,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4853 | .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } }, | 4852 | .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } }, |
| 4854 | }, | 4853 | }, |
| 4855 | .extra_temps = .{ | 4854 | .extra_temps = .{ |
| 4856 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4855 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4857 | .unused, | 4856 | .unused, |
| 4858 | .unused, | 4857 | .unused, |
| 4859 | .unused, | 4858 | .unused, |
| ... | @@ -4883,7 +4882,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4883,7 +4882,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4883 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 4882 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 4884 | }, | 4883 | }, |
| 4885 | .extra_temps = .{ | 4884 | .extra_temps = .{ |
| 4886 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4885 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4887 | .unused, | 4886 | .unused, |
| 4888 | .unused, | 4887 | .unused, |
| 4889 | .unused, | 4888 | .unused, |
| ... | @@ -4916,7 +4915,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4916,7 +4915,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4916 | }, | 4915 | }, |
| 4917 | .extra_temps = .{ | 4916 | .extra_temps = .{ |
| 4918 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4917 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 4919 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4918 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4920 | .unused, | 4919 | .unused, |
| 4921 | .unused, | 4920 | .unused, |
| 4922 | .unused, | 4921 | .unused, |
| ... | @@ -4946,7 +4945,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4946,7 +4945,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4946 | }, | 4945 | }, |
| 4947 | .extra_temps = .{ | 4946 | .extra_temps = .{ |
| 4948 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4947 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 4949 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4948 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4950 | .unused, | 4949 | .unused, |
| 4951 | .unused, | 4950 | .unused, |
| 4952 | .unused, | 4951 | .unused, |
| ... | @@ -4977,7 +4976,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -4977,7 +4976,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4977 | }, | 4976 | }, |
| 4978 | .extra_temps = .{ | 4977 | .extra_temps = .{ |
| 4979 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4978 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 4980 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 4979 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 4981 | .unused, | 4980 | .unused, |
| 4982 | .unused, | 4981 | .unused, |
| 4983 | .unused, | 4982 | .unused, |
| ... | @@ -5009,7 +5008,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5009,7 +5008,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5009 | }, | 5008 | }, |
| 5010 | .extra_temps = .{ | 5009 | .extra_temps = .{ |
| 5011 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5010 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 5012 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5011 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5013 | .unused, | 5012 | .unused, |
| 5014 | .unused, | 5013 | .unused, |
| 5015 | .unused, | 5014 | .unused, |
| ... | @@ -5042,7 +5041,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5042,7 +5041,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5042 | }, | 5041 | }, |
| 5043 | .extra_temps = .{ | 5042 | .extra_temps = .{ |
| 5044 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5043 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 5045 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5044 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5046 | .unused, | 5045 | .unused, |
| 5047 | .unused, | 5046 | .unused, |
| 5048 | .unused, | 5047 | .unused, |
| ... | @@ -5073,7 +5072,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5073,7 +5072,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5073 | }, | 5072 | }, |
| 5074 | .extra_temps = .{ | 5073 | .extra_temps = .{ |
| 5075 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5074 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 5076 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5075 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5077 | .unused, | 5076 | .unused, |
| 5078 | .unused, | 5077 | .unused, |
| 5079 | .unused, | 5078 | .unused, |
| ... | @@ -5105,7 +5104,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5105,7 +5104,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5105 | }, | 5104 | }, |
| 5106 | .extra_temps = .{ | 5105 | .extra_temps = .{ |
| 5107 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5106 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 5108 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5107 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5109 | .unused, | 5108 | .unused, |
| 5110 | .unused, | 5109 | .unused, |
| 5111 | .unused, | 5110 | .unused, |
| ... | @@ -5138,7 +5137,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5138,7 +5137,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5138 | }, | 5137 | }, |
| 5139 | .extra_temps = .{ | 5138 | .extra_temps = .{ |
| 5140 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5139 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 5141 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5140 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5142 | .unused, | 5141 | .unused, |
| 5143 | .unused, | 5142 | .unused, |
| 5144 | .unused, | 5143 | .unused, |
| ... | @@ -5171,7 +5170,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5171,7 +5170,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5171 | .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } }, | 5170 | .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } }, |
| 5172 | }, | 5171 | }, |
| 5173 | .extra_temps = .{ | 5172 | .extra_temps = .{ |
| 5174 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5173 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5175 | .unused, | 5174 | .unused, |
| 5176 | .unused, | 5175 | .unused, |
| 5177 | .unused, | 5176 | .unused, |
| ... | @@ -5201,7 +5200,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5201,7 +5200,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5201 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 5200 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 5202 | }, | 5201 | }, |
| 5203 | .extra_temps = .{ | 5202 | .extra_temps = .{ |
| 5204 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5203 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5205 | .unused, | 5204 | .unused, |
| 5206 | .unused, | 5205 | .unused, |
| 5207 | .unused, | 5206 | .unused, |
| ... | @@ -5231,7 +5230,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5231,7 +5230,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5231 | .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } }, | 5230 | .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } }, |
| 5232 | }, | 5231 | }, |
| 5233 | .extra_temps = .{ | 5232 | .extra_temps = .{ |
| 5234 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5233 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5235 | .unused, | 5234 | .unused, |
| 5236 | .unused, | 5235 | .unused, |
| 5237 | .unused, | 5236 | .unused, |
| ... | @@ -5262,7 +5261,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5262,7 +5261,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5262 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 5261 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 5263 | }, | 5262 | }, |
| 5264 | .extra_temps = .{ | 5263 | .extra_temps = .{ |
| 5265 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 5264 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5266 | .unused, | 5265 | .unused, |
| 5267 | .unused, | 5266 | .unused, |
| 5268 | .unused, | 5267 | .unused, |
| ... | @@ -5295,7 +5294,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5295,7 +5294,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5295 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 5294 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 5296 | }, | 5295 | }, |
| 5297 | .extra_temps = .{ | 5296 | .extra_temps = .{ |
| 5298 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, | 5297 | .{ .type = .u16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5299 | .unused, | 5298 | .unused, |
| 5300 | .unused, | 5299 | .unused, |
| 5301 | .unused, | 5300 | .unused, |
| ... | @@ -5322,7 +5321,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5322,7 +5321,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5322 | .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } }, | 5321 | .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } }, |
| 5323 | }, | 5322 | }, |
| 5324 | .extra_temps = .{ | 5323 | .extra_temps = .{ |
| 5325 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, | 5324 | .{ .type = .u16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5326 | .unused, | 5325 | .unused, |
| 5327 | .unused, | 5326 | .unused, |
| 5328 | .unused, | 5327 | .unused, |
| ... | @@ -5351,7 +5350,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5351,7 +5350,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5351 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 5350 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 5352 | }, | 5351 | }, |
| 5353 | .extra_temps = .{ | 5352 | .extra_temps = .{ |
| 5354 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, | 5353 | .{ .type = .u16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5355 | .unused, | 5354 | .unused, |
| 5356 | .unused, | 5355 | .unused, |
| 5357 | .unused, | 5356 | .unused, |
| ... | @@ -5492,7 +5491,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5492,7 +5491,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5492 | }, | 5491 | }, |
| 5493 | .extra_temps = .{ | 5492 | .extra_temps = .{ |
| 5494 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 5493 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, |
| 5495 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 5494 | .{ .type = .i32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5496 | .unused, | 5495 | .unused, |
| 5497 | .unused, | 5496 | .unused, |
| 5498 | .unused, | 5497 | .unused, |
| ... | @@ -5524,7 +5523,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5524,7 +5523,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5524 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 5523 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 5525 | }, | 5524 | }, |
| 5526 | .extra_temps = .{ | 5525 | .extra_temps = .{ |
| 5527 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 5526 | .{ .type = .i32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5528 | .unused, | 5527 | .unused, |
| 5529 | .unused, | 5528 | .unused, |
| 5530 | .unused, | 5529 | .unused, |
| ... | @@ -5558,7 +5557,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5558,7 +5557,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5558 | }, | 5557 | }, |
| 5559 | .extra_temps = .{ | 5558 | .extra_temps = .{ |
| 5560 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 5559 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, |
| 5561 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 5560 | .{ .type = .i32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5562 | .unused, | 5561 | .unused, |
| 5563 | .unused, | 5562 | .unused, |
| 5564 | .unused, | 5563 | .unused, |
| ... | @@ -5592,7 +5591,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5592,7 +5591,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5592 | }, | 5591 | }, |
| 5593 | .extra_temps = .{ | 5592 | .extra_temps = .{ |
| 5594 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 5593 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, |
| 5595 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 5594 | .{ .type = .i32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5596 | .unused, | 5595 | .unused, |
| 5597 | .unused, | 5596 | .unused, |
| 5598 | .unused, | 5597 | .unused, |
| ... | @@ -5625,7 +5624,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5625,7 +5624,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5625 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 5624 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 5626 | }, | 5625 | }, |
| 5627 | .extra_temps = .{ | 5626 | .extra_temps = .{ |
| 5628 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 5627 | .{ .type = .i32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5629 | .unused, | 5628 | .unused, |
| 5630 | .unused, | 5629 | .unused, |
| 5631 | .unused, | 5630 | .unused, |
| ... | @@ -5658,7 +5657,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5658,7 +5657,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5658 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 5657 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 5659 | }, | 5658 | }, |
| 5660 | .extra_temps = .{ | 5659 | .extra_temps = .{ |
| 5661 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, | 5660 | .{ .type = .u32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5662 | .unused, | 5661 | .unused, |
| 5663 | .unused, | 5662 | .unused, |
| 5664 | .unused, | 5663 | .unused, |
| ... | @@ -5688,7 +5687,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5688,7 +5687,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5688 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 5687 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 5689 | }, | 5688 | }, |
| 5690 | .extra_temps = .{ | 5689 | .extra_temps = .{ |
| 5691 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, | 5690 | .{ .type = .u32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5692 | .unused, | 5691 | .unused, |
| 5693 | .unused, | 5692 | .unused, |
| 5694 | .unused, | 5693 | .unused, |
| ... | @@ -5737,7 +5736,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5737,7 +5736,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5737 | }, | 5736 | }, |
| 5738 | .extra_temps = .{ | 5737 | .extra_temps = .{ |
| 5739 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 5738 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 5740 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 5739 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5741 | .unused, | 5740 | .unused, |
| 5742 | .unused, | 5741 | .unused, |
| 5743 | .unused, | 5742 | .unused, |
| ... | @@ -5769,7 +5768,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5769,7 +5768,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5769 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 5768 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 5770 | }, | 5769 | }, |
| 5771 | .extra_temps = .{ | 5770 | .extra_temps = .{ |
| 5772 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 5771 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5773 | .unused, | 5772 | .unused, |
| 5774 | .unused, | 5773 | .unused, |
| 5775 | .unused, | 5774 | .unused, |
| ... | @@ -5802,7 +5801,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5802,7 +5801,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5802 | }, | 5801 | }, |
| 5803 | .extra_temps = .{ | 5802 | .extra_temps = .{ |
| 5804 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 5803 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 5805 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 5804 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5806 | .unused, | 5805 | .unused, |
| 5807 | .unused, | 5806 | .unused, |
| 5808 | .unused, | 5807 | .unused, |
| ... | @@ -5836,7 +5835,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5836,7 +5835,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5836 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 5835 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 5837 | }, | 5836 | }, |
| 5838 | .extra_temps = .{ | 5837 | .extra_temps = .{ |
| 5839 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 5838 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5840 | .unused, | 5839 | .unused, |
| 5841 | .unused, | 5840 | .unused, |
| 5842 | .unused, | 5841 | .unused, |
| ... | @@ -5871,7 +5870,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5871,7 +5870,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5871 | }, | 5870 | }, |
| 5872 | .extra_temps = .{ | 5871 | .extra_temps = .{ |
| 5873 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 5872 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 5874 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 5873 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5875 | .unused, | 5874 | .unused, |
| 5876 | .unused, | 5875 | .unused, |
| 5877 | .unused, | 5876 | .unused, |
| ... | @@ -5906,7 +5905,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5906,7 +5905,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5906 | }, | 5905 | }, |
| 5907 | .extra_temps = .{ | 5906 | .extra_temps = .{ |
| 5908 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 5907 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 5909 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 5908 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5910 | .unused, | 5909 | .unused, |
| 5911 | .unused, | 5910 | .unused, |
| 5912 | .unused, | 5911 | .unused, |
| ... | @@ -5941,7 +5940,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5941,7 +5940,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5941 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 5940 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 5942 | }, | 5941 | }, |
| 5943 | .extra_temps = .{ | 5942 | .extra_temps = .{ |
| 5944 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 5943 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5945 | .unused, | 5944 | .unused, |
| 5946 | .unused, | 5945 | .unused, |
| 5947 | .unused, | 5946 | .unused, |
| ... | @@ -5976,7 +5975,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -5976,7 +5975,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 5976 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 5975 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 5977 | }, | 5976 | }, |
| 5978 | .extra_temps = .{ | 5977 | .extra_temps = .{ |
| 5979 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | 5978 | .{ .type = .u64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 5980 | .unused, | 5979 | .unused, |
| 5981 | .unused, | 5980 | .unused, |
| 5982 | .unused, | 5981 | .unused, |
| ... | @@ -6006,7 +6005,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -6006,7 +6005,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 6006 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 6005 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 6007 | }, | 6006 | }, |
| 6008 | .extra_temps = .{ | 6007 | .extra_temps = .{ |
| 6009 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | 6008 | .{ .type = .u64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 6010 | .unused, | 6009 | .unused, |
| 6011 | .unused, | 6010 | .unused, |
| 6012 | .unused, | 6011 | .unused, |
| ... | @@ -6037,7 +6036,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -6037,7 +6036,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 6037 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 6036 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 6038 | }, | 6037 | }, |
| 6039 | .extra_temps = .{ | 6038 | .extra_temps = .{ |
| 6040 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | 6039 | .{ .type = .u64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 6041 | .unused, | 6040 | .unused, |
| 6042 | .unused, | 6041 | .unused, |
| 6043 | .unused, | 6042 | .unused, |
| ... | @@ -6079,8 +6078,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -6079,8 +6078,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 6079 | }, .{ | 6078 | }, .{ |
| 6080 | .required_features = .{ .@"64bit", null, null, null }, | 6079 | .required_features = .{ .@"64bit", null, null, null }, |
| 6081 | .src_constraints = .{ | 6080 | .src_constraints = .{ |
| 6082 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 6081 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 6083 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 6082 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 6084 | .any, | 6083 | .any, |
| 6085 | }, | 6084 | }, |
| 6086 | .patterns = &.{ | 6085 | .patterns = &.{ |
| ... | @@ -6123,8 +6122,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -6123,8 +6122,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 6123 | }, .{ | 6122 | }, .{ |
| 6124 | .required_features = .{ .@"64bit", null, null, null }, | 6123 | .required_features = .{ .@"64bit", null, null, null }, |
| 6125 | .src_constraints = .{ | 6124 | .src_constraints = .{ |
| 6126 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 6125 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 6127 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 6126 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 6128 | .any, | 6127 | .any, |
| 6129 | }, | 6128 | }, |
| 6130 | .patterns = &.{ | 6129 | .patterns = &.{ |
| ... | @@ -6162,8 +6161,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -6162,8 +6161,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 6162 | }, .{ | 6161 | }, .{ |
| 6163 | .required_features = .{ .@"64bit", null, null, null }, | 6162 | .required_features = .{ .@"64bit", null, null, null }, |
| 6164 | .src_constraints = .{ | 6163 | .src_constraints = .{ |
| 6165 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 6164 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 6166 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 6165 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 6167 | .any, | 6166 | .any, |
| 6168 | }, | 6167 | }, |
| 6169 | .patterns = &.{ | 6168 | .patterns = &.{ |
| ... | @@ -6208,8 +6207,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -6208,8 +6207,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 6208 | }, .{ | 6207 | }, .{ |
| 6209 | .required_features = .{ .@"64bit", null, null, null }, | 6208 | .required_features = .{ .@"64bit", null, null, null }, |
| 6210 | .src_constraints = .{ | 6209 | .src_constraints = .{ |
| 6211 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 6210 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 6212 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 6211 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 6213 | .any, | 6212 | .any, |
| 6214 | }, | 6213 | }, |
| 6215 | .patterns = &.{ | 6214 | .patterns = &.{ |
| ... | @@ -14984,7 +14983,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -14984,7 +14983,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 14984 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 14983 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 14985 | }, | 14984 | }, |
| 14986 | .extra_temps = .{ | 14985 | .extra_temps = .{ |
| 14987 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, | 14986 | .{ .type = .u8, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 14988 | .unused, | 14987 | .unused, |
| 14989 | .unused, | 14988 | .unused, |
| 14990 | .unused, | 14989 | .unused, |
| ... | @@ -15104,7 +15103,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15104,7 +15103,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15104 | }, | 15103 | }, |
| 15105 | .extra_temps = .{ | 15104 | .extra_temps = .{ |
| 15106 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15105 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 15107 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15106 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15108 | .unused, | 15107 | .unused, |
| 15109 | .unused, | 15108 | .unused, |
| 15110 | .unused, | 15109 | .unused, |
| ... | @@ -15134,7 +15133,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15134,7 +15133,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15134 | }, | 15133 | }, |
| 15135 | .extra_temps = .{ | 15134 | .extra_temps = .{ |
| 15136 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15135 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 15137 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15136 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15138 | .unused, | 15137 | .unused, |
| 15139 | .unused, | 15138 | .unused, |
| 15140 | .unused, | 15139 | .unused, |
| ... | @@ -15164,7 +15163,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15164,7 +15163,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15164 | }, | 15163 | }, |
| 15165 | .extra_temps = .{ | 15164 | .extra_temps = .{ |
| 15166 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15165 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 15167 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15166 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15168 | .unused, | 15167 | .unused, |
| 15169 | .unused, | 15168 | .unused, |
| 15170 | .unused, | 15169 | .unused, |
| ... | @@ -15195,7 +15194,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15195,7 +15194,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15195 | }, | 15194 | }, |
| 15196 | .extra_temps = .{ | 15195 | .extra_temps = .{ |
| 15197 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15196 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 15198 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15197 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15199 | .unused, | 15198 | .unused, |
| 15200 | .unused, | 15199 | .unused, |
| 15201 | .unused, | 15200 | .unused, |
| ... | @@ -15225,7 +15224,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15225,7 +15224,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15225 | .{ .src = .{ .to_mut_gpr, .mem, .none } }, | 15224 | .{ .src = .{ .to_mut_gpr, .mem, .none } }, |
| 15226 | }, | 15225 | }, |
| 15227 | .extra_temps = .{ | 15226 | .extra_temps = .{ |
| 15228 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15227 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15229 | .unused, | 15228 | .unused, |
| 15230 | .unused, | 15229 | .unused, |
| 15231 | .unused, | 15230 | .unused, |
| ... | @@ -15254,7 +15253,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15254,7 +15253,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15254 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 15253 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 15255 | }, | 15254 | }, |
| 15256 | .extra_temps = .{ | 15255 | .extra_temps = .{ |
| 15257 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15256 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15258 | .unused, | 15257 | .unused, |
| 15259 | .unused, | 15258 | .unused, |
| 15260 | .unused, | 15259 | .unused, |
| ... | @@ -15282,7 +15281,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15282,7 +15281,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15282 | .{ .src = .{ .to_mut_gpr, .mem, .none } }, | 15281 | .{ .src = .{ .to_mut_gpr, .mem, .none } }, |
| 15283 | }, | 15282 | }, |
| 15284 | .extra_temps = .{ | 15283 | .extra_temps = .{ |
| 15285 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15284 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15286 | .unused, | 15285 | .unused, |
| 15287 | .unused, | 15286 | .unused, |
| 15288 | .unused, | 15287 | .unused, |
| ... | @@ -15311,7 +15310,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15311,7 +15310,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15311 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 15310 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 15312 | }, | 15311 | }, |
| 15313 | .extra_temps = .{ | 15312 | .extra_temps = .{ |
| 15314 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15313 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15315 | .unused, | 15314 | .unused, |
| 15316 | .unused, | 15315 | .unused, |
| 15317 | .unused, | 15316 | .unused, |
| ... | @@ -15342,7 +15341,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15342,7 +15341,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15342 | }, | 15341 | }, |
| 15343 | .extra_temps = .{ | 15342 | .extra_temps = .{ |
| 15344 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15343 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 15345 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15344 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15346 | .unused, | 15345 | .unused, |
| 15347 | .unused, | 15346 | .unused, |
| 15348 | .unused, | 15347 | .unused, |
| ... | @@ -15372,7 +15371,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15372,7 +15371,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15372 | }, | 15371 | }, |
| 15373 | .extra_temps = .{ | 15372 | .extra_temps = .{ |
| 15374 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15373 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 15375 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15374 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15376 | .unused, | 15375 | .unused, |
| 15377 | .unused, | 15376 | .unused, |
| 15378 | .unused, | 15377 | .unused, |
| ... | @@ -15402,7 +15401,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15402,7 +15401,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15402 | }, | 15401 | }, |
| 15403 | .extra_temps = .{ | 15402 | .extra_temps = .{ |
| 15404 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15403 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 15405 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15404 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15406 | .unused, | 15405 | .unused, |
| 15407 | .unused, | 15406 | .unused, |
| 15408 | .unused, | 15407 | .unused, |
| ... | @@ -15433,7 +15432,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15433,7 +15432,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15433 | }, | 15432 | }, |
| 15434 | .extra_temps = .{ | 15433 | .extra_temps = .{ |
| 15435 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15434 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 15436 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15435 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15437 | .unused, | 15436 | .unused, |
| 15438 | .unused, | 15437 | .unused, |
| 15439 | .unused, | 15438 | .unused, |
| ... | @@ -15464,7 +15463,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15464,7 +15463,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15464 | }, | 15463 | }, |
| 15465 | .extra_temps = .{ | 15464 | .extra_temps = .{ |
| 15466 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15465 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 15467 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15466 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15468 | .unused, | 15467 | .unused, |
| 15469 | .unused, | 15468 | .unused, |
| 15470 | .unused, | 15469 | .unused, |
| ... | @@ -15495,7 +15494,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15495,7 +15494,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15495 | }, | 15494 | }, |
| 15496 | .extra_temps = .{ | 15495 | .extra_temps = .{ |
| 15497 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15496 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 15498 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15497 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15499 | .unused, | 15498 | .unused, |
| 15500 | .unused, | 15499 | .unused, |
| 15501 | .unused, | 15500 | .unused, |
| ... | @@ -15526,7 +15525,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15526,7 +15525,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15526 | }, | 15525 | }, |
| 15527 | .extra_temps = .{ | 15526 | .extra_temps = .{ |
| 15528 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15527 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 15529 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15528 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15530 | .unused, | 15529 | .unused, |
| 15531 | .unused, | 15530 | .unused, |
| 15532 | .unused, | 15531 | .unused, |
| ... | @@ -15558,7 +15557,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15558,7 +15557,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15558 | }, | 15557 | }, |
| 15559 | .extra_temps = .{ | 15558 | .extra_temps = .{ |
| 15560 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15559 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 15561 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15560 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15562 | .unused, | 15561 | .unused, |
| 15563 | .unused, | 15562 | .unused, |
| 15564 | .unused, | 15563 | .unused, |
| ... | @@ -15589,7 +15588,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15589,7 +15588,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15589 | .{ .src = .{ .to_mut_gpr, .mem, .none } }, | 15588 | .{ .src = .{ .to_mut_gpr, .mem, .none } }, |
| 15590 | }, | 15589 | }, |
| 15591 | .extra_temps = .{ | 15590 | .extra_temps = .{ |
| 15592 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15591 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15593 | .unused, | 15592 | .unused, |
| 15594 | .unused, | 15593 | .unused, |
| 15595 | .unused, | 15594 | .unused, |
| ... | @@ -15619,7 +15618,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15619,7 +15618,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15619 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 15618 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 15620 | }, | 15619 | }, |
| 15621 | .extra_temps = .{ | 15620 | .extra_temps = .{ |
| 15622 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15621 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15623 | .unused, | 15622 | .unused, |
| 15624 | .unused, | 15623 | .unused, |
| 15625 | .unused, | 15624 | .unused, |
| ... | @@ -15648,7 +15647,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15648,7 +15647,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15648 | .{ .src = .{ .to_mut_gpr, .mem, .none } }, | 15647 | .{ .src = .{ .to_mut_gpr, .mem, .none } }, |
| 15649 | }, | 15648 | }, |
| 15650 | .extra_temps = .{ | 15649 | .extra_temps = .{ |
| 15651 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15650 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15652 | .unused, | 15651 | .unused, |
| 15653 | .unused, | 15652 | .unused, |
| 15654 | .unused, | 15653 | .unused, |
| ... | @@ -15678,7 +15677,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15678,7 +15677,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15678 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 15677 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 15679 | }, | 15678 | }, |
| 15680 | .extra_temps = .{ | 15679 | .extra_temps = .{ |
| 15681 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, | 15680 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15682 | .unused, | 15681 | .unused, |
| 15683 | .unused, | 15682 | .unused, |
| 15684 | .unused, | 15683 | .unused, |
| ... | @@ -15737,7 +15736,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15737,7 +15736,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15737 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 15736 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 15738 | }, | 15737 | }, |
| 15739 | .extra_temps = .{ | 15738 | .extra_temps = .{ |
| 15740 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, | 15739 | .{ .type = .u16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15741 | .unused, | 15740 | .unused, |
| 15742 | .unused, | 15741 | .unused, |
| 15743 | .unused, | 15742 | .unused, |
| ... | @@ -15812,7 +15811,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15812,7 +15811,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15812 | }, | 15811 | }, |
| 15813 | .extra_temps = .{ | 15812 | .extra_temps = .{ |
| 15814 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 15813 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, |
| 15815 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 15814 | .{ .type = .i32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15816 | .unused, | 15815 | .unused, |
| 15817 | .unused, | 15816 | .unused, |
| 15818 | .unused, | 15817 | .unused, |
| ... | @@ -15842,7 +15841,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15842,7 +15841,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15842 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 15841 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 15843 | }, | 15842 | }, |
| 15844 | .extra_temps = .{ | 15843 | .extra_temps = .{ |
| 15845 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 15844 | .{ .type = .i32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15846 | .unused, | 15845 | .unused, |
| 15847 | .unused, | 15846 | .unused, |
| 15848 | .unused, | 15847 | .unused, |
| ... | @@ -15874,7 +15873,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15874,7 +15873,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15874 | }, | 15873 | }, |
| 15875 | .extra_temps = .{ | 15874 | .extra_temps = .{ |
| 15876 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 15875 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, |
| 15877 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 15876 | .{ .type = .i32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15878 | .unused, | 15877 | .unused, |
| 15879 | .unused, | 15878 | .unused, |
| 15880 | .unused, | 15879 | .unused, |
| ... | @@ -15906,7 +15905,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15906,7 +15905,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15906 | }, | 15905 | }, |
| 15907 | .extra_temps = .{ | 15906 | .extra_temps = .{ |
| 15908 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 15907 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, |
| 15909 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 15908 | .{ .type = .i32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15910 | .unused, | 15909 | .unused, |
| 15911 | .unused, | 15910 | .unused, |
| 15912 | .unused, | 15911 | .unused, |
| ... | @@ -15937,7 +15936,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15937,7 +15936,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15937 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 15936 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 15938 | }, | 15937 | }, |
| 15939 | .extra_temps = .{ | 15938 | .extra_temps = .{ |
| 15940 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, | 15939 | .{ .type = .i32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 15941 | .unused, | 15940 | .unused, |
| 15942 | .unused, | 15941 | .unused, |
| 15943 | .unused, | 15942 | .unused, |
| ... | @@ -15996,7 +15995,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -15996,7 +15995,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 15996 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 15995 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 15997 | }, | 15996 | }, |
| 15998 | .extra_temps = .{ | 15997 | .extra_temps = .{ |
| 15999 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, | 15998 | .{ .type = .u32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 16000 | .unused, | 15999 | .unused, |
| 16001 | .unused, | 16000 | .unused, |
| 16002 | .unused, | 16001 | .unused, |
| ... | @@ -16056,7 +16055,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -16056,7 +16055,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 16056 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 16055 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 16057 | }, | 16056 | }, |
| 16058 | .extra_temps = .{ | 16057 | .extra_temps = .{ |
| 16059 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 16058 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 16060 | .unused, | 16059 | .unused, |
| 16061 | .unused, | 16060 | .unused, |
| 16062 | .unused, | 16061 | .unused, |
| ... | @@ -16087,7 +16086,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -16087,7 +16086,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 16087 | }, | 16086 | }, |
| 16088 | .extra_temps = .{ | 16087 | .extra_temps = .{ |
| 16089 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 16088 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 16090 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 16089 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 16091 | .unused, | 16090 | .unused, |
| 16092 | .unused, | 16091 | .unused, |
| 16093 | .unused, | 16092 | .unused, |
| ... | @@ -16119,7 +16118,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -16119,7 +16118,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 16119 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 16118 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 16120 | }, | 16119 | }, |
| 16121 | .extra_temps = .{ | 16120 | .extra_temps = .{ |
| 16122 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 16121 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 16123 | .unused, | 16122 | .unused, |
| 16124 | .unused, | 16123 | .unused, |
| 16125 | .unused, | 16124 | .unused, |
| ... | @@ -16152,7 +16151,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -16152,7 +16151,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 16152 | }, | 16151 | }, |
| 16153 | .extra_temps = .{ | 16152 | .extra_temps = .{ |
| 16154 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 16153 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 16155 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 16154 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 16156 | .unused, | 16155 | .unused, |
| 16157 | .unused, | 16156 | .unused, |
| 16158 | .unused, | 16157 | .unused, |
| ... | @@ -16185,7 +16184,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -16185,7 +16184,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 16185 | }, | 16184 | }, |
| 16186 | .extra_temps = .{ | 16185 | .extra_temps = .{ |
| 16187 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 16186 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 16188 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 16187 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 16189 | .unused, | 16188 | .unused, |
| 16190 | .unused, | 16189 | .unused, |
| 16191 | .unused, | 16190 | .unused, |
| ... | @@ -16218,7 +16217,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -16218,7 +16217,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 16218 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 16217 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 16219 | }, | 16218 | }, |
| 16220 | .extra_temps = .{ | 16219 | .extra_temps = .{ |
| 16221 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, | 16220 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 16222 | .unused, | 16221 | .unused, |
| 16223 | .unused, | 16222 | .unused, |
| 16224 | .unused, | 16223 | .unused, |
| ... | @@ -16279,7 +16278,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -16279,7 +16278,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 16279 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, | 16278 | .{ .src = .{ .to_mut_gpr, .to_gpr, .none } }, |
| 16280 | }, | 16279 | }, |
| 16281 | .extra_temps = .{ | 16280 | .extra_temps = .{ |
| 16282 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | 16281 | .{ .type = .u64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 16283 | .unused, | 16282 | .unused, |
| 16284 | .unused, | 16283 | .unused, |
| 16285 | .unused, | 16284 | .unused, |
| ... | @@ -16302,8 +16301,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -16302,8 +16301,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 16302 | }, .{ | 16301 | }, .{ |
| 16303 | .required_features = .{ .@"64bit", null, null, null }, | 16302 | .required_features = .{ .@"64bit", null, null, null }, |
| 16304 | .src_constraints = .{ | 16303 | .src_constraints = .{ |
| 16305 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 16304 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 16306 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 16305 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 16307 | .any, | 16306 | .any, |
| 16308 | }, | 16307 | }, |
| 16309 | .patterns = &.{ | 16308 | .patterns = &.{ |
| ... | @@ -16346,8 +16345,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -16346,8 +16345,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 16346 | }, .{ | 16345 | }, .{ |
| 16347 | .required_features = .{ .@"64bit", null, null, null }, | 16346 | .required_features = .{ .@"64bit", null, null, null }, |
| 16348 | .src_constraints = .{ | 16347 | .src_constraints = .{ |
| 16349 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 16348 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 16350 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 16349 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 16351 | .any, | 16350 | .any, |
| 16352 | }, | 16351 | }, |
| 16353 | .patterns = &.{ | 16352 | .patterns = &.{ |
| ... | @@ -27013,27 +27012,35 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27013,27 +27012,35 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27013 | }; | 27012 | }; |
| 27014 | try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg); | 27013 | try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg); |
| 27015 | }, | 27014 | }, |
| 27016 | .div_float, .div_float_optimized, .div_exact, .div_exact_optimized => |air_tag| if (use_old) try cg.airMulDivBinOp(inst, switch (air_tag) { | 27015 | .mul_sat => |air_tag| if (use_old) try cg.airMulSat(inst) else fallback: { |
| 27017 | else => unreachable, | | |
| 27018 | .div_float, .div_float_optimized => .div_float, | | |
| 27019 | .div_exact, .div_exact_optimized => .div_exact, | | |
| 27020 | }) else { | | |
| 27021 | const bin_op = air_datas[@intFromEnum(inst)].bin_op; | 27016 | const bin_op = air_datas[@intFromEnum(inst)].bin_op; |
| 27022 | const ty = cg.typeOf(bin_op.lhs); | 27017 | if (cg.typeOf(bin_op.lhs).isVector(zcu)) break :fallback try cg.airMulSat(inst); |
| 27023 | var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs }); | 27018 | var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs }); |
| 27024 | var res: [1]Temp = undefined; | 27019 | var res: [1]Temp = undefined; |
| 27025 | (if (cg.floatBits(ty.scalarType(zcu))) |_| cg.select(&res, &.{ty}, &ops, comptime &.{ .{ | 27020 | cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, comptime &.{ .{ |
| 27026 | .required_features = .{ .f16c, null, null, null }, | 27021 | .src_constraints = .{ .{ .exact_signed_int = 8 }, .{ .exact_signed_int = 8 }, .any }, |
| 27027 | .src_constraints = .{ | 27022 | .patterns = &.{ |
| 27028 | .{ .scalar_float = .{ .of = .word, .is = .word } }, | 27023 | .{ .src = .{ .{ .to_reg = .al }, .mem, .none } }, |
| 27029 | .{ .scalar_float = .{ .of = .word, .is = .word } }, | 27024 | .{ .src = .{ .mem, .{ .to_reg = .al }, .none }, .commute = .{ 0, 1 } }, |
| 27030 | .any, | 27025 | .{ .src = .{ .{ .to_reg = .al }, .to_gpr, .none } }, |
| 27031 | }, | 27026 | }, |
| | 27027 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27028 | .clobbers = .{ .eflags = true }, |
| | 27029 | .each = .{ .once = &.{ |
| | 27030 | .{ ._, .i_, .mul, .src1b, ._, ._, ._ }, |
| | 27031 | .{ ._, ._nc, .j, .@"0f", ._, ._, ._ }, |
| | 27032 | .{ ._, ._r, .sa, .dst0w, .ui(15), ._, ._ }, |
| | 27033 | .{ ._, ._, .xor, .dst0b, .sa(.src0, .add_smax), ._, ._ }, |
| | 27034 | } }, |
| | 27035 | }, .{ |
| | 27036 | .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte }, .any }, |
| 27032 | .patterns = &.{ | 27037 | .patterns = &.{ |
| 27033 | .{ .src = .{ .to_sse, .to_sse, .none } }, | 27038 | .{ .src = .{ .{ .to_reg = .al }, .mem, .none } }, |
| | 27039 | .{ .src = .{ .mem, .{ .to_reg = .al }, .none }, .commute = .{ 0, 1 } }, |
| | 27040 | .{ .src = .{ .{ .to_reg = .al }, .to_gpr, .none } }, |
| 27034 | }, | 27041 | }, |
| 27035 | .extra_temps = .{ | 27042 | .extra_temps = .{ |
| 27036 | .{ .type = .f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } }, | 27043 | .{ .type = .i8, .kind = .{ .rc = .gphi } }, |
| 27037 | .unused, | 27044 | .unused, |
| 27038 | .unused, | 27045 | .unused, |
| 27039 | .unused, | 27046 | .unused, |
| ... | @@ -27045,26 +27052,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27045,26 +27052,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27045 | .unused, | 27052 | .unused, |
| 27046 | .unused, | 27053 | .unused, |
| 27047 | }, | 27054 | }, |
| 27048 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, | 27055 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27056 | .clobbers = .{ .eflags = true }, |
| 27049 | .each = .{ .once = &.{ | 27057 | .each = .{ .once = &.{ |
| 27050 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, | 27058 | .{ ._, .i_, .mul, .src1b, ._, ._, ._ }, |
| 27051 | .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ }, | 27059 | .{ ._, ._c, .j, .@"1f", ._, ._, ._ }, |
| 27052 | .{ ._, .v_ss, .div, .dst0x, .dst0x, .tmp0d, ._ }, | 27060 | .{ ._, ._, .mov, .tmp0d, .dst0d, ._, ._ }, |
| 27053 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, | 27061 | .{ ._, ._r, .sa, .tmp0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| | 27062 | .{ ._, ._, .cmp, .tmp0b, .dst0h, ._, ._ }, |
| | 27063 | .{ ._, ._e, .j, .@"0f", ._, ._, ._ }, |
| | 27064 | .{ .@"1:", ._r, .sa, .dst0w, .ui(15), ._, ._ }, |
| | 27065 | .{ ._, ._, .xor, .dst0b, .sa(.src0, .add_smax), ._, ._ }, |
| 27054 | } }, | 27066 | } }, |
| 27055 | }, .{ | 27067 | }, .{ |
| 27056 | .required_features = .{ .sse, null, null, null }, | 27068 | .src_constraints = .{ .{ .exact_unsigned_int = 8 }, .{ .exact_unsigned_int = 8 }, .any }, |
| 27057 | .src_constraints = .{ | | |
| 27058 | .{ .scalar_float = .{ .of = .word, .is = .word } }, | | |
| 27059 | .{ .scalar_float = .{ .of = .word, .is = .word } }, | | |
| 27060 | .any, | | |
| 27061 | }, | | |
| 27062 | .patterns = &.{ | 27069 | .patterns = &.{ |
| 27063 | .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } }, | 27070 | .{ .src = .{ .{ .to_reg = .al }, .mem, .none } }, |
| | 27071 | .{ .src = .{ .mem, .{ .to_reg = .al }, .none }, .commute = .{ 0, 1 } }, |
| | 27072 | .{ .src = .{ .{ .to_reg = .al }, .to_gpr, .none } }, |
| 27064 | }, | 27073 | }, |
| 27065 | .call_frame = .{ .alignment = .@"16" }, | | |
| 27066 | .extra_temps = .{ | 27074 | .extra_temps = .{ |
| 27067 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } }, | 27075 | .{ .type = .u8, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27068 | .unused, | 27076 | .unused, |
| 27069 | .unused, | 27077 | .unused, |
| 27070 | .unused, | 27078 | .unused, |
| ... | @@ -27077,25 +27085,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27077,25 +27085,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27077 | .unused, | 27085 | .unused, |
| 27078 | }, | 27086 | }, |
| 27079 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, | 27087 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27080 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, | 27088 | .clobbers = .{ .eflags = true }, |
| 27081 | .each = .{ .once = &.{ | 27089 | .each = .{ .once = &.{ |
| 27082 | .{ ._, ._, .call, .tmp0d, ._, ._, ._ }, | 27090 | .{ ._, ._, .mul, .src1b, ._, ._, ._ }, |
| | 27091 | .{ ._, ._, .sbb, .tmp0d, .tmp0d, ._, ._ }, |
| | 27092 | .{ ._, ._, .@"or", .dst0b, .tmp0b, ._, ._ }, |
| 27083 | } }, | 27093 | } }, |
| 27084 | }, .{ | 27094 | }, .{ |
| 27085 | .required_features = .{ .f16c, null, null, null }, | 27095 | .required_features = .{ .cmov, null, null, null }, |
| 27086 | .src_constraints = .{ | 27096 | .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte }, .any }, |
| 27087 | .{ .scalar_float = .{ .of = .qword, .is = .word } }, | | |
| 27088 | .{ .scalar_float = .{ .of = .qword, .is = .word } }, | | |
| 27089 | .any, | | |
| 27090 | }, | | |
| 27091 | .patterns = &.{ | 27097 | .patterns = &.{ |
| 27092 | .{ .src = .{ .mem, .mem, .none } }, | 27098 | .{ .src = .{ .{ .to_reg = .al }, .mem, .none } }, |
| 27093 | .{ .src = .{ .to_sse, .mem, .none } }, | 27099 | .{ .src = .{ .mem, .{ .to_reg = .al }, .none }, .commute = .{ 0, 1 } }, |
| 27094 | .{ .src = .{ .mem, .to_sse, .none } }, | 27100 | .{ .src = .{ .{ .to_reg = .al }, .to_gpr, .none } }, |
| 27095 | .{ .src = .{ .to_sse, .to_sse, .none } }, | | |
| 27096 | }, | 27101 | }, |
| 27097 | .extra_temps = .{ | 27102 | .extra_temps = .{ |
| 27098 | .{ .type = .vector_4_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } }, | 27103 | .{ .type = .u16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27099 | .unused, | 27104 | .unused, |
| 27100 | .unused, | 27105 | .unused, |
| 27101 | .unused, | 27106 | .unused, |
| ... | @@ -27107,28 +27112,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27107,28 +27112,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27107 | .unused, | 27112 | .unused, |
| 27108 | .unused, | 27113 | .unused, |
| 27109 | }, | 27114 | }, |
| 27110 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, | 27115 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27116 | .clobbers = .{ .eflags = true }, |
| 27111 | .each = .{ .once = &.{ | 27117 | .each = .{ .once = &.{ |
| 27112 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, | 27118 | .{ ._, ._, .mul, .src1b, ._, ._, ._ }, |
| 27113 | .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ }, | 27119 | .{ ._, ._, .mov, .tmp0d, .ua(.src0, .add_umax), ._, ._ }, |
| 27114 | .{ ._, .v_ps, .div, .dst0x, .dst0x, .tmp0x, ._ }, | 27120 | .{ ._, ._, .cmp, .dst0w, .tmp0w, ._, ._ }, |
| 27115 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, | 27121 | .{ ._, ._a, .cmov, .dst0d, .tmp0d, ._, ._ }, |
| 27116 | } }, | 27122 | } }, |
| 27117 | }, .{ | 27123 | }, .{ |
| 27118 | .required_features = .{ .f16c, null, null, null }, | 27124 | .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte }, .any }, |
| 27119 | .src_constraints = .{ | | |
| 27120 | .{ .scalar_float = .{ .of = .xword, .is = .word } }, | | |
| 27121 | .{ .scalar_float = .{ .of = .xword, .is = .word } }, | | |
| 27122 | .any, | | |
| 27123 | }, | | |
| 27124 | .patterns = &.{ | 27125 | .patterns = &.{ |
| 27125 | .{ .src = .{ .mem, .mem, .none } }, | 27126 | .{ .src = .{ .{ .to_reg = .al }, .mem, .none } }, |
| 27126 | .{ .src = .{ .to_sse, .mem, .none } }, | 27127 | .{ .src = .{ .mem, .{ .to_reg = .al }, .none }, .commute = .{ 0, 1 } }, |
| 27127 | .{ .src = .{ .mem, .to_sse, .none } }, | 27128 | .{ .src = .{ .{ .to_reg = .al }, .to_gpr, .none } }, |
| 27128 | .{ .src = .{ .to_sse, .to_sse, .none } }, | | |
| 27129 | }, | 27129 | }, |
| 27130 | .extra_temps = .{ | 27130 | .extra_temps = .{ |
| 27131 | .{ .type = .vector_8_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } }, | 27131 | .{ .type = .u16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27132 | .unused, | 27132 | .unused, |
| 27133 | .unused, | 27133 | .unused, |
| 27134 | .unused, | 27134 | .unused, |
| ... | @@ -27140,27 +27140,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27140,27 +27140,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27140 | .unused, | 27140 | .unused, |
| 27141 | .unused, | 27141 | .unused, |
| 27142 | }, | 27142 | }, |
| 27143 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, | 27143 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27144 | .clobbers = .{ .eflags = true }, |
| 27144 | .each = .{ .once = &.{ | 27145 | .each = .{ .once = &.{ |
| 27145 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, | 27146 | .{ ._, ._, .mul, .src1b, ._, ._, ._ }, |
| 27146 | .{ ._, .v_ps, .cvtph2, .tmp0y, .src1x, ._, ._ }, | 27147 | .{ ._, ._, .cmp, .dst0w, .ua(.src0, .add_umax), ._, ._ }, |
| 27147 | .{ ._, .v_ps, .div, .dst0y, .dst0y, .tmp0y, ._ }, | 27148 | .{ ._, ._na, .j, .@"0f", ._, ._, ._ }, |
| 27148 | .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ }, | 27149 | .{ ._, ._, .mov, .dst0d, .ua(.src0, .add_umax), ._, ._ }, |
| 27149 | } }, | 27150 | } }, |
| 27150 | }, .{ | 27151 | }, .{ |
| 27151 | .required_features = .{ .f16c, null, null, null }, | 27152 | .required_features = .{ .fast_imm16, null, null, null }, |
| 27152 | .src_constraints = .{ | 27153 | .src_constraints = .{ .{ .exact_signed_int = 16 }, .{ .exact_signed_int = 16 }, .any }, |
| 27153 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } }, | | |
| 27154 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } }, | | |
| 27155 | .any, | | |
| 27156 | }, | | |
| 27157 | .patterns = &.{ | 27154 | .patterns = &.{ |
| 27158 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27155 | .{ .src = .{ .{ .to_reg = .ax }, .mem, .none } }, |
| | 27156 | .{ .src = .{ .mem, .{ .to_reg = .ax }, .none }, .commute = .{ 0, 1 } }, |
| | 27157 | .{ .src = .{ .{ .to_reg = .ax }, .to_gpr, .none } }, |
| 27159 | }, | 27158 | }, |
| 27160 | .extra_temps = .{ | 27159 | .extra_temps = .{ |
| 27161 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 27160 | .{ .type = .i16, .kind = .{ .reg = .dx } }, |
| 27162 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, | 27161 | .unused, |
| 27163 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, | 27162 | .unused, |
| 27164 | .unused, | 27163 | .unused, |
| 27165 | .unused, | 27164 | .unused, |
| 27166 | .unused, | 27165 | .unused, |
| ... | @@ -27170,33 +27169,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27170,33 +27169,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27170 | .unused, | 27169 | .unused, |
| 27171 | .unused, | 27170 | .unused, |
| 27172 | }, | 27171 | }, |
| 27173 | .dst_temps = .{ .mem, .unused }, | 27172 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27174 | .clobbers = .{ .eflags = true }, | 27173 | .clobbers = .{ .eflags = true }, |
| 27175 | .each = .{ .once = &.{ | 27174 | .each = .{ .once = &.{ |
| 27176 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 27175 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| 27177 | .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, | 27176 | .{ ._, .i_, .mul, .src1w, ._, ._, ._ }, |
| 27178 | .{ ._, .v_ps, .cvtph2, .tmp2y, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ }, | 27177 | .{ ._, ._nc, .j, .@"0f", ._, ._, ._ }, |
| 27179 | .{ ._, .v_ps, .div, .tmp1y, .tmp1y, .tmp2y, ._ }, | 27178 | .{ ._, ._, .mov, .dst0d, .tmp0d, ._, ._ }, |
| 27180 | .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ }, | 27179 | .{ ._, ._r, .sa, .dst0w, .ui(15), ._, ._ }, |
| 27181 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, | 27180 | .{ ._, ._, .xor, .dst0w, .sa(.src0, .add_smax), ._, ._ }, |
| 27182 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | | |
| 27183 | } }, | 27181 | } }, |
| 27184 | }, .{ | 27182 | }, .{ |
| 27185 | .required_features = .{ .avx, null, null, null }, | 27183 | .src_constraints = .{ .{ .exact_signed_int = 16 }, .{ .exact_signed_int = 16 }, .any }, |
| 27186 | .src_constraints = .{ | | |
| 27187 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, | | |
| 27188 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, | | |
| 27189 | .any, | | |
| 27190 | }, | | |
| 27191 | .patterns = &.{ | 27184 | .patterns = &.{ |
| 27192 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27185 | .{ .src = .{ .{ .to_reg = .ax }, .mem, .none } }, |
| | 27186 | .{ .src = .{ .mem, .{ .to_reg = .ax }, .none }, .commute = .{ 0, 1 } }, |
| | 27187 | .{ .src = .{ .{ .to_reg = .ax }, .to_gpr, .none } }, |
| 27193 | }, | 27188 | }, |
| 27194 | .call_frame = .{ .alignment = .@"16" }, | | |
| 27195 | .extra_temps = .{ | 27189 | .extra_temps = .{ |
| 27196 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 27190 | .{ .type = .i16, .kind = .{ .reg = .dx } }, |
| 27197 | .{ .type = .f16, .kind = .{ .reg = .xmm0 } }, | 27191 | .unused, |
| 27198 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, | 27192 | .unused, |
| 27199 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } }, | 27193 | .unused, |
| 27200 | .unused, | 27194 | .unused, |
| 27201 | .unused, | 27195 | .unused, |
| 27202 | .unused, | 27196 | .unused, |
| ... | @@ -27205,34 +27199,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27205,34 +27199,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27205 | .unused, | 27199 | .unused, |
| 27206 | .unused, | 27200 | .unused, |
| 27207 | }, | 27201 | }, |
| 27208 | .dst_temps = .{ .mem, .unused }, | 27202 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27209 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, | 27203 | .clobbers = .{ .eflags = true }, |
| 27210 | .each = .{ .once = &.{ | 27204 | .each = .{ .once = &.{ |
| 27211 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 27205 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| 27212 | .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ }, | 27206 | .{ ._, .i_, .mul, .src1w, ._, ._, ._ }, |
| 27213 | .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) }, | 27207 | .{ ._, ._nc, .j, .@"0f", ._, ._, ._ }, |
| 27214 | .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0) }, | 27208 | .{ ._, ._, .mov, .dst0d, .tmp0d, ._, ._ }, |
| 27215 | .{ ._, ._, .call, .tmp3d, ._, ._, ._ }, | 27209 | .{ ._, ._r, .sa, .dst0w, .ui(15), ._, ._ }, |
| 27216 | .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ }, | 27210 | .{ ._, ._, .xor, .dst0d, .sa(.src0, .add_smax), ._, ._ }, |
| 27217 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, | | |
| 27218 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | | |
| 27219 | } }, | 27211 | } }, |
| 27220 | }, .{ | 27212 | }, .{ |
| 27221 | .required_features = .{ .sse4_1, null, null, null }, | 27213 | .required_features = .{ .fast_imm16, null, null, null }, |
| 27222 | .src_constraints = .{ | 27214 | .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word }, .any }, |
| 27223 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, | | |
| 27224 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, | | |
| 27225 | .any, | | |
| 27226 | }, | | |
| 27227 | .patterns = &.{ | 27215 | .patterns = &.{ |
| 27228 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27216 | .{ .src = .{ .{ .to_reg = .ax }, .mem, .none } }, |
| | 27217 | .{ .src = .{ .mem, .{ .to_reg = .ax }, .none }, .commute = .{ 0, 1 } }, |
| | 27218 | .{ .src = .{ .{ .to_reg = .ax }, .to_gpr, .none } }, |
| 27229 | }, | 27219 | }, |
| 27230 | .call_frame = .{ .alignment = .@"16" }, | | |
| 27231 | .extra_temps = .{ | 27220 | .extra_temps = .{ |
| 27232 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 27221 | .{ .type = .i16, .kind = .{ .reg = .dx } }, |
| 27233 | .{ .type = .f16, .kind = .{ .reg = .xmm0 } }, | 27222 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27234 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, | 27223 | .unused, |
| 27235 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } }, | 27224 | .unused, |
| 27236 | .unused, | 27225 | .unused, |
| 27237 | .unused, | 27226 | .unused, |
| 27238 | .unused, | 27227 | .unused, |
| ... | @@ -27241,36 +27230,33 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27241,36 +27230,33 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27241 | .unused, | 27230 | .unused, |
| 27242 | .unused, | 27231 | .unused, |
| 27243 | }, | 27232 | }, |
| 27244 | .dst_temps = .{ .mem, .unused }, | 27233 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27245 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, | 27234 | .clobbers = .{ .eflags = true }, |
| 27246 | .each = .{ .once = &.{ | 27235 | .each = .{ .once = &.{ |
| 27247 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 27236 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| 27248 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, | 27237 | .{ ._, .i_, .mul, .src1w, ._, ._, ._ }, |
| 27249 | .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ }, | 27238 | .{ ._, ._c, .j, .@"1f", ._, ._, ._ }, |
| 27250 | .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ }, | 27239 | .{ ._, ._, .mov, .tmp1d, .dst0d, ._, ._ }, |
| 27251 | .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ }, | 27240 | .{ ._, ._r, .sa, .tmp1w, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 27252 | .{ ._, ._, .call, .tmp3d, ._, ._, ._ }, | 27241 | .{ ._, ._, .cmp, .tmp1w, .tmp0w, ._, ._ }, |
| 27253 | .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ }, | 27242 | .{ ._, ._e, .j, .@"0f", ._, ._, ._ }, |
| 27254 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, | 27243 | .{ .@"1:", ._, .mov, .dst0d, .tmp0d, ._, ._ }, |
| 27255 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | 27244 | .{ ._, ._r, .sa, .dst0w, .ui(15), ._, ._ }, |
| | 27245 | .{ ._, ._, .xor, .dst0w, .sa(.src0, .add_smax), ._, ._ }, |
| 27256 | } }, | 27246 | } }, |
| 27257 | }, .{ | 27247 | }, .{ |
| 27258 | .required_features = .{ .sse2, null, null, null }, | 27248 | .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word }, .any }, |
| 27259 | .src_constraints = .{ | | |
| 27260 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, | | |
| 27261 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, | | |
| 27262 | .any, | | |
| 27263 | }, | | |
| 27264 | .patterns = &.{ | 27249 | .patterns = &.{ |
| 27265 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27250 | .{ .src = .{ .{ .to_reg = .ax }, .mem, .none } }, |
| | 27251 | .{ .src = .{ .mem, .{ .to_reg = .ax }, .none }, .commute = .{ 0, 1 } }, |
| | 27252 | .{ .src = .{ .{ .to_reg = .ax }, .to_gpr, .none } }, |
| 27266 | }, | 27253 | }, |
| 27267 | .call_frame = .{ .alignment = .@"16" }, | | |
| 27268 | .extra_temps = .{ | 27254 | .extra_temps = .{ |
| 27269 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 27255 | .{ .type = .i16, .kind = .{ .reg = .dx } }, |
| 27270 | .{ .type = .f16, .kind = .{ .reg = .xmm0 } }, | 27256 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27271 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, | 27257 | .unused, |
| 27272 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } }, | 27258 | .unused, |
| 27273 | .{ .type = .f16, .kind = .{ .reg = .ax } }, | 27259 | .unused, |
| 27274 | .unused, | 27260 | .unused, |
| 27275 | .unused, | 27261 | .unused, |
| 27276 | .unused, | 27262 | .unused, |
| ... | @@ -27278,149 +27264,122 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27278,149 +27264,122 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27278 | .unused, | 27264 | .unused, |
| 27279 | .unused, | 27265 | .unused, |
| 27280 | }, | 27266 | }, |
| 27281 | .dst_temps = .{ .mem, .unused }, | 27267 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27282 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, | 27268 | .clobbers = .{ .eflags = true }, |
| 27283 | .each = .{ .once = &.{ | 27269 | .each = .{ .once = &.{ |
| 27284 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 27270 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| 27285 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, | 27271 | .{ ._, .i_, .mul, .src1w, ._, ._, ._ }, |
| 27286 | .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ }, | 27272 | .{ ._, ._c, .j, .@"1f", ._, ._, ._ }, |
| 27287 | .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ }, | 27273 | .{ ._, ._, .mov, .tmp1d, .dst0d, ._, ._ }, |
| 27288 | .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ }, | 27274 | .{ ._, ._r, .sa, .tmp1w, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 27289 | .{ ._, ._, .call, .tmp3d, ._, ._, ._ }, | 27275 | .{ ._, ._, .cmp, .tmp1w, .tmp0w, ._, ._ }, |
| 27290 | .{ ._, .p_w, .extr, .tmp4d, .tmp1x, .ui(0), ._ }, | 27276 | .{ ._, ._e, .j, .@"0f", ._, ._, ._ }, |
| 27291 | .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ }, | 27277 | .{ .@"1:", ._, .mov, .dst0d, .tmp0d, ._, ._ }, |
| 27292 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, | 27278 | .{ ._, ._r, .sa, .dst0w, .ui(15), ._, ._ }, |
| 27293 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | 27279 | .{ ._, ._, .xor, .dst0d, .sa(.src0, .add_smax), ._, ._ }, |
| 27294 | } }, | 27280 | } }, |
| 27295 | }, .{ | 27281 | }, .{ |
| 27296 | .required_features = .{ .sse, null, null, null }, | 27282 | .src_constraints = .{ .{ .exact_unsigned_int = 16 }, .{ .exact_unsigned_int = 16 }, .any }, |
| 27297 | .src_constraints = .{ | | |
| 27298 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, | | |
| 27299 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, | | |
| 27300 | .any, | | |
| 27301 | }, | | |
| 27302 | .patterns = &.{ | 27283 | .patterns = &.{ |
| 27303 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27284 | .{ .src = .{ .{ .to_reg = .ax }, .mem, .none } }, |
| | 27285 | .{ .src = .{ .mem, .{ .to_reg = .ax }, .none }, .commute = .{ 0, 1 } }, |
| | 27286 | .{ .src = .{ .{ .to_reg = .ax }, .to_gpr, .none } }, |
| 27304 | }, | 27287 | }, |
| 27305 | .call_frame = .{ .alignment = .@"16" }, | | |
| 27306 | .extra_temps = .{ | 27288 | .extra_temps = .{ |
| 27307 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 27289 | .{ .type = .u16, .kind = .{ .reg = .dx } }, |
| 27308 | .{ .type = .f16, .kind = .{ .reg = .ax } }, | 27290 | .unused, |
| 27309 | .{ .type = .f32, .kind = .mem }, | 27291 | .unused, |
| 27310 | .{ .type = .f16, .kind = .{ .reg = .xmm0 } }, | 27292 | .unused, |
| 27311 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, | 27293 | .unused, |
| 27312 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } }, | 27294 | .unused, |
| 27313 | .unused, | 27295 | .unused, |
| 27314 | .unused, | 27296 | .unused, |
| 27315 | .unused, | 27297 | .unused, |
| 27316 | .unused, | 27298 | .unused, |
| 27317 | .unused, | 27299 | .unused, |
| 27318 | }, | 27300 | }, |
| 27319 | .dst_temps = .{ .mem, .unused }, | 27301 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27320 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, | 27302 | .clobbers = .{ .eflags = true }, |
| 27321 | .each = .{ .once = &.{ | 27303 | .each = .{ .once = &.{ |
| 27322 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 27304 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| 27323 | .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ }, | 27305 | .{ ._, ._, .mul, .src1w, ._, ._, ._ }, |
| 27324 | .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ }, | 27306 | .{ ._, ._, .sbb, .tmp0d, .tmp0d, ._, ._ }, |
| 27325 | .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ }, | 27307 | .{ ._, ._, .@"or", .dst0d, .tmp0d, ._, ._ }, |
| 27326 | .{ ._, ._, .movzx, .tmp1d, .memia(.src1w, .tmp0, .add_unaligned_size), ._, ._ }, | | |
| 27327 | .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ }, | | |
| 27328 | .{ ._, ._ss, .mov, .tmp4x, .mem(.tmp2d), ._, ._ }, | | |
| 27329 | .{ ._, ._, .call, .tmp5d, ._, ._, ._ }, | | |
| 27330 | .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ }, | | |
| 27331 | .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ }, | | |
| 27332 | .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ }, | | |
| 27333 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, | | |
| 27334 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | | |
| 27335 | } }, | 27308 | } }, |
| 27336 | }, .{ | 27309 | }, .{ |
| 27337 | .required_features = .{ .avx, null, null, null }, | 27310 | .required_features = .{ .bmi, .cmov, null, null }, |
| 27338 | .src_constraints = .{ | 27311 | .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word }, .any }, |
| 27339 | .{ .scalar_float = .{ .of = .dword, .is = .dword } }, | | |
| 27340 | .{ .scalar_float = .{ .of = .dword, .is = .dword } }, | | |
| 27341 | .any, | | |
| 27342 | }, | | |
| 27343 | .patterns = &.{ | 27312 | .patterns = &.{ |
| 27344 | .{ .src = .{ .to_sse, .mem, .none } }, | 27313 | .{ .src = .{ .{ .to_reg = .ax }, .mem, .none } }, |
| 27345 | .{ .src = .{ .to_sse, .to_sse, .none } }, | 27314 | .{ .src = .{ .mem, .{ .to_reg = .ax }, .none }, .commute = .{ 0, 1 } }, |
| 27346 | }, | 27315 | .{ .src = .{ .{ .to_reg = .ax }, .to_gpr, .none } }, |
| 27347 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, | | |
| 27348 | .each = .{ .once = &.{ | | |
| 27349 | .{ ._, .v_ss, .div, .dst0x, .src0x, .src1d, ._ }, | | |
| 27350 | } }, | | |
| 27351 | }, .{ | | |
| 27352 | .required_features = .{ .sse, null, null, null }, | | |
| 27353 | .src_constraints = .{ | | |
| 27354 | .{ .scalar_float = .{ .of = .dword, .is = .dword } }, | | |
| 27355 | .{ .scalar_float = .{ .of = .dword, .is = .dword } }, | | |
| 27356 | .any, | | |
| 27357 | }, | 27316 | }, |
| 27358 | .patterns = &.{ | 27317 | .extra_temps = .{ |
| 27359 | .{ .src = .{ .to_mut_sse, .mem, .none } }, | 27318 | .{ .type = .u16, .kind = .{ .reg = .dx } }, |
| 27360 | .{ .src = .{ .to_mut_sse, .to_sse, .none } }, | 27319 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| | 27320 | .{ .type = .u16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| | 27321 | .unused, |
| | 27322 | .unused, |
| | 27323 | .unused, |
| | 27324 | .unused, |
| | 27325 | .unused, |
| | 27326 | .unused, |
| | 27327 | .unused, |
| | 27328 | .unused, |
| 27361 | }, | 27329 | }, |
| 27362 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, | 27330 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27331 | .clobbers = .{ .eflags = true }, |
| 27363 | .each = .{ .once = &.{ | 27332 | .each = .{ .once = &.{ |
| 27364 | .{ ._, ._ss, .div, .dst0x, .src1d, ._, ._ }, | 27333 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| | 27334 | .{ ._, ._, .mov, .tmp1d, .ua(.src0, .add_umax), ._, ._ }, |
| | 27335 | .{ ._, ._, .mul, .src1w, ._, ._, ._ }, |
| | 27336 | .{ ._, ._, .andn, .tmp2d, .tmp1d, .dst0d, ._ }, |
| | 27337 | .{ ._, ._, .@"or", .tmp2w, .tmp0w, ._, ._ }, |
| | 27338 | .{ ._, ._nz, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 27365 | } }, | 27339 | } }, |
| 27366 | }, .{ | 27340 | }, .{ |
| 27367 | .required_features = .{ .avx, null, null, null }, | 27341 | .required_features = .{ .cmov, .fast_imm16, null, null }, |
| 27368 | .src_constraints = .{ | 27342 | .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word }, .any }, |
| 27369 | .{ .scalar_float = .{ .of = .xword, .is = .dword } }, | | |
| 27370 | .{ .scalar_float = .{ .of = .xword, .is = .dword } }, | | |
| 27371 | .any, | | |
| 27372 | }, | | |
| 27373 | .patterns = &.{ | 27343 | .patterns = &.{ |
| 27374 | .{ .src = .{ .to_sse, .mem, .none } }, | 27344 | .{ .src = .{ .{ .to_reg = .ax }, .mem, .none } }, |
| 27375 | .{ .src = .{ .to_sse, .to_sse, .none } }, | 27345 | .{ .src = .{ .mem, .{ .to_reg = .ax }, .none }, .commute = .{ 0, 1 } }, |
| 27376 | }, | 27346 | .{ .src = .{ .{ .to_reg = .ax }, .to_gpr, .none } }, |
| 27377 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, | | |
| 27378 | .each = .{ .once = &.{ | | |
| 27379 | .{ ._, .v_ps, .div, .dst0x, .src0x, .src1x, ._ }, | | |
| 27380 | } }, | | |
| 27381 | }, .{ | | |
| 27382 | .required_features = .{ .sse, null, null, null }, | | |
| 27383 | .src_constraints = .{ | | |
| 27384 | .{ .scalar_float = .{ .of = .xword, .is = .dword } }, | | |
| 27385 | .{ .scalar_float = .{ .of = .xword, .is = .dword } }, | | |
| 27386 | .any, | | |
| 27387 | }, | 27347 | }, |
| 27388 | .patterns = &.{ | 27348 | .extra_temps = .{ |
| 27389 | .{ .src = .{ .to_mut_sse, .mem, .none } }, | 27349 | .{ .type = .u16, .kind = .{ .reg = .dx } }, |
| 27390 | .{ .src = .{ .to_mut_sse, .to_sse, .none } }, | 27350 | .{ .type = .u16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| | 27351 | .unused, |
| | 27352 | .unused, |
| | 27353 | .unused, |
| | 27354 | .unused, |
| | 27355 | .unused, |
| | 27356 | .unused, |
| | 27357 | .unused, |
| | 27358 | .unused, |
| | 27359 | .unused, |
| 27391 | }, | 27360 | }, |
| 27392 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, | 27361 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27362 | .clobbers = .{ .eflags = true }, |
| 27393 | .each = .{ .once = &.{ | 27363 | .each = .{ .once = &.{ |
| 27394 | .{ ._, ._ps, .div, .dst0x, .src1x, ._, ._ }, | 27364 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| 27395 | } }, | 27365 | .{ ._, ._, .mul, .src1w, ._, ._, ._ }, |
| 27396 | }, .{ | 27366 | .{ ._, ._, .mov, .tmp1d, .dst0d, ._, ._ }, |
| 27397 | .required_features = .{ .avx, null, null, null }, | 27367 | .{ ._, ._, .@"and", .tmp1w, .sa(.src0, .add_2_smin), ._, ._ }, |
| 27398 | .src_constraints = .{ | 27368 | .{ ._, ._, .@"or", .tmp1w, .tmp0w, ._, ._ }, |
| 27399 | .{ .scalar_float = .{ .of = .yword, .is = .dword } }, | 27369 | .{ ._, ._, .mov, .tmp0d, .ua(.src0, .add_umax), ._, ._ }, |
| 27400 | .{ .scalar_float = .{ .of = .yword, .is = .dword } }, | 27370 | .{ ._, ._nz, .cmov, .dst0d, .tmp0d, ._, ._ }, |
| 27401 | .any, | | |
| 27402 | }, | | |
| 27403 | .patterns = &.{ | | |
| 27404 | .{ .src = .{ .to_sse, .mem, .none } }, | | |
| 27405 | .{ .src = .{ .to_sse, .to_sse, .none } }, | | |
| 27406 | }, | | |
| 27407 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, | | |
| 27408 | .each = .{ .once = &.{ | | |
| 27409 | .{ ._, .v_ps, .div, .dst0y, .src0y, .src1y, ._ }, | | |
| 27410 | } }, | 27371 | } }, |
| 27411 | }, .{ | 27372 | }, .{ |
| 27412 | .required_features = .{ .avx, null, null, null }, | 27373 | .required_features = .{ .cmov, null, null, null }, |
| 27413 | .src_constraints = .{ | 27374 | .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word }, .any }, |
| 27414 | .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, | | |
| 27415 | .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, | | |
| 27416 | .any, | | |
| 27417 | }, | | |
| 27418 | .patterns = &.{ | 27375 | .patterns = &.{ |
| 27419 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27376 | .{ .src = .{ .{ .to_reg = .ax }, .mem, .none } }, |
| | 27377 | .{ .src = .{ .mem, .{ .to_reg = .ax }, .none }, .commute = .{ 0, 1 } }, |
| | 27378 | .{ .src = .{ .{ .to_reg = .ax }, .to_gpr, .none } }, |
| 27420 | }, | 27379 | }, |
| 27421 | .extra_temps = .{ | 27380 | .extra_temps = .{ |
| 27422 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 27381 | .{ .type = .u16, .kind = .{ .reg = .dx } }, |
| 27423 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, | 27382 | .{ .type = .u16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27424 | .unused, | 27383 | .unused, |
| 27425 | .unused, | 27384 | .unused, |
| 27426 | .unused, | 27385 | .unused, |
| ... | @@ -27431,29 +27390,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27431,29 +27390,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27431 | .unused, | 27390 | .unused, |
| 27432 | .unused, | 27391 | .unused, |
| 27433 | }, | 27392 | }, |
| 27434 | .dst_temps = .{ .mem, .unused }, | 27393 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27435 | .clobbers = .{ .eflags = true }, | 27394 | .clobbers = .{ .eflags = true }, |
| 27436 | .each = .{ .once = &.{ | 27395 | .each = .{ .once = &.{ |
| 27437 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 27396 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| 27438 | .{ .@"0:", .v_ps, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ }, | 27397 | .{ ._, ._, .mul, .src1w, ._, ._, ._ }, |
| 27439 | .{ ._, .v_ps, .div, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ }, | 27398 | .{ ._, ._, .mov, .tmp1d, .dst0d, ._, ._ }, |
| 27440 | .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ }, | 27399 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_2_smin), ._, ._ }, |
| 27441 | .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ }, | 27400 | .{ ._, ._, .@"or", .tmp1w, .tmp0w, ._, ._ }, |
| 27442 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | 27401 | .{ ._, ._, .mov, .tmp0d, .ua(.src0, .add_umax), ._, ._ }, |
| | 27402 | .{ ._, ._nz, .cmov, .dst0d, .tmp0d, ._, ._ }, |
| 27443 | } }, | 27403 | } }, |
| 27444 | }, .{ | 27404 | }, .{ |
| 27445 | .required_features = .{ .sse, null, null, null }, | 27405 | .required_features = .{ .fast_imm16, null, null, null }, |
| 27446 | .src_constraints = .{ | 27406 | .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word }, .any }, |
| 27447 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, | | |
| 27448 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, | | |
| 27449 | .any, | | |
| 27450 | }, | | |
| 27451 | .patterns = &.{ | 27407 | .patterns = &.{ |
| 27452 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27408 | .{ .src = .{ .{ .to_reg = .ax }, .mem, .none } }, |
| | 27409 | .{ .src = .{ .mem, .{ .to_reg = .ax }, .none }, .commute = .{ 0, 1 } }, |
| | 27410 | .{ .src = .{ .{ .to_reg = .ax }, .to_gpr, .none } }, |
| 27453 | }, | 27411 | }, |
| 27454 | .extra_temps = .{ | 27412 | .extra_temps = .{ |
| 27455 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 27413 | .{ .type = .u16, .kind = .{ .reg = .dx } }, |
| 27456 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, | 27414 | .{ .type = .u16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27457 | .unused, | 27415 | .unused, |
| 27458 | .unused, | 27416 | .unused, |
| 27459 | .unused, | 27417 | .unused, |
| ... | @@ -27464,59 +27422,58 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27464,59 +27422,58 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27464 | .unused, | 27422 | .unused, |
| 27465 | .unused, | 27423 | .unused, |
| 27466 | }, | 27424 | }, |
| 27467 | .dst_temps = .{ .mem, .unused }, | 27425 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27468 | .clobbers = .{ .eflags = true }, | 27426 | .clobbers = .{ .eflags = true }, |
| 27469 | .each = .{ .once = &.{ | 27427 | .each = .{ .once = &.{ |
| 27470 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 27428 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| 27471 | .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, | 27429 | .{ ._, ._, .mul, .src1w, ._, ._, ._ }, |
| 27472 | .{ ._, ._ps, .div, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ }, | 27430 | .{ ._, ._, .mov, .tmp1d, .dst0d, ._, ._ }, |
| 27473 | .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ }, | 27431 | .{ ._, ._, .@"and", .tmp1w, .sa(.src0, .add_2_smin), ._, ._ }, |
| 27474 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, | 27432 | .{ ._, ._, .@"or", .tmp1w, .tmp0w, ._, ._ }, |
| 27475 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | 27433 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 27434 | .{ ._, ._, .mov, .dst0d, .ua(.src0, .add_umax), ._, ._ }, |
| 27476 | } }, | 27435 | } }, |
| 27477 | }, .{ | 27436 | }, .{ |
| 27478 | .required_features = .{ .avx, null, null, null }, | 27437 | .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word }, .any }, |
| 27479 | .src_constraints = .{ | | |
| 27480 | .{ .scalar_float = .{ .of = .qword, .is = .qword } }, | | |
| 27481 | .{ .scalar_float = .{ .of = .qword, .is = .qword } }, | | |
| 27482 | .any, | | |
| 27483 | }, | | |
| 27484 | .patterns = &.{ | 27438 | .patterns = &.{ |
| 27485 | .{ .src = .{ .to_sse, .mem, .none } }, | 27439 | .{ .src = .{ .{ .to_reg = .ax }, .mem, .none } }, |
| 27486 | .{ .src = .{ .to_sse, .to_sse, .none } }, | 27440 | .{ .src = .{ .mem, .{ .to_reg = .ax }, .none }, .commute = .{ 0, 1 } }, |
| 27487 | }, | 27441 | .{ .src = .{ .{ .to_reg = .ax }, .to_gpr, .none } }, |
| 27488 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, | | |
| 27489 | .each = .{ .once = &.{ | | |
| 27490 | .{ ._, .v_sd, .div, .dst0x, .src0x, .src1q, ._ }, | | |
| 27491 | } }, | | |
| 27492 | }, .{ | | |
| 27493 | .required_features = .{ .sse2, null, null, null }, | | |
| 27494 | .src_constraints = .{ | | |
| 27495 | .{ .scalar_float = .{ .of = .qword, .is = .qword } }, | | |
| 27496 | .{ .scalar_float = .{ .of = .qword, .is = .qword } }, | | |
| 27497 | .any, | | |
| 27498 | }, | 27442 | }, |
| 27499 | .patterns = &.{ | 27443 | .extra_temps = .{ |
| 27500 | .{ .src = .{ .to_mut_sse, .mem, .none } }, | 27444 | .{ .type = .u16, .kind = .{ .reg = .dx } }, |
| 27501 | .{ .src = .{ .to_mut_sse, .to_sse, .none } }, | 27445 | .{ .type = .u16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| | 27446 | .unused, |
| | 27447 | .unused, |
| | 27448 | .unused, |
| | 27449 | .unused, |
| | 27450 | .unused, |
| | 27451 | .unused, |
| | 27452 | .unused, |
| | 27453 | .unused, |
| | 27454 | .unused, |
| 27502 | }, | 27455 | }, |
| 27503 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, | 27456 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27457 | .clobbers = .{ .eflags = true }, |
| 27504 | .each = .{ .once = &.{ | 27458 | .each = .{ .once = &.{ |
| 27505 | .{ ._, ._sd, .div, .dst0x, .src1q, ._, ._ }, | 27459 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| | 27460 | .{ ._, ._, .mul, .src1w, ._, ._, ._ }, |
| | 27461 | .{ ._, ._, .mov, .tmp1d, .dst0d, ._, ._ }, |
| | 27462 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_2_smin), ._, ._ }, |
| | 27463 | .{ ._, ._, .@"or", .tmp1w, .tmp0w, ._, ._ }, |
| | 27464 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 27465 | .{ ._, ._, .mov, .dst0d, .ua(.src0, .add_umax), ._, ._ }, |
| 27506 | } }, | 27466 | } }, |
| 27507 | }, .{ | 27467 | }, .{ |
| 27508 | .required_features = .{ .x87, null, null, null }, | 27468 | .src_constraints = .{ .{ .exact_signed_int = 32 }, .{ .exact_signed_int = 32 }, .any }, |
| 27509 | .src_constraints = .{ | | |
| 27510 | .{ .scalar_float = .{ .of = .qword, .is = .qword } }, | | |
| 27511 | .{ .scalar_float = .{ .of = .qword, .is = .qword } }, | | |
| 27512 | .any, | | |
| 27513 | }, | | |
| 27514 | .patterns = &.{ | 27469 | .patterns = &.{ |
| 27515 | .{ .src = .{ .mem, .mem, .none } }, | 27470 | .{ .src = .{ .{ .to_reg = .eax }, .mem, .none } }, |
| | 27471 | .{ .src = .{ .mem, .{ .to_reg = .eax }, .none }, .commute = .{ 0, 1 } }, |
| | 27472 | .{ .src = .{ .{ .to_reg = .eax }, .to_gpr, .none } }, |
| 27516 | }, | 27473 | }, |
| 27517 | .extra_temps = .{ | 27474 | .extra_temps = .{ |
| 27518 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, | 27475 | .{ .type = .i32, .kind = .{ .reg = .edx } }, |
| 27519 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, | 27476 | .unused, |
| 27520 | .unused, | 27477 | .unused, |
| 27521 | .unused, | 27478 | .unused, |
| 27522 | .unused, | 27479 | .unused, |
| ... | @@ -27527,71 +27484,87 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27527,71 +27484,87 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27527 | .unused, | 27484 | .unused, |
| 27528 | .unused, | 27485 | .unused, |
| 27529 | }, | 27486 | }, |
| 27530 | .dst_temps = .{ .mem, .unused }, | 27487 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27488 | .clobbers = .{ .eflags = true }, |
| 27531 | .each = .{ .once = &.{ | 27489 | .each = .{ .once = &.{ |
| 27532 | .{ ._, .f_, .ld, .src0q, ._, ._, ._ }, | 27490 | .{ ._, .i_, .mul, .src1d, ._, ._, ._ }, |
| 27533 | .{ ._, .f_, .div, .src1q, ._, ._, ._ }, | 27491 | .{ ._, ._nc, .j, .@"0f", ._, ._, ._ }, |
| 27534 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, | 27492 | .{ ._, ._, .mov, .dst0d, .tmp0d, ._, ._ }, |
| | 27493 | .{ ._, ._r, .sa, .dst0d, .ui(31), ._, ._ }, |
| | 27494 | .{ ._, ._, .xor, .dst0d, .sa(.src0, .add_smax), ._, ._ }, |
| 27535 | } }, | 27495 | } }, |
| 27536 | }, .{ | 27496 | }, .{ |
| 27537 | .required_features = .{ .avx, null, null, null }, | 27497 | .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword }, .any }, |
| 27538 | .src_constraints = .{ | | |
| 27539 | .{ .scalar_float = .{ .of = .xword, .is = .qword } }, | | |
| 27540 | .{ .scalar_float = .{ .of = .xword, .is = .qword } }, | | |
| 27541 | .any, | | |
| 27542 | }, | | |
| 27543 | .patterns = &.{ | 27498 | .patterns = &.{ |
| 27544 | .{ .src = .{ .to_sse, .mem, .none } }, | 27499 | .{ .src = .{ .{ .to_reg = .eax }, .mem, .none } }, |
| 27545 | .{ .src = .{ .to_sse, .to_sse, .none } }, | 27500 | .{ .src = .{ .mem, .{ .to_reg = .eax }, .none }, .commute = .{ 0, 1 } }, |
| 27546 | }, | 27501 | .{ .src = .{ .{ .to_reg = .eax }, .to_gpr, .none } }, |
| 27547 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, | | |
| 27548 | .each = .{ .once = &.{ | | |
| 27549 | .{ ._, .v_pd, .div, .dst0x, .src0x, .src1x, ._ }, | | |
| 27550 | } }, | | |
| 27551 | }, .{ | | |
| 27552 | .required_features = .{ .sse2, null, null, null }, | | |
| 27553 | .src_constraints = .{ | | |
| 27554 | .{ .scalar_float = .{ .of = .xword, .is = .qword } }, | | |
| 27555 | .{ .scalar_float = .{ .of = .xword, .is = .qword } }, | | |
| 27556 | .any, | | |
| 27557 | }, | 27502 | }, |
| 27558 | .patterns = &.{ | 27503 | .extra_temps = .{ |
| 27559 | .{ .src = .{ .to_mut_sse, .mem, .none } }, | 27504 | .{ .type = .i32, .kind = .{ .reg = .edx } }, |
| 27560 | .{ .src = .{ .to_mut_sse, .to_sse, .none } }, | 27505 | .{ .type = .i32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| | 27506 | .unused, |
| | 27507 | .unused, |
| | 27508 | .unused, |
| | 27509 | .unused, |
| | 27510 | .unused, |
| | 27511 | .unused, |
| | 27512 | .unused, |
| | 27513 | .unused, |
| | 27514 | .unused, |
| 27561 | }, | 27515 | }, |
| 27562 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, | 27516 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27517 | .clobbers = .{ .eflags = true }, |
| 27563 | .each = .{ .once = &.{ | 27518 | .each = .{ .once = &.{ |
| 27564 | .{ ._, ._pd, .div, .dst0x, .src1x, ._, ._ }, | 27519 | .{ ._, .i_, .mul, .src1d, ._, ._, ._ }, |
| | 27520 | .{ ._, ._c, .j, .@"1f", ._, ._, ._ }, |
| | 27521 | .{ ._, ._, .mov, .tmp1d, .dst0d, ._, ._ }, |
| | 27522 | .{ ._, ._r, .sa, .tmp1d, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| | 27523 | .{ ._, ._, .cmp, .tmp1d, .tmp0d, ._, ._ }, |
| | 27524 | .{ ._, ._e, .j, .@"0f", ._, ._, ._ }, |
| | 27525 | .{ .@"1:", ._, .mov, .dst0d, .tmp0d, ._, ._ }, |
| | 27526 | .{ ._, ._r, .sa, .dst0d, .ui(31), ._, ._ }, |
| | 27527 | .{ ._, ._, .xor, .dst0d, .sa(.src0, .add_smax), ._, ._ }, |
| 27565 | } }, | 27528 | } }, |
| 27566 | }, .{ | 27529 | }, .{ |
| 27567 | .required_features = .{ .avx, null, null, null }, | 27530 | .src_constraints = .{ .{ .exact_unsigned_int = 32 }, .{ .exact_unsigned_int = 32 }, .any }, |
| 27568 | .src_constraints = .{ | | |
| 27569 | .{ .scalar_float = .{ .of = .yword, .is = .qword } }, | | |
| 27570 | .{ .scalar_float = .{ .of = .yword, .is = .qword } }, | | |
| 27571 | .any, | | |
| 27572 | }, | | |
| 27573 | .patterns = &.{ | 27531 | .patterns = &.{ |
| 27574 | .{ .src = .{ .to_sse, .mem, .none } }, | 27532 | .{ .src = .{ .{ .to_reg = .eax }, .mem, .none } }, |
| 27575 | .{ .src = .{ .to_sse, .to_sse, .none } }, | 27533 | .{ .src = .{ .mem, .{ .to_reg = .eax }, .none }, .commute = .{ 0, 1 } }, |
| | 27534 | .{ .src = .{ .{ .to_reg = .eax }, .to_gpr, .none } }, |
| 27576 | }, | 27535 | }, |
| 27577 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, | 27536 | .extra_temps = .{ |
| | 27537 | .{ .type = .u32, .kind = .{ .reg = .edx } }, |
| | 27538 | .unused, |
| | 27539 | .unused, |
| | 27540 | .unused, |
| | 27541 | .unused, |
| | 27542 | .unused, |
| | 27543 | .unused, |
| | 27544 | .unused, |
| | 27545 | .unused, |
| | 27546 | .unused, |
| | 27547 | .unused, |
| | 27548 | }, |
| | 27549 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27550 | .clobbers = .{ .eflags = true }, |
| 27578 | .each = .{ .once = &.{ | 27551 | .each = .{ .once = &.{ |
| 27579 | .{ ._, .v_pd, .div, .dst0y, .src0y, .src1y, ._ }, | 27552 | .{ ._, ._, .mul, .src1d, ._, ._, ._ }, |
| | 27553 | .{ ._, ._, .sbb, .tmp0d, .tmp0d, ._, ._ }, |
| | 27554 | .{ ._, ._, .@"or", .dst0d, .tmp0d, ._, ._ }, |
| 27580 | } }, | 27555 | } }, |
| 27581 | }, .{ | 27556 | }, .{ |
| 27582 | .required_features = .{ .avx, null, null, null }, | 27557 | .required_features = .{ .bmi, .cmov, null, null }, |
| 27583 | .src_constraints = .{ | 27558 | .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword }, .any }, |
| 27584 | .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, | | |
| 27585 | .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, | | |
| 27586 | .any, | | |
| 27587 | }, | | |
| 27588 | .patterns = &.{ | 27559 | .patterns = &.{ |
| 27589 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27560 | .{ .src = .{ .{ .to_reg = .eax }, .mem, .none } }, |
| | 27561 | .{ .src = .{ .mem, .{ .to_reg = .eax }, .none }, .commute = .{ 0, 1 } }, |
| | 27562 | .{ .src = .{ .{ .to_reg = .eax }, .to_gpr, .none } }, |
| 27590 | }, | 27563 | }, |
| 27591 | .extra_temps = .{ | 27564 | .extra_temps = .{ |
| 27592 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 27565 | .{ .type = .u32, .kind = .{ .reg = .edx } }, |
| 27593 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, | 27566 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 27594 | .unused, | 27567 | .{ .type = .u32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27595 | .unused, | 27568 | .unused, |
| 27596 | .unused, | 27569 | .unused, |
| 27597 | .unused, | 27570 | .unused, |
| ... | @@ -27601,29 +27574,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27601,29 +27574,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27601 | .unused, | 27574 | .unused, |
| 27602 | .unused, | 27575 | .unused, |
| 27603 | }, | 27576 | }, |
| 27604 | .dst_temps = .{ .mem, .unused }, | 27577 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27605 | .clobbers = .{ .eflags = true }, | 27578 | .clobbers = .{ .eflags = true }, |
| 27606 | .each = .{ .once = &.{ | 27579 | .each = .{ .once = &.{ |
| 27607 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 27580 | .{ ._, ._, .mov, .tmp1d, .ua(.src0, .add_umax), ._, ._ }, |
| 27608 | .{ .@"0:", .v_pd, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ }, | 27581 | .{ ._, ._, .mul, .src1d, ._, ._, ._ }, |
| 27609 | .{ ._, .v_pd, .div, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ }, | 27582 | .{ ._, ._, .andn, .tmp2d, .tmp1d, .dst0d, ._ }, |
| 27610 | .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ }, | 27583 | .{ ._, ._, .@"or", .tmp2d, .tmp0d, ._, ._ }, |
| 27611 | .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ }, | 27584 | .{ ._, ._nz, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 27612 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | | |
| 27613 | } }, | 27585 | } }, |
| 27614 | }, .{ | 27586 | }, .{ |
| 27615 | .required_features = .{ .sse2, null, null, null }, | 27587 | .required_features = .{ .cmov, null, null, null }, |
| 27616 | .src_constraints = .{ | 27588 | .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword }, .any }, |
| 27617 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, | | |
| 27618 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, | | |
| 27619 | .any, | | |
| 27620 | }, | | |
| 27621 | .patterns = &.{ | 27589 | .patterns = &.{ |
| 27622 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27590 | .{ .src = .{ .{ .to_reg = .eax }, .mem, .none } }, |
| | 27591 | .{ .src = .{ .mem, .{ .to_reg = .eax }, .none }, .commute = .{ 0, 1 } }, |
| | 27592 | .{ .src = .{ .{ .to_reg = .eax }, .to_gpr, .none } }, |
| 27623 | }, | 27593 | }, |
| 27624 | .extra_temps = .{ | 27594 | .extra_temps = .{ |
| 27625 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 27595 | .{ .type = .u32, .kind = .{ .reg = .edx } }, |
| 27626 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, | 27596 | .{ .type = .u32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27627 | .unused, | 27597 | .unused, |
| 27628 | .unused, | 27598 | .unused, |
| 27629 | .unused, | 27599 | .unused, |
| ... | @@ -27634,30 +27604,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27634,30 +27604,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27634 | .unused, | 27604 | .unused, |
| 27635 | .unused, | 27605 | .unused, |
| 27636 | }, | 27606 | }, |
| 27637 | .dst_temps = .{ .mem, .unused }, | 27607 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27638 | .clobbers = .{ .eflags = true }, | 27608 | .clobbers = .{ .eflags = true }, |
| 27639 | .each = .{ .once = &.{ | 27609 | .each = .{ .once = &.{ |
| 27640 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 27610 | .{ ._, ._, .mul, .src1d, ._, ._, ._ }, |
| 27641 | .{ .@"0:", ._pd, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, | 27611 | .{ ._, ._, .mov, .tmp1d, .dst0d, ._, ._ }, |
| 27642 | .{ ._, ._pd, .div, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ }, | 27612 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_2_smin), ._, ._ }, |
| 27643 | .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ }, | 27613 | .{ ._, ._, .@"or", .tmp1d, .tmp0d, ._, ._ }, |
| 27644 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, | 27614 | .{ ._, ._, .mov, .tmp0d, .ua(.src0, .add_umax), ._, ._ }, |
| 27645 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | 27615 | .{ ._, ._nz, .cmov, .dst0d, .tmp0d, ._, ._ }, |
| 27646 | } }, | 27616 | } }, |
| 27647 | }, .{ | 27617 | }, .{ |
| 27648 | .required_features = .{ .x87, null, null, null }, | 27618 | .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword }, .any }, |
| 27649 | .src_constraints = .{ | | |
| 27650 | .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, | | |
| 27651 | .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, | | |
| 27652 | .any, | | |
| 27653 | }, | | |
| 27654 | .patterns = &.{ | 27619 | .patterns = &.{ |
| 27655 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27620 | .{ .src = .{ .{ .to_reg = .eax }, .mem, .none } }, |
| | 27621 | .{ .src = .{ .mem, .{ .to_reg = .eax }, .none }, .commute = .{ 0, 1 } }, |
| | 27622 | .{ .src = .{ .{ .to_reg = .eax }, .to_gpr, .none } }, |
| 27656 | }, | 27623 | }, |
| 27657 | .extra_temps = .{ | 27624 | .extra_temps = .{ |
| 27658 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 27625 | .{ .type = .u32, .kind = .{ .reg = .edx } }, |
| 27659 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, | 27626 | .{ .type = .u32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27660 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, | 27627 | .unused, |
| 27661 | .unused, | 27628 | .unused, |
| 27662 | .unused, | 27629 | .unused, |
| 27663 | .unused, | 27630 | .unused, |
| ... | @@ -27667,29 +27634,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27667,29 +27634,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27667 | .unused, | 27634 | .unused, |
| 27668 | .unused, | 27635 | .unused, |
| 27669 | }, | 27636 | }, |
| 27670 | .dst_temps = .{ .mem, .unused }, | 27637 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27671 | .clobbers = .{ .eflags = true }, | 27638 | .clobbers = .{ .eflags = true }, |
| 27672 | .each = .{ .once = &.{ | 27639 | .each = .{ .once = &.{ |
| 27673 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 27640 | .{ ._, ._, .mul, .src1d, ._, ._, ._ }, |
| 27674 | .{ .@"0:", .f_, .ld, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._, ._ }, | 27641 | .{ ._, ._, .mov, .tmp1d, .dst0d, ._, ._ }, |
| 27675 | .{ ._, .f_, .div, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._, ._ }, | 27642 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_2_smin), ._, ._ }, |
| 27676 | .{ ._, .f_p, .st, .memia(.dst0q, .tmp0, .add_unaligned_size), ._, ._, ._ }, | 27643 | .{ ._, ._, .@"or", .tmp1d, .tmp0d, ._, ._ }, |
| 27677 | .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ }, | 27644 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| 27678 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | 27645 | .{ ._, ._, .mov, .dst0d, .ua(.src0, .add_umax), ._, ._ }, |
| 27679 | } }, | 27646 | } }, |
| 27680 | }, .{ | 27647 | }, .{ |
| 27681 | .required_features = .{ .x87, null, null, null }, | 27648 | .required_features = .{ .@"64bit", null, null, null }, |
| 27682 | .src_constraints = .{ | 27649 | .src_constraints = .{ .{ .exact_signed_int = 64 }, .{ .exact_signed_int = 64 }, .any }, |
| 27683 | .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, | | |
| 27684 | .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, | | |
| 27685 | .any, | | |
| 27686 | }, | | |
| 27687 | .patterns = &.{ | 27650 | .patterns = &.{ |
| 27688 | .{ .src = .{ .mem, .mem, .none } }, | 27651 | .{ .src = .{ .{ .to_reg = .rax }, .mem, .none } }, |
| | 27652 | .{ .src = .{ .mem, .{ .to_reg = .rax }, .none }, .commute = .{ 0, 1 } }, |
| | 27653 | .{ .src = .{ .{ .to_reg = .rax }, .to_gpr, .none } }, |
| 27689 | }, | 27654 | }, |
| 27690 | .extra_temps = .{ | 27655 | .extra_temps = .{ |
| 27691 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 27656 | .{ .type = .i64, .kind = .{ .reg = .rdx } }, |
| 27692 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 27657 | .unused, |
| 27693 | .unused, | 27658 | .unused, |
| 27694 | .unused, | 27659 | .unused, |
| 27695 | .unused, | 27660 | .unused, |
| ... | @@ -27700,26 +27665,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27700,26 +27665,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27700 | .unused, | 27665 | .unused, |
| 27701 | .unused, | 27666 | .unused, |
| 27702 | }, | 27667 | }, |
| 27703 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, | 27668 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27669 | .clobbers = .{ .eflags = true }, |
| 27704 | .each = .{ .once = &.{ | 27670 | .each = .{ .once = &.{ |
| 27705 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, | 27671 | .{ ._, .i_, .mul, .src1q, ._, ._, ._ }, |
| 27706 | .{ ._, .f_, .ld, .src1t, ._, ._, ._ }, | 27672 | .{ ._, ._nc, .j, .@"0f", ._, ._, ._ }, |
| 27707 | .{ ._, .f_p, .div, ._, ._, ._, ._ }, | 27673 | .{ ._, ._, .mov, .dst0q, .ua(.src0, .add_smax), ._, ._ }, |
| 27708 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, | 27674 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 27675 | .{ ._, ._, .xor, .dst0q, .tmp0q, ._, ._ }, |
| 27709 | } }, | 27676 | } }, |
| 27710 | }, .{ | 27677 | }, .{ |
| 27711 | .required_features = .{ .x87, null, null, null }, | 27678 | .required_features = .{ .@"64bit", null, null, null }, |
| 27712 | .src_constraints = .{ | 27679 | .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword }, .any }, |
| 27713 | .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, | | |
| 27714 | .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, | | |
| 27715 | .any, | | |
| 27716 | }, | | |
| 27717 | .patterns = &.{ | 27680 | .patterns = &.{ |
| 27718 | .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } }, | 27681 | .{ .src = .{ .{ .to_reg = .rax }, .mem, .none } }, |
| | 27682 | .{ .src = .{ .mem, .{ .to_reg = .rax }, .none }, .commute = .{ 0, 1 } }, |
| | 27683 | .{ .src = .{ .{ .to_reg = .rax }, .to_gpr, .none } }, |
| 27719 | }, | 27684 | }, |
| 27720 | .extra_temps = .{ | 27685 | .extra_temps = .{ |
| 27721 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 27686 | .{ .type = .i64, .kind = .{ .reg = .rdx } }, |
| 27722 | .unused, | 27687 | .{ .type = .i64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27723 | .unused, | 27688 | .unused, |
| 27724 | .unused, | 27689 | .unused, |
| 27725 | .unused, | 27690 | .unused, |
| ... | @@ -27730,25 +27695,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27730,25 +27695,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27730 | .unused, | 27695 | .unused, |
| 27731 | .unused, | 27696 | .unused, |
| 27732 | }, | 27697 | }, |
| 27733 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, | 27698 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27699 | .clobbers = .{ .eflags = true }, |
| 27734 | .each = .{ .once = &.{ | 27700 | .each = .{ .once = &.{ |
| 27735 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, | 27701 | .{ ._, .i_, .mul, .src1q, ._, ._, ._ }, |
| 27736 | .{ ._, .f_, .divr, .tmp0t, .src1t, ._, ._ }, | 27702 | .{ ._, ._c, .j, .@"1f", ._, ._, ._ }, |
| 27737 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, | 27703 | .{ ._, ._, .mov, .tmp1q, .dst0q, ._, ._ }, |
| | 27704 | .{ ._, ._r, .sa, .tmp1q, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| | 27705 | .{ ._, ._, .cmp, .tmp1q, .tmp0q, ._, ._ }, |
| | 27706 | .{ ._, ._e, .j, .@"0f", ._, ._, ._ }, |
| | 27707 | .{ .@"1:", ._, .mov, .dst0q, .ua(.src0, .add_smax), ._, ._ }, |
| | 27708 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 27709 | .{ ._, ._, .xor, .dst0q, .tmp0q, ._, ._ }, |
| 27738 | } }, | 27710 | } }, |
| 27739 | }, .{ | 27711 | }, .{ |
| 27740 | .required_features = .{ .x87, null, null, null }, | 27712 | .required_features = .{ .@"64bit", null, null, null }, |
| 27741 | .src_constraints = .{ | 27713 | .src_constraints = .{ .{ .exact_unsigned_int = 64 }, .{ .exact_unsigned_int = 64 }, .any }, |
| 27742 | .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, | | |
| 27743 | .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, | | |
| 27744 | .any, | | |
| 27745 | }, | | |
| 27746 | .patterns = &.{ | 27714 | .patterns = &.{ |
| 27747 | .{ .src = .{ .mem, .to_x87, .none } }, | 27715 | .{ .src = .{ .{ .to_reg = .rax }, .mem, .none } }, |
| 27748 | .{ .src = .{ .to_x87, .to_x87, .none } }, | 27716 | .{ .src = .{ .mem, .{ .to_reg = .rax }, .none }, .commute = .{ 0, 1 } }, |
| | 27717 | .{ .src = .{ .{ .to_reg = .rax }, .to_gpr, .none } }, |
| 27749 | }, | 27718 | }, |
| 27750 | .extra_temps = .{ | 27719 | .extra_temps = .{ |
| 27751 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 27720 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| 27752 | .unused, | 27721 | .unused, |
| 27753 | .unused, | 27722 | .unused, |
| 27754 | .unused, | 27723 | .unused, |
| ... | @@ -27760,26 +27729,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27760,26 +27729,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27760 | .unused, | 27729 | .unused, |
| 27761 | .unused, | 27730 | .unused, |
| 27762 | }, | 27731 | }, |
| 27763 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, | 27732 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 27733 | .clobbers = .{ .eflags = true }, |
| 27764 | .each = .{ .once = &.{ | 27734 | .each = .{ .once = &.{ |
| 27765 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, | 27735 | .{ ._, ._, .mul, .src1q, ._, ._, ._ }, |
| 27766 | .{ ._, .f_, .div, .tmp0t, .src1t, ._, ._ }, | 27736 | .{ ._, ._, .sbb, .tmp0q, .tmp0q, ._, ._ }, |
| 27767 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, | 27737 | .{ ._, ._, .@"or", .dst0q, .tmp0q, ._, ._ }, |
| 27768 | } }, | 27738 | } }, |
| 27769 | }, .{ | 27739 | }, .{ |
| 27770 | .required_features = .{ .x87, null, null, null }, | 27740 | .required_features = .{ .@"64bit", .bmi, .cmov, null }, |
| 27771 | .src_constraints = .{ | 27741 | .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword }, .any }, |
| 27772 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, | | |
| 27773 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, | | |
| 27774 | .any, | | |
| 27775 | }, | | |
| 27776 | .patterns = &.{ | 27742 | .patterns = &.{ |
| 27777 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27743 | .{ .src = .{ .{ .to_reg = .rax }, .mem, .none } }, |
| | 27744 | .{ .src = .{ .mem, .{ .to_reg = .rax }, .none }, .commute = .{ 0, 1 } }, |
| | 27745 | .{ .src = .{ .{ .to_reg = .rax }, .to_gpr, .none } }, |
| 27778 | }, | 27746 | }, |
| 27779 | .extra_temps = .{ | 27747 | .extra_temps = .{ |
| 27780 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 27748 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| 27781 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 27749 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 27782 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 27750 | .{ .type = .u64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27783 | .unused, | 27751 | .unused, |
| 27784 | .unused, | 27752 | .unused, |
| 27785 | .unused, | 27753 | .unused, |
| ... | @@ -27789,31 +27757,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27789,31 +27757,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27789 | .unused, | 27757 | .unused, |
| 27790 | .unused, | 27758 | .unused, |
| 27791 | }, | 27759 | }, |
| 27792 | .dst_temps = .{ .mem, .unused }, | 27760 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27793 | .clobbers = .{ .eflags = true }, | 27761 | .clobbers = .{ .eflags = true }, |
| 27794 | .each = .{ .once = &.{ | 27762 | .each = .{ .once = &.{ |
| 27795 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 27763 | .{ ._, ._, .mov, .tmp1q, .ua(.src0, .add_umax), ._, ._ }, |
| 27796 | .{ .@"0:", .f_, .ld, .memia(.src0t, .tmp0, .add_unaligned_size), ._, ._, ._ }, | 27764 | .{ ._, ._, .mul, .src1q, ._, ._, ._ }, |
| 27797 | .{ ._, .f_, .ld, .memia(.src1t, .tmp0, .add_unaligned_size), ._, ._, ._ }, | 27765 | .{ ._, ._, .andn, .tmp2q, .tmp1q, .dst0q, ._ }, |
| 27798 | .{ ._, .f_p, .div, ._, ._, ._, ._ }, | 27766 | .{ ._, ._, .@"or", .tmp2q, .tmp0q, ._, ._ }, |
| 27799 | .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ }, | 27767 | .{ ._, ._nz, .cmov, .dst0q, .tmp1q, ._, ._ }, |
| 27800 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, | | |
| 27801 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | | |
| 27802 | } }, | 27768 | } }, |
| 27803 | }, .{ | 27769 | }, .{ |
| 27804 | .required_features = .{ .sse, null, null, null }, | 27770 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| 27805 | .src_constraints = .{ | 27771 | .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword }, .any }, |
| 27806 | .{ .scalar_float = .{ .of = .xword, .is = .xword } }, | | |
| 27807 | .{ .scalar_float = .{ .of = .xword, .is = .xword } }, | | |
| 27808 | .any, | | |
| 27809 | }, | | |
| 27810 | .patterns = &.{ | 27772 | .patterns = &.{ |
| 27811 | .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } }, | 27773 | .{ .src = .{ .{ .to_reg = .rax }, .mem, .none } }, |
| | 27774 | .{ .src = .{ .mem, .{ .to_reg = .rax }, .none }, .commute = .{ 0, 1 } }, |
| | 27775 | .{ .src = .{ .{ .to_reg = .rax }, .to_gpr, .none } }, |
| 27812 | }, | 27776 | }, |
| 27813 | .call_frame = .{ .alignment = .@"16" }, | | |
| 27814 | .extra_temps = .{ | 27777 | .extra_temps = .{ |
| 27815 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } }, | 27778 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| 27816 | .unused, | 27779 | .{ .type = .u64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27817 | .unused, | 27780 | .unused, |
| 27818 | .unused, | 27781 | .unused, |
| 27819 | .unused, | 27782 | .unused, |
| ... | @@ -27825,26 +27788,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27825,26 +27788,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27825 | .unused, | 27788 | .unused, |
| 27826 | }, | 27789 | }, |
| 27827 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, | 27790 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27828 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, | 27791 | .clobbers = .{ .eflags = true }, |
| 27829 | .each = .{ .once = &.{ | 27792 | .each = .{ .once = &.{ |
| 27830 | .{ ._, ._, .call, .tmp0d, ._, ._, ._ }, | 27793 | .{ ._, ._, .mul, .src1q, ._, ._, ._ }, |
| | 27794 | .{ ._, ._, .mov, .tmp1q, .ua(.src0, .add_2_smin), ._, ._ }, |
| | 27795 | .{ ._, ._, .@"and", .tmp1q, .dst0q, ._, ._ }, |
| | 27796 | .{ ._, ._, .@"or", .tmp1q, .tmp0q, ._, ._ }, |
| | 27797 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, |
| | 27798 | .{ ._, ._nz, .cmov, .dst0q, .tmp0q, ._, ._ }, |
| 27831 | } }, | 27799 | } }, |
| 27832 | }, .{ | 27800 | }, .{ |
| 27833 | .required_features = .{ .avx, null, null, null }, | 27801 | .required_features = .{ .@"64bit", null, null, null }, |
| 27834 | .src_constraints = .{ | 27802 | .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword }, .any }, |
| 27835 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, | | |
| 27836 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, | | |
| 27837 | .any, | | |
| 27838 | }, | | |
| 27839 | .patterns = &.{ | 27803 | .patterns = &.{ |
| 27840 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27804 | .{ .src = .{ .{ .to_reg = .rax }, .mem, .none } }, |
| | 27805 | .{ .src = .{ .mem, .{ .to_reg = .rax }, .none }, .commute = .{ 0, 1 } }, |
| | 27806 | .{ .src = .{ .{ .to_reg = .rax }, .to_gpr, .none } }, |
| 27841 | }, | 27807 | }, |
| 27842 | .call_frame = .{ .alignment = .@"16" }, | | |
| 27843 | .extra_temps = .{ | 27808 | .extra_temps = .{ |
| 27844 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 27809 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| 27845 | .{ .type = .f128, .kind = .{ .reg = .xmm0 } }, | 27810 | .{ .type = .u64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 27846 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, | 27811 | .unused, |
| 27847 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } }, | 27812 | .unused, |
| 27848 | .unused, | 27813 | .unused, |
| 27849 | .unused, | 27814 | .unused, |
| 27850 | .unused, | 27815 | .unused, |
| ... | @@ -27853,28 +27818,5280 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -27853,28 +27818,5280 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 27853 | .unused, | 27818 | .unused, |
| 27854 | .unused, | 27819 | .unused, |
| 27855 | }, | 27820 | }, |
| 27856 | .dst_temps = .{ .mem, .unused }, | 27821 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 27857 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, | 27822 | .clobbers = .{ .eflags = true }, |
| 27858 | .each = .{ .once = &.{ | 27823 | .each = .{ .once = &.{ |
| 27859 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 27824 | .{ ._, ._, .mul, .src1q, ._, ._, ._ }, |
| 27860 | .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, | 27825 | .{ ._, ._, .mov, .tmp1q, .ua(.src0, .add_2_smin), ._, ._ }, |
| 27861 | .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ }, | 27826 | .{ ._, ._, .@"and", .tmp1q, .dst0q, ._, ._ }, |
| 27862 | .{ ._, ._, .call, .tmp3d, ._, ._, ._ }, | 27827 | .{ ._, ._, .@"or", .tmp1q, .tmp0q, ._, ._ }, |
| 27863 | .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ }, | 27828 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| 27864 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, | 27829 | .{ ._, ._, .mov, .dst0q, .ua(.src0, .add_umax), ._, ._ }, |
| 27865 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | | |
| 27866 | } }, | 27830 | } }, |
| 27867 | }, .{ | 27831 | }, .{ |
| 27868 | .required_features = .{ .sse2, null, null, null }, | 27832 | .required_features = .{ .@"64bit", .cmov, .slow_incdec, null }, |
| 27869 | .src_constraints = .{ | 27833 | .src_constraints = .{ |
| 27870 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, | 27834 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 27871 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, | 27835 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 27872 | .any, | 27836 | .any, |
| 27873 | }, | 27837 | }, |
| 27874 | .patterns = &.{ | 27838 | .patterns = &.{ |
| 27875 | .{ .src = .{ .to_mem, .to_mem, .none } }, | 27839 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| 27876 | }, | 27840 | }, |
| 27877 | .call_frame = .{ .alignment = .@"16" }, | 27841 | .extra_temps = .{ |
| | 27842 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 27843 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 27844 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 27845 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 27846 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 27847 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 27848 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 27849 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 27850 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 27851 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 27852 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 27853 | }, |
| | 27854 | .dst_temps = .{ .mem, .unused }, |
| | 27855 | .clobbers = .{ .eflags = true }, |
| | 27856 | .each = .{ .once = &.{ |
| | 27857 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 27858 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 27859 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 27860 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 27861 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 27862 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, |
| | 27863 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, |
| | 27864 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 27865 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 27866 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 27867 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 27868 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 27869 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 27870 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 27871 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 27872 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 27873 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 27874 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 27875 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 27876 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 27877 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 27878 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 27879 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 27880 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 27881 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 27882 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 27883 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 27884 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 27885 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 27886 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 27887 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 27888 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 27889 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 27890 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 27891 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 27892 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 27893 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 27894 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 27895 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 27896 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 27897 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 27898 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 27899 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 27900 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 27901 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 27902 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 27903 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 27904 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 27905 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 27906 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 27907 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 27908 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 27909 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 27910 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 27911 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 27912 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 27913 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 27914 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 27915 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 27916 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 27917 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 27918 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 27919 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 27920 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 27921 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 27922 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 27923 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 27924 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 27925 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 27926 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 27927 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 27928 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 27929 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 27930 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 27931 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 27932 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 27933 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 27934 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 27935 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 27936 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 27937 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 27938 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 27939 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 27940 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 27941 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 27942 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 27943 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 27944 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 27945 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 27946 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 27947 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 27948 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .ui(1), ._ }, |
| | 27949 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp9q, ._, ._ }, |
| | 27950 | } }, |
| | 27951 | }, .{ |
| | 27952 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| | 27953 | .src_constraints = .{ |
| | 27954 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| | 27955 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| | 27956 | .any, |
| | 27957 | }, |
| | 27958 | .patterns = &.{ |
| | 27959 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 27960 | }, |
| | 27961 | .extra_temps = .{ |
| | 27962 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 27963 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 27964 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 27965 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 27966 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 27967 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 27968 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 27969 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 27970 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 27971 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 27972 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 27973 | }, |
| | 27974 | .dst_temps = .{ .mem, .unused }, |
| | 27975 | .clobbers = .{ .eflags = true }, |
| | 27976 | .each = .{ .once = &.{ |
| | 27977 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 27978 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 27979 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 27980 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 27981 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 27982 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, |
| | 27983 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, |
| | 27984 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 27985 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 27986 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 27987 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 27988 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 27989 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 27990 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 27991 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 27992 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 27993 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 27994 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 27995 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 27996 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 27997 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 27998 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 27999 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 28000 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 28001 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 28002 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 28003 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 28004 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 28005 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28006 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28007 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 28008 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 28009 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 28010 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 28011 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 28012 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 28013 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 28014 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 28015 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 28016 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28017 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 28018 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28019 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 28020 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 28021 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 28022 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 28023 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28024 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 28025 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28026 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 28027 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28028 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28029 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28030 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28031 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28032 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28033 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28034 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 28035 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28036 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 28037 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28038 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28039 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 28040 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 28041 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28042 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28043 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28044 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28045 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28046 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28047 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28048 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28049 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 28050 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28051 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28052 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28053 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28054 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28055 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28056 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28057 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28058 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28059 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 28060 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 28061 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 28062 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 28063 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 28064 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 28065 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 28066 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 28067 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 28068 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .ui(1), ._ }, |
| | 28069 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp9q, ._, ._ }, |
| | 28070 | } }, |
| | 28071 | }, .{ |
| | 28072 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| | 28073 | .src_constraints = .{ |
| | 28074 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| | 28075 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| | 28076 | .any, |
| | 28077 | }, |
| | 28078 | .patterns = &.{ |
| | 28079 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 28080 | }, |
| | 28081 | .extra_temps = .{ |
| | 28082 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 28083 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28084 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 28085 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28086 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28087 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 28088 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28089 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 28090 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28091 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 28092 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 28093 | }, |
| | 28094 | .dst_temps = .{ .mem, .unused }, |
| | 28095 | .clobbers = .{ .eflags = true }, |
| | 28096 | .each = .{ .once = &.{ |
| | 28097 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 28098 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28099 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 28100 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28101 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 28102 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, |
| | 28103 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, |
| | 28104 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 28105 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 28106 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28107 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 28108 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 28109 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 28110 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 28111 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 28112 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 28113 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 28114 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 28115 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28116 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 28117 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 28118 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 28119 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 28120 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 28121 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 28122 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 28123 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 28124 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 28125 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28126 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28127 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 28128 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 28129 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 28130 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 28131 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 28132 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 28133 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 28134 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 28135 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 28136 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28137 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 28138 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28139 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 28140 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 28141 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 28142 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28143 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 28144 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 28145 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28146 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 28147 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28148 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28149 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28150 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28151 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28152 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28153 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28154 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 28155 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28156 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 28157 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28158 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28159 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 28160 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 28161 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28162 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28163 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28164 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28165 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28166 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28167 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28168 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28169 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 28170 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28171 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28172 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28173 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28174 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28175 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28176 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28177 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28178 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28179 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 28180 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 28181 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 28182 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 28183 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 28184 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 28185 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 28186 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 28187 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 28188 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .ui(1), ._ }, |
| | 28189 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp9q, ._, ._ }, |
| | 28190 | } }, |
| | 28191 | }, .{ |
| | 28192 | .required_features = .{ .@"64bit", null, null, null }, |
| | 28193 | .src_constraints = .{ |
| | 28194 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| | 28195 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| | 28196 | .any, |
| | 28197 | }, |
| | 28198 | .patterns = &.{ |
| | 28199 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 28200 | }, |
| | 28201 | .extra_temps = .{ |
| | 28202 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 28203 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28204 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 28205 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28206 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28207 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 28208 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28209 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 28210 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28211 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 28212 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 28213 | }, |
| | 28214 | .dst_temps = .{ .mem, .unused }, |
| | 28215 | .clobbers = .{ .eflags = true }, |
| | 28216 | .each = .{ .once = &.{ |
| | 28217 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 28218 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28219 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 28220 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28221 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 28222 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, |
| | 28223 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, |
| | 28224 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 28225 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 28226 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28227 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 28228 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 28229 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 28230 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 28231 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 28232 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 28233 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 28234 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 28235 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28236 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 28237 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 28238 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 28239 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 28240 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 28241 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 28242 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 28243 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 28244 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 28245 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28246 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28247 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 28248 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 28249 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 28250 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 28251 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 28252 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 28253 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 28254 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 28255 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 28256 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28257 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 28258 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28259 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 28260 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 28261 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 28262 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28263 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 28264 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 28265 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28266 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 28267 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28268 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28269 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28270 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28271 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28272 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28273 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28274 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 28275 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28276 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 28277 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28278 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28279 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 28280 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 28281 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28282 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28283 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28284 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28285 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28286 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28287 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28288 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28289 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 28290 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28291 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28292 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28293 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28294 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28295 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28296 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28297 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28298 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28299 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 28300 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 28301 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 28302 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 28303 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 28304 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 28305 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 28306 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 28307 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 28308 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .ui(1), ._ }, |
| | 28309 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp9q, ._, ._ }, |
| | 28310 | } }, |
| | 28311 | }, .{ |
| | 28312 | .required_features = .{ .@"64bit", .cmov, .slow_incdec, null }, |
| | 28313 | .src_constraints = .{ |
| | 28314 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 28315 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 28316 | .any, |
| | 28317 | }, |
| | 28318 | .patterns = &.{ |
| | 28319 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 28320 | }, |
| | 28321 | .extra_temps = .{ |
| | 28322 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 28323 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28324 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 28325 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28326 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28327 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 28328 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28329 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 28330 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28331 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 28332 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 28333 | }, |
| | 28334 | .dst_temps = .{ .mem, .unused }, |
| | 28335 | .clobbers = .{ .eflags = true }, |
| | 28336 | .each = .{ .once = &.{ |
| | 28337 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 28338 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28339 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 28340 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28341 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 28342 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 28343 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 28344 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28345 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 28346 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 28347 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 28348 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 28349 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 28350 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 28351 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 28352 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 28353 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28354 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 28355 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 28356 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 28357 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 28358 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 28359 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 28360 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 28361 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 28362 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 28363 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28364 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28365 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 28366 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 28367 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 28368 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 28369 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 28370 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 28371 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 28372 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 28373 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 28374 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28375 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 28376 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28377 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 28378 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 28379 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 28380 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 28381 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28382 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 28383 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28384 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 28385 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28386 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28387 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28388 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28389 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28390 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28391 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28392 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 28393 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28394 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 28395 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28396 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28397 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 28398 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 28399 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28400 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28401 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28402 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28403 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28404 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28405 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28406 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28407 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 28408 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28409 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28410 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28411 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28412 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28413 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28414 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28415 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28416 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28417 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 28418 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 28419 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 28420 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 28421 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 28422 | .{ ._, ._, .xor, .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28423 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 28424 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 28425 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 28426 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 28427 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 28428 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 28429 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 28430 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 28431 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 28432 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .ui(1), ._ }, |
| | 28433 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp9q, ._, ._ }, |
| | 28434 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 28435 | } }, |
| | 28436 | }, .{ |
| | 28437 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| | 28438 | .src_constraints = .{ |
| | 28439 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 28440 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 28441 | .any, |
| | 28442 | }, |
| | 28443 | .patterns = &.{ |
| | 28444 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 28445 | }, |
| | 28446 | .extra_temps = .{ |
| | 28447 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 28448 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28449 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 28450 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28451 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28452 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 28453 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28454 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 28455 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28456 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 28457 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 28458 | }, |
| | 28459 | .dst_temps = .{ .mem, .unused }, |
| | 28460 | .clobbers = .{ .eflags = true }, |
| | 28461 | .each = .{ .once = &.{ |
| | 28462 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 28463 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28464 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 28465 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28466 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 28467 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 28468 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 28469 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28470 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 28471 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 28472 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 28473 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 28474 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 28475 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 28476 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 28477 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 28478 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28479 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 28480 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 28481 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 28482 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 28483 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 28484 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 28485 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 28486 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 28487 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 28488 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28489 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28490 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 28491 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 28492 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 28493 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 28494 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 28495 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 28496 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 28497 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 28498 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 28499 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28500 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 28501 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28502 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 28503 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 28504 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 28505 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 28506 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28507 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 28508 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28509 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 28510 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28511 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28512 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28513 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28514 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28515 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28516 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28517 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 28518 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28519 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 28520 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28521 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28522 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 28523 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 28524 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28525 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28526 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28527 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28528 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28529 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28530 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28531 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28532 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 28533 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28534 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28535 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28536 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28537 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28538 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28539 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28540 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28541 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28542 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 28543 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 28544 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 28545 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 28546 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 28547 | .{ ._, ._, .xor, .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28548 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 28549 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 28550 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 28551 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 28552 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 28553 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 28554 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 28555 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 28556 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 28557 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .ui(1), ._ }, |
| | 28558 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp9q, ._, ._ }, |
| | 28559 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 28560 | } }, |
| | 28561 | }, .{ |
| | 28562 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| | 28563 | .src_constraints = .{ |
| | 28564 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 28565 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 28566 | .any, |
| | 28567 | }, |
| | 28568 | .patterns = &.{ |
| | 28569 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 28570 | }, |
| | 28571 | .extra_temps = .{ |
| | 28572 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 28573 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28574 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 28575 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28576 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28577 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 28578 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28579 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 28580 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28581 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 28582 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 28583 | }, |
| | 28584 | .dst_temps = .{ .mem, .unused }, |
| | 28585 | .clobbers = .{ .eflags = true }, |
| | 28586 | .each = .{ .once = &.{ |
| | 28587 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 28588 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28589 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 28590 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28591 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 28592 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 28593 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 28594 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28595 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 28596 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 28597 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 28598 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 28599 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 28600 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 28601 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 28602 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 28603 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28604 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 28605 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 28606 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 28607 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 28608 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 28609 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 28610 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 28611 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 28612 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 28613 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28614 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28615 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 28616 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 28617 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 28618 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 28619 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 28620 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 28621 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 28622 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 28623 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 28624 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28625 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 28626 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28627 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 28628 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 28629 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 28630 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28631 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 28632 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 28633 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28634 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 28635 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28636 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28637 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28638 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28639 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28640 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28641 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28642 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 28643 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28644 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 28645 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28646 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28647 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 28648 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 28649 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28650 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28651 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28652 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28653 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28654 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28655 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28656 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28657 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 28658 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28659 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28660 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28661 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28662 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28663 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28664 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28665 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28666 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28667 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 28668 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 28669 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 28670 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 28671 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 28672 | .{ ._, ._, .xor, .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28673 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 28674 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 28675 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 28676 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 28677 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 28678 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 28679 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 28680 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 28681 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 28682 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .ui(1), ._ }, |
| | 28683 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp9q, ._, ._ }, |
| | 28684 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 28685 | } }, |
| | 28686 | }, .{ |
| | 28687 | .required_features = .{ .@"64bit", null, null, null }, |
| | 28688 | .src_constraints = .{ |
| | 28689 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 28690 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 28691 | .any, |
| | 28692 | }, |
| | 28693 | .patterns = &.{ |
| | 28694 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 28695 | }, |
| | 28696 | .extra_temps = .{ |
| | 28697 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 28698 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28699 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 28700 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28701 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28702 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 28703 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28704 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 28705 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28706 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 28707 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 28708 | }, |
| | 28709 | .dst_temps = .{ .mem, .unused }, |
| | 28710 | .clobbers = .{ .eflags = true }, |
| | 28711 | .each = .{ .once = &.{ |
| | 28712 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 28713 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28714 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 28715 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28716 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 28717 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 28718 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 28719 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28720 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 28721 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 28722 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 28723 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 28724 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 28725 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 28726 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 28727 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 28728 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28729 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 28730 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 28731 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 28732 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 28733 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 28734 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 28735 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 28736 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 28737 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 28738 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28739 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28740 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 28741 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 28742 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 28743 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 28744 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 28745 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 28746 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 28747 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 28748 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 28749 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28750 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 28751 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28752 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 28753 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 28754 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 28755 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28756 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 28757 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 28758 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28759 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 28760 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28761 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28762 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28763 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28764 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28765 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28766 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28767 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 28768 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28769 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 28770 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28771 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28772 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 28773 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 28774 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28775 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28776 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28777 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28778 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28779 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28780 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28781 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28782 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 28783 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28784 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28785 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28786 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28787 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28788 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28789 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28790 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28791 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28792 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 28793 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 28794 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 28795 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 28796 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 28797 | .{ ._, ._, .xor, .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28798 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 28799 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 28800 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 28801 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 28802 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 28803 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 28804 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 28805 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 28806 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 28807 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .ui(1), ._ }, |
| | 28808 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp9q, ._, ._ }, |
| | 28809 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 28810 | } }, |
| | 28811 | }, .{ |
| | 28812 | .required_features = .{ .@"64bit", .cmov, .slow_incdec, null }, |
| | 28813 | .src_constraints = .{ |
| | 28814 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 1 } }, |
| | 28815 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 1 } }, |
| | 28816 | .any, |
| | 28817 | }, |
| | 28818 | .patterns = &.{ |
| | 28819 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 28820 | }, |
| | 28821 | .extra_temps = .{ |
| | 28822 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 28823 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28824 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 28825 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28826 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28827 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 28828 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28829 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 28830 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28831 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 28832 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 28833 | }, |
| | 28834 | .dst_temps = .{ .mem, .unused }, |
| | 28835 | .clobbers = .{ .eflags = true }, |
| | 28836 | .each = .{ .once = &.{ |
| | 28837 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 28838 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28839 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 28840 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28841 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 28842 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 28843 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 28844 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28845 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 28846 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 28847 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 28848 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 28849 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 28850 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 28851 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 28852 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 28853 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28854 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 28855 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 28856 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 28857 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 28858 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 28859 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 28860 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 28861 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 28862 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 28863 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28864 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28865 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 28866 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 28867 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 28868 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 28869 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 28870 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 28871 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 28872 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 28873 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 28874 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28875 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 28876 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28877 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 28878 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 28879 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 28880 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 28881 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28882 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 28883 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28884 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 28885 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28886 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28887 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28888 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28889 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28890 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28891 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 28892 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 28893 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28894 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 28895 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28896 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 28897 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 28898 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 28899 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28900 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28901 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 28902 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 28903 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 28904 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28905 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 28906 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 28907 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 28908 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28909 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28910 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28911 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28912 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 28913 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28914 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 28915 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 28916 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 28917 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 28918 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 28919 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 28920 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 28921 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 28922 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 28923 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 28924 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ }, |
| | 28925 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 28926 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 28927 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 28928 | .{ ._, ._, .xor, .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 28929 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 28930 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 28931 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 28932 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 28933 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 28934 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 28935 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 28936 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 28937 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 28938 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp1q, ._, ._ }, |
| | 28939 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 28940 | } }, |
| | 28941 | }, .{ |
| | 28942 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| | 28943 | .src_constraints = .{ |
| | 28944 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 1 } }, |
| | 28945 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 1 } }, |
| | 28946 | .any, |
| | 28947 | }, |
| | 28948 | .patterns = &.{ |
| | 28949 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 28950 | }, |
| | 28951 | .extra_temps = .{ |
| | 28952 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 28953 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28954 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 28955 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28956 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28957 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 28958 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28959 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 28960 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 28961 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 28962 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 28963 | }, |
| | 28964 | .dst_temps = .{ .mem, .unused }, |
| | 28965 | .clobbers = .{ .eflags = true }, |
| | 28966 | .each = .{ .once = &.{ |
| | 28967 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 28968 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 28969 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 28970 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 28971 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 28972 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 28973 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 28974 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 28975 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 28976 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 28977 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 28978 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 28979 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 28980 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 28981 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 28982 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 28983 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28984 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 28985 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 28986 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 28987 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 28988 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 28989 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 28990 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 28991 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 28992 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 28993 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 28994 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 28995 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 28996 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 28997 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 28998 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 28999 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 29000 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 29001 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 29002 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 29003 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 29004 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29005 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 29006 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29007 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 29008 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 29009 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 29010 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 29011 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29012 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 29013 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29014 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 29015 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29016 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29017 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29018 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29019 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29020 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29021 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29022 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 29023 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29024 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 29025 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29026 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29027 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 29028 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 29029 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29030 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29031 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29032 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29033 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29034 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29035 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29036 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29037 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 29038 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29039 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29040 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29041 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29042 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29043 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29044 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29045 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29046 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29047 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 29048 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 29049 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 29050 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29051 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29052 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29053 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 29054 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ }, |
| | 29055 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 29056 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29057 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29058 | .{ ._, ._, .xor, .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29059 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 29060 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29061 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 29062 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 29063 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 29064 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 29065 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 29066 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 29067 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 29068 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp1q, ._, ._ }, |
| | 29069 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 29070 | } }, |
| | 29071 | }, .{ |
| | 29072 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| | 29073 | .src_constraints = .{ |
| | 29074 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 1 } }, |
| | 29075 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 1 } }, |
| | 29076 | .any, |
| | 29077 | }, |
| | 29078 | .patterns = &.{ |
| | 29079 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 29080 | }, |
| | 29081 | .extra_temps = .{ |
| | 29082 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 29083 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29084 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 29085 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29086 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29087 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 29088 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29089 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 29090 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29091 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 29092 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 29093 | }, |
| | 29094 | .dst_temps = .{ .mem, .unused }, |
| | 29095 | .clobbers = .{ .eflags = true }, |
| | 29096 | .each = .{ .once = &.{ |
| | 29097 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 29098 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29099 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 29100 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29101 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 29102 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 29103 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 29104 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29105 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 29106 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 29107 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 29108 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 29109 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 29110 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 29111 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 29112 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 29113 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29114 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 29115 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 29116 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 29117 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 29118 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 29119 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 29120 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 29121 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 29122 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 29123 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29124 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29125 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 29126 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 29127 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 29128 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 29129 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 29130 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 29131 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 29132 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 29133 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 29134 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29135 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 29136 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29137 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 29138 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 29139 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 29140 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29141 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 29142 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 29143 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29144 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 29145 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29146 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29147 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29148 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29149 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29150 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29151 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29152 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 29153 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29154 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 29155 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29156 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29157 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 29158 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 29159 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29160 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29161 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29162 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29163 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29164 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29165 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29166 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29167 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 29168 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29169 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29170 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29171 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29172 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29173 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29174 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29175 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29176 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29177 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 29178 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 29179 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 29180 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29181 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29182 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29183 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 29184 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ }, |
| | 29185 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 29186 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29187 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29188 | .{ ._, ._, .xor, .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29189 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 29190 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29191 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 29192 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 29193 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 29194 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 29195 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 29196 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 29197 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 29198 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp1q, ._, ._ }, |
| | 29199 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 29200 | } }, |
| | 29201 | }, .{ |
| | 29202 | .required_features = .{ .@"64bit", null, null, null }, |
| | 29203 | .src_constraints = .{ |
| | 29204 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 1 } }, |
| | 29205 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 1 } }, |
| | 29206 | .any, |
| | 29207 | }, |
| | 29208 | .patterns = &.{ |
| | 29209 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 29210 | }, |
| | 29211 | .extra_temps = .{ |
| | 29212 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 29213 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29214 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 29215 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29216 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29217 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 29218 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29219 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 29220 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29221 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 29222 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 29223 | }, |
| | 29224 | .dst_temps = .{ .mem, .unused }, |
| | 29225 | .clobbers = .{ .eflags = true }, |
| | 29226 | .each = .{ .once = &.{ |
| | 29227 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 29228 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29229 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 29230 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29231 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 29232 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 29233 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 29234 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29235 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 29236 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 29237 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 29238 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 29239 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 29240 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 29241 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 29242 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 29243 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29244 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 29245 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 29246 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 29247 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 29248 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 29249 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 29250 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 29251 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 29252 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 29253 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29254 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29255 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 29256 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 29257 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 29258 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 29259 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 29260 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 29261 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 29262 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 29263 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 29264 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29265 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 29266 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29267 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 29268 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 29269 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 29270 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29271 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 29272 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 29273 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29274 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 29275 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29276 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29277 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29278 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29279 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29280 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29281 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29282 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 29283 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29284 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 29285 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29286 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29287 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 29288 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 29289 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29290 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29291 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29292 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29293 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29294 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29295 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29296 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29297 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 29298 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29299 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29300 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29301 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29302 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29303 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29304 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29305 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29306 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29307 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 29308 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 29309 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 29310 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29311 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29312 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29313 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 29314 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ }, |
| | 29315 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 29316 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29317 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29318 | .{ ._, ._, .xor, .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29319 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 29320 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29321 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 29322 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 29323 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 29324 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 29325 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 29326 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 29327 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 29328 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp1q, ._, ._ }, |
| | 29329 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 29330 | } }, |
| | 29331 | }, .{ |
| | 29332 | .required_features = .{ .@"64bit", .cmov, .slow_incdec, null }, |
| | 29333 | .src_constraints = .{ |
| | 29334 | .{ .remainder_signed_int = .{ .of = .xword, .is = .qword } }, |
| | 29335 | .{ .remainder_signed_int = .{ .of = .xword, .is = .qword } }, |
| | 29336 | .any, |
| | 29337 | }, |
| | 29338 | .patterns = &.{ |
| | 29339 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 29340 | }, |
| | 29341 | .extra_temps = .{ |
| | 29342 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 29343 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29344 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 29345 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29346 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29347 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 29348 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29349 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 29350 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29351 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 29352 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 29353 | }, |
| | 29354 | .dst_temps = .{ .mem, .unused }, |
| | 29355 | .clobbers = .{ .eflags = true }, |
| | 29356 | .each = .{ .once = &.{ |
| | 29357 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 29358 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29359 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 29360 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29361 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 29362 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 29363 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 29364 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29365 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 29366 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 29367 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 29368 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 29369 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 29370 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 29371 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 29372 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 29373 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29374 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 29375 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 29376 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 29377 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 29378 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 29379 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 29380 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 29381 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 29382 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 29383 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29384 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29385 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 29386 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 29387 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 29388 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 29389 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 29390 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 29391 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 29392 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 29393 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 29394 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29395 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 29396 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29397 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 29398 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 29399 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 29400 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 29401 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29402 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 29403 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29404 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 29405 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29406 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29407 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29408 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29409 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29410 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29411 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29412 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 29413 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29414 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 29415 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29416 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29417 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 29418 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 29419 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29420 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29421 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29422 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29423 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29424 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29425 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29426 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29427 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 29428 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29429 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29430 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29431 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29432 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29433 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29434 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29435 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29436 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29437 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 29438 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 29439 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 29440 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29441 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29442 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29443 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 29444 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ }, |
| | 29445 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 29446 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29447 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29448 | .{ ._, ._, .xor, .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29449 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 29450 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29451 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 29452 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 29453 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 29454 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 29455 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 29456 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 29457 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 29458 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .uia(65, .dst0, .sub_bit_size_rem_64), ._ }, |
| | 29459 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp9q, ._, ._ }, |
| | 29460 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 29461 | } }, |
| | 29462 | }, .{ |
| | 29463 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| | 29464 | .src_constraints = .{ |
| | 29465 | .{ .remainder_signed_int = .{ .of = .xword, .is = .qword } }, |
| | 29466 | .{ .remainder_signed_int = .{ .of = .xword, .is = .qword } }, |
| | 29467 | .any, |
| | 29468 | }, |
| | 29469 | .patterns = &.{ |
| | 29470 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 29471 | }, |
| | 29472 | .extra_temps = .{ |
| | 29473 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 29474 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29475 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 29476 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29477 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29478 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 29479 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29480 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 29481 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29482 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 29483 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 29484 | }, |
| | 29485 | .dst_temps = .{ .mem, .unused }, |
| | 29486 | .clobbers = .{ .eflags = true }, |
| | 29487 | .each = .{ .once = &.{ |
| | 29488 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 29489 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29490 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 29491 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29492 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 29493 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 29494 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 29495 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29496 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 29497 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 29498 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 29499 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 29500 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 29501 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 29502 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 29503 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 29504 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29505 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 29506 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 29507 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 29508 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 29509 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 29510 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 29511 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 29512 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 29513 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 29514 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29515 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29516 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 29517 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 29518 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 29519 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 29520 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 29521 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 29522 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 29523 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 29524 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 29525 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29526 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 29527 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29528 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 29529 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 29530 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 29531 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 29532 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29533 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 29534 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29535 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 29536 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29537 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29538 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29539 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29540 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29541 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29542 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29543 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 29544 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29545 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 29546 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29547 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29548 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 29549 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 29550 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29551 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29552 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29553 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29554 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29555 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29556 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29557 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29558 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 29559 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29560 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29561 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29562 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29563 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29564 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29565 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29566 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29567 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29568 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 29569 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 29570 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 29571 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29572 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29573 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29574 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 29575 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ }, |
| | 29576 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 29577 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29578 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29579 | .{ ._, ._, .xor, .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29580 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 29581 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29582 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 29583 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 29584 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 29585 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 29586 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 29587 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 29588 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 29589 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .uia(65, .dst0, .sub_bit_size_rem_64), ._ }, |
| | 29590 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp9q, ._, ._ }, |
| | 29591 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 29592 | } }, |
| | 29593 | }, .{ |
| | 29594 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| | 29595 | .src_constraints = .{ |
| | 29596 | .{ .remainder_signed_int = .{ .of = .xword, .is = .qword } }, |
| | 29597 | .{ .remainder_signed_int = .{ .of = .xword, .is = .qword } }, |
| | 29598 | .any, |
| | 29599 | }, |
| | 29600 | .patterns = &.{ |
| | 29601 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 29602 | }, |
| | 29603 | .extra_temps = .{ |
| | 29604 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 29605 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29606 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 29607 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29608 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29609 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 29610 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29611 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 29612 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29613 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 29614 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 29615 | }, |
| | 29616 | .dst_temps = .{ .mem, .unused }, |
| | 29617 | .clobbers = .{ .eflags = true }, |
| | 29618 | .each = .{ .once = &.{ |
| | 29619 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 29620 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29621 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 29622 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29623 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 29624 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 29625 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 29626 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29627 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 29628 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 29629 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 29630 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 29631 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 29632 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 29633 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 29634 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 29635 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29636 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 29637 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 29638 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 29639 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 29640 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 29641 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 29642 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 29643 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 29644 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 29645 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29646 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29647 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 29648 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 29649 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 29650 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 29651 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 29652 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 29653 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 29654 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 29655 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 29656 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29657 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 29658 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29659 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 29660 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 29661 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 29662 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29663 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 29664 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 29665 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29666 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 29667 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29668 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29669 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29670 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29671 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29672 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29673 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29674 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 29675 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29676 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 29677 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29678 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29679 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 29680 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 29681 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29682 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29683 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29684 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29685 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29686 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29687 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29688 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29689 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 29690 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29691 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29692 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29693 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29694 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29695 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29696 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29697 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29698 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29699 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 29700 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 29701 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 29702 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29703 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29704 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29705 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 29706 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ }, |
| | 29707 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 29708 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29709 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29710 | .{ ._, ._, .xor, .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29711 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 29712 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29713 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 29714 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 29715 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 29716 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 29717 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 29718 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 29719 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 29720 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .uia(65, .dst0, .sub_bit_size_rem_64), ._ }, |
| | 29721 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp9q, ._, ._ }, |
| | 29722 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 29723 | } }, |
| | 29724 | }, .{ |
| | 29725 | .required_features = .{ .@"64bit", null, null, null }, |
| | 29726 | .src_constraints = .{ |
| | 29727 | .{ .remainder_signed_int = .{ .of = .xword, .is = .qword } }, |
| | 29728 | .{ .remainder_signed_int = .{ .of = .xword, .is = .qword } }, |
| | 29729 | .any, |
| | 29730 | }, |
| | 29731 | .patterns = &.{ |
| | 29732 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 29733 | }, |
| | 29734 | .extra_temps = .{ |
| | 29735 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 29736 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29737 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 29738 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29739 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29740 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 29741 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29742 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 29743 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29744 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 29745 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 29746 | }, |
| | 29747 | .dst_temps = .{ .mem, .unused }, |
| | 29748 | .clobbers = .{ .eflags = true }, |
| | 29749 | .each = .{ .once = &.{ |
| | 29750 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 29751 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29752 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 29753 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29754 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 29755 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 29756 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 29757 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29758 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 29759 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 29760 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 29761 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 29762 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 29763 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 29764 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 29765 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 29766 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29767 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 29768 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 29769 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 29770 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 29771 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 29772 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 29773 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 29774 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 29775 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 29776 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29777 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29778 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 29779 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 29780 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 29781 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 29782 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 29783 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 29784 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 29785 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 29786 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 29787 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29788 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 29789 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29790 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 29791 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 29792 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 29793 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29794 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 29795 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 29796 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29797 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 29798 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29799 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29800 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29801 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29802 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29803 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29804 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29805 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 29806 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29807 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 29808 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29809 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29810 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 29811 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 29812 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29813 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29814 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29815 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29816 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29817 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29818 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29819 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29820 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 29821 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29822 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29823 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29824 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29825 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29826 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29827 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29828 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29829 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29830 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 29831 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 29832 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 29833 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29834 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29835 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29836 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 29837 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ }, |
| | 29838 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 29839 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29840 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29841 | .{ ._, ._, .xor, .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29842 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 29843 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29844 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 29845 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 29846 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 29847 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 29848 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 29849 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 29850 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 29851 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .uia(65, .dst0, .sub_bit_size_rem_64), ._ }, |
| | 29852 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp9q, ._, ._ }, |
| | 29853 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 29854 | } }, |
| | 29855 | }, .{ |
| | 29856 | .required_features = .{ .@"64bit", .cmov, .slow_incdec, null }, |
| | 29857 | .src_constraints = .{ |
| | 29858 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 65 } }, |
| | 29859 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 65 } }, |
| | 29860 | .any, |
| | 29861 | }, |
| | 29862 | .patterns = &.{ |
| | 29863 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 29864 | }, |
| | 29865 | .extra_temps = .{ |
| | 29866 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 29867 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29868 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 29869 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29870 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29871 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 29872 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29873 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 29874 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29875 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 29876 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 29877 | }, |
| | 29878 | .dst_temps = .{ .mem, .unused }, |
| | 29879 | .clobbers = .{ .eflags = true }, |
| | 29880 | .each = .{ .once = &.{ |
| | 29881 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 29882 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29883 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 29884 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29885 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 29886 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, |
| | 29887 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, |
| | 29888 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 29889 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 29890 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29891 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 29892 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 29893 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 29894 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 29895 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 29896 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 29897 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 29898 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 29899 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29900 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 29901 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 29902 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 29903 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 29904 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 29905 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 29906 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 29907 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 29908 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 29909 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29910 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 29911 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 29912 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 29913 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 29914 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 29915 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 29916 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 29917 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 29918 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 29919 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 29920 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29921 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 29922 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29923 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 29924 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 29925 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 29926 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 29927 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29928 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 29929 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29930 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 29931 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29932 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29933 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29934 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29935 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29936 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29937 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 29938 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 29939 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29940 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 29941 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 29942 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 29943 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 29944 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 29945 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29946 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29947 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 29948 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 29949 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 29950 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29951 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 29952 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 29953 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 29954 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 29955 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29956 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29957 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 29958 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 29959 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 29960 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 29961 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 29962 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 29963 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 29964 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 29965 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 29966 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 29967 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29968 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 29969 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 29970 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 29971 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 29972 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 29973 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 29974 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 29975 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 29976 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 29977 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 29978 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 29979 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 29980 | } }, |
| | 29981 | }, .{ |
| | 29982 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| | 29983 | .src_constraints = .{ |
| | 29984 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 65 } }, |
| | 29985 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 65 } }, |
| | 29986 | .any, |
| | 29987 | }, |
| | 29988 | .patterns = &.{ |
| | 29989 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 29990 | }, |
| | 29991 | .extra_temps = .{ |
| | 29992 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 29993 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29994 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 29995 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29996 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29997 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 29998 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 29999 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 30000 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30001 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 30002 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 30003 | }, |
| | 30004 | .dst_temps = .{ .mem, .unused }, |
| | 30005 | .clobbers = .{ .eflags = true }, |
| | 30006 | .each = .{ .once = &.{ |
| | 30007 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 30008 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30009 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 30010 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30011 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 30012 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, |
| | 30013 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, |
| | 30014 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 30015 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 30016 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30017 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 30018 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 30019 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 30020 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 30021 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 30022 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 30023 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 30024 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 30025 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30026 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 30027 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 30028 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 30029 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 30030 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 30031 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 30032 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 30033 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 30034 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 30035 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30036 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30037 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 30038 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 30039 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 30040 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 30041 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 30042 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 30043 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 30044 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 30045 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 30046 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30047 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 30048 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30049 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 30050 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 30051 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 30052 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 30053 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30054 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 30055 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30056 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 30057 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30058 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30059 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30060 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30061 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30062 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30063 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30064 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 30065 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30066 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 30067 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30068 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30069 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 30070 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 30071 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30072 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30073 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30074 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30075 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30076 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30077 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30078 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30079 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 30080 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30081 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30082 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30083 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30084 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30085 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30086 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30087 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30088 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30089 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 30090 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 30091 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30092 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 30093 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30094 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30095 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 30096 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 30097 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 30098 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30099 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 30100 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 30101 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 30102 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 30103 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 30104 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 30105 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 30106 | } }, |
| | 30107 | }, .{ |
| | 30108 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| | 30109 | .src_constraints = .{ |
| | 30110 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 65 } }, |
| | 30111 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 65 } }, |
| | 30112 | .any, |
| | 30113 | }, |
| | 30114 | .patterns = &.{ |
| | 30115 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 30116 | }, |
| | 30117 | .extra_temps = .{ |
| | 30118 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 30119 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30120 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 30121 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30122 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30123 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 30124 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30125 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 30126 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30127 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 30128 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 30129 | }, |
| | 30130 | .dst_temps = .{ .mem, .unused }, |
| | 30131 | .clobbers = .{ .eflags = true }, |
| | 30132 | .each = .{ .once = &.{ |
| | 30133 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 30134 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30135 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 30136 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30137 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 30138 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, |
| | 30139 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, |
| | 30140 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 30141 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 30142 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30143 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 30144 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 30145 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 30146 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 30147 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 30148 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 30149 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 30150 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 30151 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30152 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 30153 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 30154 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 30155 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 30156 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 30157 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 30158 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 30159 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 30160 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 30161 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30162 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30163 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 30164 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 30165 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 30166 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 30167 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 30168 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 30169 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 30170 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 30171 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 30172 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30173 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 30174 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30175 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 30176 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 30177 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 30178 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30179 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30180 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 30181 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30182 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 30183 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30184 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30185 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30186 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30187 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30188 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30189 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30190 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 30191 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30192 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 30193 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30194 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30195 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 30196 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 30197 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30198 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30199 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30200 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30201 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30202 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30203 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30204 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30205 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 30206 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30207 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30208 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30209 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30210 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30211 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30212 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30213 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30214 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30215 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 30216 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 30217 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30218 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 30219 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30220 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30221 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 30222 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 30223 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 30224 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30225 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 30226 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 30227 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 30228 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 30229 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 30230 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 30231 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 30232 | } }, |
| | 30233 | }, .{ |
| | 30234 | .required_features = .{ .@"64bit", null, null, null }, |
| | 30235 | .src_constraints = .{ |
| | 30236 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 65 } }, |
| | 30237 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 65 } }, |
| | 30238 | .any, |
| | 30239 | }, |
| | 30240 | .patterns = &.{ |
| | 30241 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 30242 | }, |
| | 30243 | .extra_temps = .{ |
| | 30244 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 30245 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30246 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 30247 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30248 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30249 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 30250 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30251 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 30252 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30253 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 30254 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 30255 | }, |
| | 30256 | .dst_temps = .{ .mem, .unused }, |
| | 30257 | .clobbers = .{ .eflags = true }, |
| | 30258 | .each = .{ .once = &.{ |
| | 30259 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 30260 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30261 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 30262 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30263 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 30264 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, |
| | 30265 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, |
| | 30266 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 30267 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 30268 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30269 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 30270 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 30271 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 30272 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 30273 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 30274 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 30275 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 30276 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 30277 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30278 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 30279 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 30280 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 30281 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 30282 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 30283 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 30284 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 30285 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 30286 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 30287 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30288 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30289 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 30290 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 30291 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 30292 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 30293 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 30294 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 30295 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 30296 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 30297 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 30298 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30299 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 30300 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30301 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 30302 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 30303 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 30304 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30305 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30306 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 30307 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30308 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 30309 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30310 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30311 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30312 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30313 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30314 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30315 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30316 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 30317 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30318 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 30319 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30320 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30321 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 30322 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 30323 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30324 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30325 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30326 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30327 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30328 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30329 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30330 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30331 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 30332 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30333 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30334 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30335 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30336 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30337 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30338 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30339 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30340 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30341 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 30342 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 30343 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30344 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 30345 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30346 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30347 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 30348 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 30349 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 30350 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30351 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 30352 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 30353 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 30354 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 30355 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 30356 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 30357 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp1q, ._, ._ }, |
| | 30358 | } }, |
| | 30359 | }, .{ |
| | 30360 | .required_features = .{ .@"64bit", .cmov, .slow_incdec, null }, |
| | 30361 | .src_constraints = .{ |
| | 30362 | .{ .remainder_signed_int = .{ .of = .xword, .is = .xword } }, |
| | 30363 | .{ .remainder_signed_int = .{ .of = .xword, .is = .xword } }, |
| | 30364 | .any, |
| | 30365 | }, |
| | 30366 | .patterns = &.{ |
| | 30367 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 30368 | }, |
| | 30369 | .extra_temps = .{ |
| | 30370 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 30371 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30372 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 30373 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30374 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30375 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 30376 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30377 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 30378 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30379 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 30380 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 30381 | }, |
| | 30382 | .dst_temps = .{ .mem, .unused }, |
| | 30383 | .clobbers = .{ .eflags = true }, |
| | 30384 | .each = .{ .once = &.{ |
| | 30385 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 30386 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30387 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 30388 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30389 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 30390 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, |
| | 30391 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, |
| | 30392 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 30393 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 30394 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30395 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 30396 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 30397 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 30398 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 30399 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 30400 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 30401 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 30402 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 30403 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30404 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 30405 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 30406 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 30407 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 30408 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 30409 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 30410 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 30411 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 30412 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 30413 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30414 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30415 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 30416 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 30417 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 30418 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 30419 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 30420 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 30421 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 30422 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 30423 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 30424 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30425 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 30426 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30427 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 30428 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 30429 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 30430 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 30431 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30432 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 30433 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30434 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 30435 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30436 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30437 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30438 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30439 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30440 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30441 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30442 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 30443 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30444 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 30445 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30446 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30447 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 30448 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 30449 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30450 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30451 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30452 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30453 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30454 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30455 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30456 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30457 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 30458 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30459 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30460 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30461 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30462 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30463 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30464 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30465 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30466 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30467 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 30468 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 30469 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30470 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 30471 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30472 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30473 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 30474 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 30475 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 30476 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30477 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 30478 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 30479 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 30480 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 30481 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 30482 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 30483 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .uia(65, .dst0, .sub_bit_size_rem_64), ._ }, |
| | 30484 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp9q, ._, ._ }, |
| | 30485 | } }, |
| | 30486 | }, .{ |
| | 30487 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| | 30488 | .src_constraints = .{ |
| | 30489 | .{ .remainder_signed_int = .{ .of = .xword, .is = .xword } }, |
| | 30490 | .{ .remainder_signed_int = .{ .of = .xword, .is = .xword } }, |
| | 30491 | .any, |
| | 30492 | }, |
| | 30493 | .patterns = &.{ |
| | 30494 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 30495 | }, |
| | 30496 | .extra_temps = .{ |
| | 30497 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 30498 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30499 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 30500 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30501 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30502 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 30503 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30504 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 30505 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30506 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 30507 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 30508 | }, |
| | 30509 | .dst_temps = .{ .mem, .unused }, |
| | 30510 | .clobbers = .{ .eflags = true }, |
| | 30511 | .each = .{ .once = &.{ |
| | 30512 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 30513 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30514 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 30515 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30516 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 30517 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, |
| | 30518 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, |
| | 30519 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 30520 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 30521 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30522 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 30523 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 30524 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 30525 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 30526 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 30527 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 30528 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 30529 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 30530 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30531 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 30532 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 30533 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 30534 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 30535 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 30536 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 30537 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 30538 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 30539 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 30540 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30541 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30542 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 30543 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 30544 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 30545 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 30546 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 30547 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 30548 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 30549 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 30550 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 30551 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30552 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 30553 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30554 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 30555 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 30556 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 30557 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 30558 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30559 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 30560 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30561 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 30562 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30563 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30564 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30565 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30566 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30567 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30568 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30569 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 30570 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30571 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 30572 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30573 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30574 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 30575 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 30576 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30577 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30578 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30579 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30580 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30581 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30582 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30583 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30584 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 30585 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30586 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30587 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30588 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30589 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30590 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30591 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30592 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30593 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30594 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 30595 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 30596 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30597 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 30598 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30599 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30600 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 30601 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 30602 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 30603 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30604 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 30605 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 30606 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 30607 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 30608 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 30609 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 30610 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .uia(65, .dst0, .sub_bit_size_rem_64), ._ }, |
| | 30611 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp9q, ._, ._ }, |
| | 30612 | } }, |
| | 30613 | }, .{ |
| | 30614 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| | 30615 | .src_constraints = .{ |
| | 30616 | .{ .remainder_signed_int = .{ .of = .xword, .is = .xword } }, |
| | 30617 | .{ .remainder_signed_int = .{ .of = .xword, .is = .xword } }, |
| | 30618 | .any, |
| | 30619 | }, |
| | 30620 | .patterns = &.{ |
| | 30621 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 30622 | }, |
| | 30623 | .extra_temps = .{ |
| | 30624 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 30625 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30626 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 30627 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30628 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30629 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 30630 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30631 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 30632 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30633 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 30634 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 30635 | }, |
| | 30636 | .dst_temps = .{ .mem, .unused }, |
| | 30637 | .clobbers = .{ .eflags = true }, |
| | 30638 | .each = .{ .once = &.{ |
| | 30639 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 30640 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30641 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 30642 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30643 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 30644 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, |
| | 30645 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, |
| | 30646 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 30647 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 30648 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30649 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 30650 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 30651 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 30652 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 30653 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 30654 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 30655 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 30656 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 30657 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30658 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 30659 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 30660 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 30661 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 30662 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 30663 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 30664 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 30665 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 30666 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 30667 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30668 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30669 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 30670 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 30671 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 30672 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 30673 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 30674 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 30675 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 30676 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 30677 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 30678 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30679 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 30680 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30681 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 30682 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 30683 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 30684 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30685 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30686 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 30687 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30688 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 30689 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30690 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30691 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30692 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30693 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30694 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30695 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30696 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 30697 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30698 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 30699 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30700 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30701 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 30702 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 30703 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30704 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30705 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30706 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30707 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30708 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30709 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30710 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30711 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 30712 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30713 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30714 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30715 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30716 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30717 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30718 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30719 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30720 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30721 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 30722 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 30723 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30724 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 30725 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30726 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30727 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 30728 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 30729 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 30730 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30731 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 30732 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 30733 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 30734 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 30735 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 30736 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 30737 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .uia(65, .dst0, .sub_bit_size_rem_64), ._ }, |
| | 30738 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp9q, ._, ._ }, |
| | 30739 | } }, |
| | 30740 | }, .{ |
| | 30741 | .required_features = .{ .@"64bit", null, null, null }, |
| | 30742 | .src_constraints = .{ |
| | 30743 | .{ .remainder_signed_int = .{ .of = .xword, .is = .xword } }, |
| | 30744 | .{ .remainder_signed_int = .{ .of = .xword, .is = .xword } }, |
| | 30745 | .any, |
| | 30746 | }, |
| | 30747 | .patterns = &.{ |
| | 30748 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 30749 | }, |
| | 30750 | .extra_temps = .{ |
| | 30751 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 30752 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30753 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 30754 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30755 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30756 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 30757 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30758 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 30759 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30760 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 30761 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 30762 | }, |
| | 30763 | .dst_temps = .{ .mem, .unused }, |
| | 30764 | .clobbers = .{ .eflags = true }, |
| | 30765 | .each = .{ .once = &.{ |
| | 30766 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 30767 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30768 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 30769 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30770 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 30771 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, |
| | 30772 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, |
| | 30773 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 30774 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 30775 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30776 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 30777 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 30778 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 30779 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 30780 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 30781 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_size), ._, ._ }, |
| | 30782 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 30783 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 30784 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30785 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 30786 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 30787 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 30788 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 30789 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_size), .tmp9q, ._, ._ }, |
| | 30790 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 30791 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 30792 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 30793 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 30794 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30795 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 30796 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 30797 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 30798 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 30799 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 30800 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 30801 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 30802 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 30803 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 30804 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 30805 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30806 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 30807 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30808 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 30809 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 30810 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 30811 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30812 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30813 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 30814 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30815 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 30816 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30817 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30818 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30819 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30820 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30821 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30822 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 30823 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 30824 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30825 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 30826 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30827 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 30828 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 30829 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 30830 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30831 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30832 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 30833 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 30834 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 30835 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30836 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 30837 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 30838 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 30839 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 30840 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30841 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30842 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 30843 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 30844 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 30845 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 30846 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp8q, ._, ._ }, |
| | 30847 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 30848 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 30849 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 30850 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 30851 | .{ ._, ._, .mov, .tmp2q, .tmp0q, ._, ._ }, |
| | 30852 | .{ ._, ._l, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30853 | .{ ._, ._r, .sa, .tmp0q, .uia(64, .src0, .sub_bit_size_rem_64), ._, ._ }, |
| | 30854 | .{ ._, ._, .xor, .tmp2q, .tmp0q, ._, ._ }, |
| | 30855 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ }, |
| | 30856 | .{ ._, ._, .@"or", .tmp4q, .tmp2q, ._, ._ }, |
| | 30857 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30858 | .{ ._, ._, .xor, .tmp1q, .tmp3q, ._, ._ }, |
| | 30859 | .{ ._, ._, .mov, .tmp9q, .tmp1q, ._, ._ }, |
| | 30860 | .{ ._, ._, .not, .tmp9q, ._, ._, ._ }, |
| | 30861 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 30862 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 30863 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 30864 | .{ ._, ._rd, .sh, .tmp9q, .tmp1q, .uia(65, .dst0, .sub_bit_size_rem_64), ._ }, |
| | 30865 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp9q, ._, ._ }, |
| | 30866 | } }, |
| | 30867 | }, .{ |
| | 30868 | .required_features = .{ .@"64bit", .bmi2, .adx, null }, |
| | 30869 | .src_constraints = .{ |
| | 30870 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| | 30871 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| | 30872 | .any, |
| | 30873 | }, |
| | 30874 | .patterns = &.{ |
| | 30875 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 30876 | }, |
| | 30877 | .extra_temps = .{ |
| | 30878 | .{ .type = .isize, .kind = .{ .reg = .rax } }, |
| | 30879 | .{ .type = .usize, .kind = .{ .reg = .rdi } }, |
| | 30880 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30881 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30882 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 30883 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| | 30884 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30885 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30886 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30887 | .unused, |
| | 30888 | .unused, |
| | 30889 | }, |
| | 30890 | .dst_temps = .{ .mem, .unused }, |
| | 30891 | .clobbers = .{ .eflags = true }, |
| | 30892 | .each = .{ .once = &.{ |
| | 30893 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| | 30894 | .{ ._, ._, .lea, .tmp1p, .mem(.src1), ._, ._ }, |
| | 30895 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 30896 | .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ }, |
| | 30897 | .{ .@"0:", ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 30898 | .{ ._, ._, .@"or", .tmp4q, .memi(.src0q, .tmp0), ._, ._ }, |
| | 30899 | .{ ._, ._z, .j, .@"2f", ._, ._, ._ }, |
| | 30900 | .{ ._, ._, .lea, .tmp5p, .leaad(.tmp0, .sub_src0_size, 8), ._, ._ }, |
| | 30901 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 30902 | .{ .@"1:", ._x, .mul, .tmp8q, .tmp7q, .leai(.tmp1q, .tmp5), ._ }, |
| | 30903 | .{ ._, ._x, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 30904 | .{ ._, ._, .mov, .memiad(.dst0q, .tmp5, .add_size, -8), .tmp7q, ._, ._ }, |
| | 30905 | .{ ._, ._rcxz, .j, .@"1f", ._, ._, ._ }, |
| | 30906 | .{ ._, ._x, .ado, .tmp8q, .memia(.dst0q, .tmp5, .add_size), ._, ._ }, |
| | 30907 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 30908 | .{ ._, ._, .lea, .tmp5p, .lead(.tmp5, 8), ._, ._ }, |
| | 30909 | .{ ._, ._mp, .j, .@"1b", ._, ._, ._ }, |
| | 30910 | .{ .@"2:", ._, .mov, .memi(.dst0q, .tmp0), .tmp4q, ._, ._ }, |
| | 30911 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 30912 | .{ .@"1:", ._, .mov, .tmp4d, .tmp0d, ._, ._ }, |
| | 30913 | .{ ._, ._x, .ado, .tmp8q, .tmp3q, ._, ._ }, |
| | 30914 | .{ ._, ._x, .adc, .tmp8q, .tmp3q, ._, ._ }, |
| | 30915 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30916 | .{ .@"1:", ._, .@"or", .tmp8q, .leaid(.tmp1q, .tmp4, 8), ._, ._ }, |
| | 30917 | .{ .@"2:", ._, .sub, .tmp4d, .si(8), ._, ._ }, |
| | 30918 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| | 30919 | .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ }, |
| | 30920 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 30921 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| | 30922 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 30923 | .{ ._, ._, .@"test", .tmp2q, .tmp2q, ._, ._ }, |
| | 30924 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30925 | .{ ._, ._, .mov, .tmp0q, .si(-1), ._, ._ }, |
| | 30926 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| | 30927 | .{ ._, ._, .mov, .tmp5d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| | 30928 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 30929 | } }, |
| | 30930 | }, .{ |
| | 30931 | .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null }, |
| | 30932 | .src_constraints = .{ |
| | 30933 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| | 30934 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| | 30935 | .any, |
| | 30936 | }, |
| | 30937 | .patterns = &.{ |
| | 30938 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 30939 | }, |
| | 30940 | .extra_temps = .{ |
| | 30941 | .{ .type = .isize, .kind = .{ .reg = .rax } }, |
| | 30942 | .{ .type = .usize, .kind = .{ .reg = .rdi } }, |
| | 30943 | .{ .type = .u64, .kind = .{ .reg = .rcx } }, |
| | 30944 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 30945 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 30946 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 30947 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30948 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30949 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 30950 | .unused, |
| | 30951 | .unused, |
| | 30952 | }, |
| | 30953 | .dst_temps = .{ .mem, .unused }, |
| | 30954 | .clobbers = .{ .eflags = true }, |
| | 30955 | .each = .{ .once = &.{ |
| | 30956 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 30957 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 30958 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 30959 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 30960 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 30961 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 30962 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 30963 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 30964 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 30965 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 30966 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 30967 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 30968 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 30969 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 30970 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 30971 | .{ .@"2:", ._x, .mul, .tmp8q, .tmp7q, .leasi(.tmp1q, .@"8", .tmp3), ._ }, |
| | 30972 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 30973 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 30974 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 30975 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 30976 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 30977 | .{ ._, ._, .adc, .tmp5d, .tmp5d, ._, ._ }, |
| | 30978 | .{ ._, ._, .@"or", .tmp5q, .tmp8q, ._, ._ }, |
| | 30979 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 30980 | .{ .@"1:", ._, .@"or", .tmp5q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 30981 | .{ .@"2:", ._, .sub, .tmp3d, .si(1), ._, ._ }, |
| | 30982 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| | 30983 | .{ ._, ._, .@"or", .tmp2q, .tmp5q, ._, ._ }, |
| | 30984 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 30985 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 30986 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 30987 | .{ ._, ._, .@"test", .tmp2q, .tmp2q, ._, ._ }, |
| | 30988 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 30989 | .{ ._, ._, .mov, .tmp0q, .si(-1), ._, ._ }, |
| | 30990 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| | 30991 | .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| | 30992 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 30993 | } }, |
| | 30994 | }, .{ |
| | 30995 | .required_features = .{ .@"64bit", .bmi2, null, null }, |
| | 30996 | .src_constraints = .{ |
| | 30997 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| | 30998 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| | 30999 | .any, |
| | 31000 | }, |
| | 31001 | .patterns = &.{ |
| | 31002 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31003 | }, |
| | 31004 | .extra_temps = .{ |
| | 31005 | .{ .type = .isize, .kind = .{ .reg = .rax } }, |
| | 31006 | .{ .type = .usize, .kind = .{ .reg = .rdi } }, |
| | 31007 | .{ .type = .u64, .kind = .{ .reg = .rcx } }, |
| | 31008 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31009 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31010 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 31011 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31012 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31013 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31014 | .unused, |
| | 31015 | .unused, |
| | 31016 | }, |
| | 31017 | .dst_temps = .{ .mem, .unused }, |
| | 31018 | .clobbers = .{ .eflags = true }, |
| | 31019 | .each = .{ .once = &.{ |
| | 31020 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 31021 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 31022 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31023 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 31024 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31025 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 31026 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31027 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 31028 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 31029 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 31030 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31031 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 31032 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 31033 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31034 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 31035 | .{ .@"2:", ._x, .mul, .tmp8q, .tmp7q, .leasi(.tmp1q, .@"8", .tmp3), ._ }, |
| | 31036 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31037 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 31038 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 31039 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 31040 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 31041 | .{ ._, ._, .adc, .tmp5d, .tmp5d, ._, ._ }, |
| | 31042 | .{ ._, ._, .@"or", .tmp5q, .tmp8q, ._, ._ }, |
| | 31043 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31044 | .{ .@"1:", ._, .@"or", .tmp5q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 31045 | .{ .@"2:", ._c, .de, .tmp3d, ._, ._, ._ }, |
| | 31046 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 31047 | .{ ._, ._, .@"or", .tmp2q, .tmp5q, ._, ._ }, |
| | 31048 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31049 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 31050 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 31051 | .{ ._, ._, .@"test", .tmp2q, .tmp2q, ._, ._ }, |
| | 31052 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31053 | .{ ._, ._, .mov, .tmp0q, .si(-1), ._, ._ }, |
| | 31054 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| | 31055 | .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| | 31056 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31057 | } }, |
| | 31058 | }, .{ |
| | 31059 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| | 31060 | .src_constraints = .{ |
| | 31061 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| | 31062 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| | 31063 | .any, |
| | 31064 | }, |
| | 31065 | .patterns = &.{ |
| | 31066 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31067 | }, |
| | 31068 | .extra_temps = .{ |
| | 31069 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 31070 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 31071 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31072 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31073 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31074 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 31075 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31076 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 31077 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31078 | .unused, |
| | 31079 | .unused, |
| | 31080 | }, |
| | 31081 | .dst_temps = .{ .mem, .unused }, |
| | 31082 | .clobbers = .{ .eflags = true }, |
| | 31083 | .each = .{ .once = &.{ |
| | 31084 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 31085 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 31086 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31087 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 31088 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31089 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 31090 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31091 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 31092 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 31093 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 31094 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31095 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 31096 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 31097 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31098 | .{ .@"2:", ._, .mov, .tmp7q, .tmp4q, ._, ._ }, |
| | 31099 | .{ ._, ._, .mul, .leasi(.tmp1q, .@"8", .tmp3), ._, ._, ._ }, |
| | 31100 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 31101 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31102 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 31103 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 31104 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 31105 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 31106 | .{ ._, ._, .adc, .tmp8q, .si(0), ._, ._ }, |
| | 31107 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31108 | .{ .@"1:", ._, .@"or", .tmp8q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 31109 | .{ .@"2:", ._, .sub, .tmp3d, .si(1), ._, ._ }, |
| | 31110 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| | 31111 | .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ }, |
| | 31112 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31113 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 31114 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 31115 | .{ ._, ._, .@"test", .tmp2q, .tmp2q, ._, ._ }, |
| | 31116 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31117 | .{ ._, ._, .mov, .tmp7q, .si(-1), ._, ._ }, |
| | 31118 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 31119 | .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| | 31120 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31121 | } }, |
| | 31122 | }, .{ |
| | 31123 | .required_features = .{ .@"64bit", null, null, null }, |
| | 31124 | .src_constraints = .{ |
| | 31125 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| | 31126 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| | 31127 | .any, |
| | 31128 | }, |
| | 31129 | .patterns = &.{ |
| | 31130 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31131 | }, |
| | 31132 | .extra_temps = .{ |
| | 31133 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 31134 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 31135 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31136 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31137 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31138 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 31139 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31140 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 31141 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31142 | .unused, |
| | 31143 | .unused, |
| | 31144 | }, |
| | 31145 | .dst_temps = .{ .mem, .unused }, |
| | 31146 | .clobbers = .{ .eflags = true }, |
| | 31147 | .each = .{ .once = &.{ |
| | 31148 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 31149 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 31150 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31151 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 31152 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31153 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 31154 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31155 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 31156 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 31157 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 31158 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31159 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 31160 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 31161 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31162 | .{ .@"2:", ._, .mov, .tmp7q, .tmp4q, ._, ._ }, |
| | 31163 | .{ ._, ._, .mul, .leasi(.tmp1q, .@"8", .tmp3), ._, ._, ._ }, |
| | 31164 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 31165 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31166 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 31167 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 31168 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 31169 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 31170 | .{ ._, ._, .adc, .tmp8q, .si(0), ._, ._ }, |
| | 31171 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31172 | .{ .@"1:", ._, .@"or", .tmp8q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 31173 | .{ .@"2:", ._c, .de, .tmp3d, ._, ._, ._ }, |
| | 31174 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 31175 | .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ }, |
| | 31176 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31177 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 31178 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 31179 | .{ ._, ._, .@"test", .tmp2q, .tmp2q, ._, ._ }, |
| | 31180 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31181 | .{ ._, ._, .mov, .tmp7q, .si(-1), ._, ._ }, |
| | 31182 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 31183 | .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| | 31184 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31185 | } }, |
| | 31186 | }, .{ |
| | 31187 | .required_features = .{ .@"64bit", .bmi2, .adx, null }, |
| | 31188 | .src_constraints = .{ |
| | 31189 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| | 31190 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| | 31191 | .any, |
| | 31192 | }, |
| | 31193 | .patterns = &.{ |
| | 31194 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31195 | }, |
| | 31196 | .extra_temps = .{ |
| | 31197 | .{ .type = .isize, .kind = .{ .reg = .rax } }, |
| | 31198 | .{ .type = .usize, .kind = .{ .reg = .rdi } }, |
| | 31199 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31200 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31201 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31202 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| | 31203 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31204 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31205 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31206 | .unused, |
| | 31207 | .unused, |
| | 31208 | }, |
| | 31209 | .dst_temps = .{ .mem, .unused }, |
| | 31210 | .clobbers = .{ .eflags = true }, |
| | 31211 | .each = .{ .once = &.{ |
| | 31212 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| | 31213 | .{ ._, ._, .lea, .tmp1p, .mem(.src1), ._, ._ }, |
| | 31214 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31215 | .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ }, |
| | 31216 | .{ .@"0:", ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31217 | .{ ._, ._, .@"or", .tmp4q, .memi(.src0q, .tmp0), ._, ._ }, |
| | 31218 | .{ ._, ._z, .j, .@"2f", ._, ._, ._ }, |
| | 31219 | .{ ._, ._, .lea, .tmp5p, .leaad(.tmp0, .sub_src0_size, 8), ._, ._ }, |
| | 31220 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31221 | .{ .@"1:", ._x, .mul, .tmp8q, .tmp7q, .leai(.tmp1q, .tmp5), ._ }, |
| | 31222 | .{ ._, ._x, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31223 | .{ ._, ._, .mov, .memiad(.dst0q, .tmp5, .add_size, -8), .tmp7q, ._, ._ }, |
| | 31224 | .{ ._, ._rcxz, .j, .@"1f", ._, ._, ._ }, |
| | 31225 | .{ ._, ._x, .ado, .tmp8q, .memia(.dst0q, .tmp5, .add_size), ._, ._ }, |
| | 31226 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31227 | .{ ._, ._, .lea, .tmp5p, .lead(.tmp5, 8), ._, ._ }, |
| | 31228 | .{ ._, ._mp, .j, .@"1b", ._, ._, ._ }, |
| | 31229 | .{ .@"2:", ._, .mov, .memi(.dst0q, .tmp0), .tmp4q, ._, ._ }, |
| | 31230 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31231 | .{ .@"1:", ._, .mov, .tmp4d, .tmp0d, ._, ._ }, |
| | 31232 | .{ ._, ._x, .ado, .tmp8q, .tmp3q, ._, ._ }, |
| | 31233 | .{ ._, ._x, .adc, .tmp8q, .tmp3q, ._, ._ }, |
| | 31234 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31235 | .{ .@"1:", ._, .@"or", .tmp8q, .leai(.tmp1q, .tmp4), ._, ._ }, |
| | 31236 | .{ .@"2:", ._, .sub, .tmp4d, .si(8), ._, ._ }, |
| | 31237 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| | 31238 | .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ }, |
| | 31239 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31240 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| | 31241 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 31242 | .{ ._, ._, .@"or", .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 31243 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31244 | .{ ._, ._, .mov, .tmp0q, .si(-1), ._, ._ }, |
| | 31245 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| | 31246 | .{ ._, ._, .mov, .tmp5d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 31247 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31248 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -8), .ui(0), ._, ._ }, |
| | 31249 | } }, |
| | 31250 | }, .{ |
| | 31251 | .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null }, |
| | 31252 | .src_constraints = .{ |
| | 31253 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| | 31254 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| | 31255 | .any, |
| | 31256 | }, |
| | 31257 | .patterns = &.{ |
| | 31258 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31259 | }, |
| | 31260 | .extra_temps = .{ |
| | 31261 | .{ .type = .isize, .kind = .{ .reg = .rax } }, |
| | 31262 | .{ .type = .usize, .kind = .{ .reg = .rdi } }, |
| | 31263 | .{ .type = .u64, .kind = .{ .reg = .rcx } }, |
| | 31264 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31265 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31266 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 31267 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31268 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31269 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31270 | .unused, |
| | 31271 | .unused, |
| | 31272 | }, |
| | 31273 | .dst_temps = .{ .mem, .unused }, |
| | 31274 | .clobbers = .{ .eflags = true }, |
| | 31275 | .each = .{ .once = &.{ |
| | 31276 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 31277 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 31278 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31279 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 31280 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31281 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 31282 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31283 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 31284 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 31285 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 31286 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31287 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 31288 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 31289 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31290 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 31291 | .{ .@"2:", ._x, .mul, .tmp8q, .tmp7q, .leasi(.tmp1q, .@"8", .tmp3), ._ }, |
| | 31292 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31293 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 31294 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 31295 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 31296 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 31297 | .{ ._, ._, .adc, .tmp5d, .tmp5d, ._, ._ }, |
| | 31298 | .{ ._, ._, .@"or", .tmp5q, .tmp8q, ._, ._ }, |
| | 31299 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31300 | .{ .@"1:", ._, .@"or", .tmp5q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 31301 | .{ .@"2:", ._, .sub, .tmp3d, .si(1), ._, ._ }, |
| | 31302 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| | 31303 | .{ ._, ._, .@"or", .tmp2q, .tmp5q, ._, ._ }, |
| | 31304 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31305 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 31306 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 31307 | .{ ._, ._, .@"or", .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 31308 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31309 | .{ ._, ._, .mov, .tmp0q, .si(-1), ._, ._ }, |
| | 31310 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| | 31311 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 31312 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31313 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -8), .ui(0), ._, ._ }, |
| | 31314 | } }, |
| | 31315 | }, .{ |
| | 31316 | .required_features = .{ .@"64bit", .bmi2, null, null }, |
| | 31317 | .src_constraints = .{ |
| | 31318 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| | 31319 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| | 31320 | .any, |
| | 31321 | }, |
| | 31322 | .patterns = &.{ |
| | 31323 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31324 | }, |
| | 31325 | .extra_temps = .{ |
| | 31326 | .{ .type = .isize, .kind = .{ .reg = .rax } }, |
| | 31327 | .{ .type = .usize, .kind = .{ .reg = .rdi } }, |
| | 31328 | .{ .type = .u64, .kind = .{ .reg = .rcx } }, |
| | 31329 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31330 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31331 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 31332 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31333 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31334 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31335 | .unused, |
| | 31336 | .unused, |
| | 31337 | }, |
| | 31338 | .dst_temps = .{ .mem, .unused }, |
| | 31339 | .clobbers = .{ .eflags = true }, |
| | 31340 | .each = .{ .once = &.{ |
| | 31341 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 31342 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 31343 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31344 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 31345 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31346 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 31347 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31348 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 31349 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 31350 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 31351 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31352 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 31353 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 31354 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31355 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 31356 | .{ .@"2:", ._x, .mul, .tmp8q, .tmp7q, .leasi(.tmp1q, .@"8", .tmp3), ._ }, |
| | 31357 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31358 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 31359 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 31360 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 31361 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 31362 | .{ ._, ._, .adc, .tmp5d, .tmp5d, ._, ._ }, |
| | 31363 | .{ ._, ._, .@"or", .tmp5q, .tmp8q, ._, ._ }, |
| | 31364 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31365 | .{ .@"1:", ._, .@"or", .tmp5q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 31366 | .{ .@"2:", ._c, .de, .tmp3d, ._, ._, ._ }, |
| | 31367 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 31368 | .{ ._, ._, .@"or", .tmp2q, .tmp5q, ._, ._ }, |
| | 31369 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31370 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 31371 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 31372 | .{ ._, ._, .@"or", .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 31373 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31374 | .{ ._, ._, .mov, .tmp0q, .si(-1), ._, ._ }, |
| | 31375 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| | 31376 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 31377 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31378 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -8), .ui(0), ._, ._ }, |
| | 31379 | } }, |
| | 31380 | }, .{ |
| | 31381 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| | 31382 | .src_constraints = .{ |
| | 31383 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| | 31384 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| | 31385 | .any, |
| | 31386 | }, |
| | 31387 | .patterns = &.{ |
| | 31388 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31389 | }, |
| | 31390 | .extra_temps = .{ |
| | 31391 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 31392 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 31393 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31394 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31395 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31396 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 31397 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31398 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 31399 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31400 | .unused, |
| | 31401 | .unused, |
| | 31402 | }, |
| | 31403 | .dst_temps = .{ .mem, .unused }, |
| | 31404 | .clobbers = .{ .eflags = true }, |
| | 31405 | .each = .{ .once = &.{ |
| | 31406 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 31407 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 31408 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31409 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 31410 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31411 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 31412 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31413 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 31414 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 31415 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 31416 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31417 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 31418 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 31419 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31420 | .{ .@"2:", ._, .mov, .tmp7q, .tmp4q, ._, ._ }, |
| | 31421 | .{ ._, ._, .mul, .leasi(.tmp1q, .@"8", .tmp3), ._, ._, ._ }, |
| | 31422 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 31423 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31424 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 31425 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 31426 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 31427 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 31428 | .{ ._, ._, .adc, .tmp8q, .si(0), ._, ._ }, |
| | 31429 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31430 | .{ .@"1:", ._, .@"or", .tmp8q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 31431 | .{ .@"2:", ._, .sub, .tmp3d, .si(1), ._, ._ }, |
| | 31432 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| | 31433 | .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ }, |
| | 31434 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31435 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 31436 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 31437 | .{ ._, ._, .@"or", .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 31438 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31439 | .{ ._, ._, .mov, .tmp7q, .si(-1), ._, ._ }, |
| | 31440 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 31441 | .{ ._, ._, .mov, .tmp1d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 31442 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31443 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -8), .ui(0), ._, ._ }, |
| | 31444 | } }, |
| | 31445 | }, .{ |
| | 31446 | .required_features = .{ .@"64bit", null, null, null }, |
| | 31447 | .src_constraints = .{ |
| | 31448 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| | 31449 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| | 31450 | .any, |
| | 31451 | }, |
| | 31452 | .patterns = &.{ |
| | 31453 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31454 | }, |
| | 31455 | .extra_temps = .{ |
| | 31456 | .{ .type = .isize, .kind = .{ .reg = .rdi } }, |
| | 31457 | .{ .type = .usize, .kind = .{ .reg = .rcx } }, |
| | 31458 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31459 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31460 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31461 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 31462 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31463 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 31464 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31465 | .unused, |
| | 31466 | .unused, |
| | 31467 | }, |
| | 31468 | .dst_temps = .{ .mem, .unused }, |
| | 31469 | .clobbers = .{ .eflags = true }, |
| | 31470 | .each = .{ .once = &.{ |
| | 31471 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 31472 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 31473 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31474 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 31475 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31476 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 31477 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31478 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 31479 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 31480 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 31481 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31482 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 31483 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 31484 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31485 | .{ .@"2:", ._, .mov, .tmp7q, .tmp4q, ._, ._ }, |
| | 31486 | .{ ._, ._, .mul, .leasi(.tmp1q, .@"8", .tmp3), ._, ._, ._ }, |
| | 31487 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 31488 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31489 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 31490 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 31491 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 31492 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 31493 | .{ ._, ._, .adc, .tmp8q, .si(0), ._, ._ }, |
| | 31494 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31495 | .{ .@"1:", ._, .@"or", .tmp8q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 31496 | .{ .@"2:", ._c, .de, .tmp3d, ._, ._, ._ }, |
| | 31497 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 31498 | .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ }, |
| | 31499 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31500 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 31501 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 31502 | .{ ._, ._, .@"or", .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 31503 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31504 | .{ ._, ._, .mov, .tmp7q, .si(-1), ._, ._ }, |
| | 31505 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| | 31506 | .{ ._, ._, .mov, .tmp1d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 31507 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31508 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -8), .ui(0), ._, ._ }, |
| | 31509 | } }, |
| | 31510 | }, .{ |
| | 31511 | .required_features = .{ .@"64bit", .bmi2, .adx, null }, |
| | 31512 | .src_constraints = .{ |
| | 31513 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, |
| | 31514 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, |
| | 31515 | .any, |
| | 31516 | }, |
| | 31517 | .patterns = &.{ |
| | 31518 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31519 | }, |
| | 31520 | .extra_temps = .{ |
| | 31521 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31522 | .{ .type = .usize, .kind = .{ .reg = .rax } }, |
| | 31523 | .{ .type = .u64, .kind = .{ .reg = .rdi } }, |
| | 31524 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31525 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31526 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| | 31527 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31528 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31529 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31530 | .unused, |
| | 31531 | .unused, |
| | 31532 | }, |
| | 31533 | .dst_temps = .{ .mem, .unused }, |
| | 31534 | .clobbers = .{ .eflags = true }, |
| | 31535 | .each = .{ .once = &.{ |
| | 31536 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| | 31537 | .{ ._, ._, .lea, .tmp1p, .mem(.src1), ._, ._ }, |
| | 31538 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31539 | .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ }, |
| | 31540 | .{ .@"0:", ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31541 | .{ ._, ._, .@"or", .tmp4q, .memi(.src0q, .tmp0), ._, ._ }, |
| | 31542 | .{ ._, ._z, .j, .@"2f", ._, ._, ._ }, |
| | 31543 | .{ ._, ._, .lea, .tmp5p, .leaad(.tmp0, .sub_src0_size, 8), ._, ._ }, |
| | 31544 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31545 | .{ .@"1:", ._x, .mul, .tmp8q, .tmp7q, .leai(.tmp1q, .tmp5), ._ }, |
| | 31546 | .{ ._, ._x, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31547 | .{ ._, ._, .mov, .memiad(.dst0q, .tmp5, .add_size, -8), .tmp7q, ._, ._ }, |
| | 31548 | .{ ._, ._rcxz, .j, .@"1f", ._, ._, ._ }, |
| | 31549 | .{ ._, ._x, .ado, .tmp8q, .memia(.dst0q, .tmp5, .add_size), ._, ._ }, |
| | 31550 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31551 | .{ ._, ._, .lea, .tmp5p, .lead(.tmp5, 8), ._, ._ }, |
| | 31552 | .{ ._, ._mp, .j, .@"1b", ._, ._, ._ }, |
| | 31553 | .{ .@"2:", ._, .mov, .memi(.dst0q, .tmp0), .tmp4q, ._, ._ }, |
| | 31554 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31555 | .{ .@"1:", ._, .mov, .tmp4d, .tmp0d, ._, ._ }, |
| | 31556 | .{ ._, ._x, .ado, .tmp8q, .tmp3q, ._, ._ }, |
| | 31557 | .{ ._, ._x, .adc, .tmp8q, .tmp3q, ._, ._ }, |
| | 31558 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31559 | .{ .@"1:", ._, .@"or", .tmp8q, .leai(.tmp1q, .tmp4), ._, ._ }, |
| | 31560 | .{ .@"2:", ._, .sub, .tmp4d, .si(8), ._, ._ }, |
| | 31561 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| | 31562 | .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ }, |
| | 31563 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31564 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| | 31565 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 31566 | .{ ._, ._, .mov, .tmp0d, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 31567 | .{ ._, ._, .mov, .tmp1q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 31568 | .{ ._, ._, .@"or", .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 31569 | .{ ._, ._, .bzhi, .tmp3q, .tmp1q, .tmp0q, ._ }, |
| | 31570 | .{ ._, ._r, .sh, .tmp1q, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 31571 | .{ ._, ._, .@"or", .tmp2q, .tmp1q, ._, ._ }, |
| | 31572 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31573 | .{ ._, ._, .mov, .tmp1q, .si(-1), ._, ._ }, |
| | 31574 | .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ }, |
| | 31575 | .{ ._, ._, .mov, .tmp5d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 31576 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31577 | .{ ._, ._, .bzhi, .tmp3q, .tmp1q, .tmp0q, ._ }, |
| | 31578 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -16), .tmp3q, ._, ._ }, |
| | 31579 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .ui(0), ._, ._ }, |
| | 31580 | } }, |
| | 31581 | }, .{ |
| | 31582 | .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null }, |
| | 31583 | .src_constraints = .{ |
| | 31584 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, |
| | 31585 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, |
| | 31586 | .any, |
| | 31587 | }, |
| | 31588 | .patterns = &.{ |
| | 31589 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31590 | }, |
| | 31591 | .extra_temps = .{ |
| | 31592 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31593 | .{ .type = .usize, .kind = .{ .reg = .rax } }, |
| | 31594 | .{ .type = .u64, .kind = .{ .reg = .rdi } }, |
| | 31595 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| | 31596 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31597 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 31598 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31599 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31600 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31601 | .unused, |
| | 31602 | .unused, |
| | 31603 | }, |
| | 31604 | .dst_temps = .{ .mem, .unused }, |
| | 31605 | .clobbers = .{ .eflags = true }, |
| | 31606 | .each = .{ .once = &.{ |
| | 31607 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 31608 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 31609 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31610 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 31611 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31612 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 31613 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31614 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 31615 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 31616 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 31617 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31618 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 31619 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 31620 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31621 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 31622 | .{ .@"2:", ._x, .mul, .tmp8q, .tmp7q, .leasi(.tmp1q, .@"8", .tmp3), ._ }, |
| | 31623 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31624 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 31625 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 31626 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 31627 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 31628 | .{ ._, ._, .adc, .tmp5d, .tmp5d, ._, ._ }, |
| | 31629 | .{ ._, ._, .@"or", .tmp5q, .tmp8q, ._, ._ }, |
| | 31630 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31631 | .{ .@"1:", ._, .@"or", .tmp5q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 31632 | .{ .@"2:", ._, .sub, .tmp3d, .si(1), ._, ._ }, |
| | 31633 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| | 31634 | .{ ._, ._, .@"or", .tmp2q, .tmp5q, ._, ._ }, |
| | 31635 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31636 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 31637 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 31638 | .{ ._, ._, .mov, .tmp0d, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 31639 | .{ ._, ._, .mov, .tmp1q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 31640 | .{ ._, ._, .@"or", .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 31641 | .{ ._, ._, .bzhi, .tmp3q, .tmp1q, .tmp0q, ._ }, |
| | 31642 | .{ ._, ._r, .sh, .tmp1q, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 31643 | .{ ._, ._, .@"or", .tmp2q, .tmp1q, ._, ._ }, |
| | 31644 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31645 | .{ ._, ._, .mov, .tmp1q, .si(-1), ._, ._ }, |
| | 31646 | .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ }, |
| | 31647 | .{ ._, ._, .mov, .tmp3d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 31648 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31649 | .{ ._, ._, .bzhi, .tmp3q, .tmp1q, .tmp0q, ._ }, |
| | 31650 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -16), .tmp3q, ._, ._ }, |
| | 31651 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .ui(0), ._, ._ }, |
| | 31652 | } }, |
| | 31653 | }, .{ |
| | 31654 | .required_features = .{ .@"64bit", .bmi2, null, null }, |
| | 31655 | .src_constraints = .{ |
| | 31656 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, |
| | 31657 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, |
| | 31658 | .any, |
| | 31659 | }, |
| | 31660 | .patterns = &.{ |
| | 31661 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31662 | }, |
| | 31663 | .extra_temps = .{ |
| | 31664 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31665 | .{ .type = .usize, .kind = .{ .reg = .rax } }, |
| | 31666 | .{ .type = .u64, .kind = .{ .reg = .rdi } }, |
| | 31667 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| | 31668 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31669 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 31670 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31671 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31672 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31673 | .unused, |
| | 31674 | .unused, |
| | 31675 | }, |
| | 31676 | .dst_temps = .{ .mem, .unused }, |
| | 31677 | .clobbers = .{ .eflags = true }, |
| | 31678 | .each = .{ .once = &.{ |
| | 31679 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 31680 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 31681 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31682 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 31683 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31684 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 31685 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31686 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 31687 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 31688 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 31689 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31690 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 31691 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 31692 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31693 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 31694 | .{ .@"2:", ._x, .mul, .tmp8q, .tmp7q, .leasi(.tmp1q, .@"8", .tmp3), ._ }, |
| | 31695 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31696 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 31697 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 31698 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 31699 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 31700 | .{ ._, ._, .adc, .tmp5d, .tmp5d, ._, ._ }, |
| | 31701 | .{ ._, ._, .@"or", .tmp5q, .tmp8q, ._, ._ }, |
| | 31702 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31703 | .{ .@"1:", ._, .@"or", .tmp5q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 31704 | .{ .@"2:", ._c, .de, .tmp3d, ._, ._, ._ }, |
| | 31705 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 31706 | .{ ._, ._, .@"or", .tmp2q, .tmp5q, ._, ._ }, |
| | 31707 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31708 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 31709 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 31710 | .{ ._, ._, .mov, .tmp0d, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 31711 | .{ ._, ._, .mov, .tmp1q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 31712 | .{ ._, ._, .@"or", .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 31713 | .{ ._, ._, .bzhi, .tmp3q, .tmp1q, .tmp0q, ._ }, |
| | 31714 | .{ ._, ._r, .sh, .tmp1q, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 31715 | .{ ._, ._, .@"or", .tmp2q, .tmp1q, ._, ._ }, |
| | 31716 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31717 | .{ ._, ._, .mov, .tmp1q, .si(-1), ._, ._ }, |
| | 31718 | .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ }, |
| | 31719 | .{ ._, ._, .mov, .tmp3d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 31720 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31721 | .{ ._, ._, .bzhi, .tmp3q, .tmp1q, .tmp0q, ._ }, |
| | 31722 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -16), .tmp3q, ._, ._ }, |
| | 31723 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .ui(0), ._, ._ }, |
| | 31724 | } }, |
| | 31725 | }, .{ |
| | 31726 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| | 31727 | .src_constraints = .{ |
| | 31728 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, |
| | 31729 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, |
| | 31730 | .any, |
| | 31731 | }, |
| | 31732 | .patterns = &.{ |
| | 31733 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31734 | }, |
| | 31735 | .extra_temps = .{ |
| | 31736 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31737 | .{ .type = .usize, .kind = .{ .reg = .rdi } }, |
| | 31738 | .{ .type = .u64, .kind = .{ .reg = .rcx } }, |
| | 31739 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31740 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31741 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 31742 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31743 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 31744 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31745 | .unused, |
| | 31746 | .unused, |
| | 31747 | }, |
| | 31748 | .dst_temps = .{ .mem, .unused }, |
| | 31749 | .clobbers = .{ .eflags = true }, |
| | 31750 | .each = .{ .once = &.{ |
| | 31751 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 31752 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 31753 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31754 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 31755 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31756 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 31757 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31758 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 31759 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 31760 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 31761 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31762 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 31763 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 31764 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31765 | .{ .@"2:", ._, .mov, .tmp7q, .tmp4q, ._, ._ }, |
| | 31766 | .{ ._, ._, .mul, .leasi(.tmp1q, .@"8", .tmp3), ._, ._, ._ }, |
| | 31767 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 31768 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31769 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 31770 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 31771 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 31772 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 31773 | .{ ._, ._, .adc, .tmp8q, .si(0), ._, ._ }, |
| | 31774 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31775 | .{ .@"1:", ._, .@"or", .tmp8q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 31776 | .{ .@"2:", ._, .sub, .tmp3d, .si(1), ._, ._ }, |
| | 31777 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| | 31778 | .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ }, |
| | 31779 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31780 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 31781 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 31782 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, |
| | 31783 | .{ ._, ._, .mov, .tmp1q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 31784 | .{ ._, ._, .@"or", .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 31785 | .{ ._, ._, .mov, .tmp3q, .tmp0q, ._, ._ }, |
| | 31786 | .{ ._, ._, .@"and", .tmp3q, .tmp1q, ._, ._ }, |
| | 31787 | .{ ._, ._r, .sh, .tmp1q, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 31788 | .{ ._, ._, .@"or", .tmp2q, .tmp1q, ._, ._ }, |
| | 31789 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31790 | .{ ._, ._, .mov, .tmp7q, .si(-1), ._, ._ }, |
| | 31791 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| | 31792 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 31793 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31794 | .{ ._, ._, .mov, .tmp3q, .tmp0q, ._, ._ }, |
| | 31795 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -16), .tmp3q, ._, ._ }, |
| | 31796 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .ui(0), ._, ._ }, |
| | 31797 | } }, |
| | 31798 | }, .{ |
| | 31799 | .required_features = .{ .@"64bit", null, null, null }, |
| | 31800 | .src_constraints = .{ |
| | 31801 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, |
| | 31802 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, |
| | 31803 | .any, |
| | 31804 | }, |
| | 31805 | .patterns = &.{ |
| | 31806 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31807 | }, |
| | 31808 | .extra_temps = .{ |
| | 31809 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31810 | .{ .type = .usize, .kind = .{ .reg = .rdi } }, |
| | 31811 | .{ .type = .u64, .kind = .{ .reg = .rcx } }, |
| | 31812 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31813 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31814 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 31815 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31816 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 31817 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31818 | .unused, |
| | 31819 | .unused, |
| | 31820 | }, |
| | 31821 | .dst_temps = .{ .mem, .unused }, |
| | 31822 | .clobbers = .{ .eflags = true }, |
| | 31823 | .each = .{ .once = &.{ |
| | 31824 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 31825 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 31826 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31827 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 31828 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31829 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 31830 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31831 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 31832 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 31833 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 31834 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31835 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 31836 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 31837 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31838 | .{ .@"2:", ._, .mov, .tmp7q, .tmp4q, ._, ._ }, |
| | 31839 | .{ ._, ._, .mul, .leasi(.tmp1q, .@"8", .tmp3), ._, ._, ._ }, |
| | 31840 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 31841 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31842 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 31843 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 31844 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 31845 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 31846 | .{ ._, ._, .adc, .tmp8q, .si(0), ._, ._ }, |
| | 31847 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31848 | .{ .@"1:", ._, .@"or", .tmp8q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 31849 | .{ .@"2:", ._c, .de, .tmp3d, ._, ._, ._ }, |
| | 31850 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 31851 | .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ }, |
| | 31852 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31853 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 31854 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 31855 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, |
| | 31856 | .{ ._, ._, .mov, .tmp1q, .memad(.dst0q, .add_size, -16), ._, ._ }, |
| | 31857 | .{ ._, ._, .@"or", .tmp2q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 31858 | .{ ._, ._, .mov, .tmp3q, .tmp0q, ._, ._ }, |
| | 31859 | .{ ._, ._, .@"and", .tmp3q, .tmp1q, ._, ._ }, |
| | 31860 | .{ ._, ._r, .sh, .tmp1q, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 31861 | .{ ._, ._, .@"or", .tmp2q, .tmp1q, ._, ._ }, |
| | 31862 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31863 | .{ ._, ._, .mov, .tmp7q, .si(-1), ._, ._ }, |
| | 31864 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| | 31865 | .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ }, |
| | 31866 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31867 | .{ ._, ._, .mov, .tmp3q, .tmp0q, ._, ._ }, |
| | 31868 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -16), .tmp3q, ._, ._ }, |
| | 31869 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .ui(0), ._, ._ }, |
| | 31870 | } }, |
| | 31871 | }, .{ |
| | 31872 | .required_features = .{ .@"64bit", .bmi2, .adx, null }, |
| | 31873 | .src_constraints = .{ |
| | 31874 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, |
| | 31875 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, |
| | 31876 | .any, |
| | 31877 | }, |
| | 31878 | .patterns = &.{ |
| | 31879 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31880 | }, |
| | 31881 | .extra_temps = .{ |
| | 31882 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31883 | .{ .type = .usize, .kind = .{ .reg = .rax } }, |
| | 31884 | .{ .type = .u64, .kind = .{ .reg = .rdi } }, |
| | 31885 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31886 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31887 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| | 31888 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31889 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31890 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31891 | .unused, |
| | 31892 | .unused, |
| | 31893 | }, |
| | 31894 | .dst_temps = .{ .mem, .unused }, |
| | 31895 | .clobbers = .{ .eflags = true }, |
| | 31896 | .each = .{ .once = &.{ |
| | 31897 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| | 31898 | .{ ._, ._, .lea, .tmp1p, .mem(.src1), ._, ._ }, |
| | 31899 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31900 | .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ }, |
| | 31901 | .{ .@"0:", ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31902 | .{ ._, ._, .@"or", .tmp4q, .memi(.src0q, .tmp0), ._, ._ }, |
| | 31903 | .{ ._, ._z, .j, .@"2f", ._, ._, ._ }, |
| | 31904 | .{ ._, ._, .lea, .tmp5p, .leaad(.tmp0, .sub_src0_size, 8), ._, ._ }, |
| | 31905 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31906 | .{ .@"1:", ._x, .mul, .tmp8q, .tmp7q, .leai(.tmp1q, .tmp5), ._ }, |
| | 31907 | .{ ._, ._x, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31908 | .{ ._, ._, .mov, .memiad(.dst0q, .tmp5, .add_size, -8), .tmp7q, ._, ._ }, |
| | 31909 | .{ ._, ._rcxz, .j, .@"1f", ._, ._, ._ }, |
| | 31910 | .{ ._, ._x, .ado, .tmp8q, .memia(.dst0q, .tmp5, .add_size), ._, ._ }, |
| | 31911 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31912 | .{ ._, ._, .lea, .tmp5p, .lead(.tmp5, 8), ._, ._ }, |
| | 31913 | .{ ._, ._mp, .j, .@"1b", ._, ._, ._ }, |
| | 31914 | .{ .@"2:", ._, .mov, .memi(.dst0q, .tmp0), .tmp4q, ._, ._ }, |
| | 31915 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31916 | .{ .@"1:", ._, .mov, .tmp4d, .tmp0d, ._, ._ }, |
| | 31917 | .{ ._, ._x, .ado, .tmp8q, .tmp3q, ._, ._ }, |
| | 31918 | .{ ._, ._x, .adc, .tmp8q, .tmp3q, ._, ._ }, |
| | 31919 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31920 | .{ .@"1:", ._, .@"or", .tmp8q, .leai(.tmp1q, .tmp4), ._, ._ }, |
| | 31921 | .{ .@"2:", ._, .sub, .tmp4d, .si(8), ._, ._ }, |
| | 31922 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| | 31923 | .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ }, |
| | 31924 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31925 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| | 31926 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 31927 | .{ ._, ._, .mov, .tmp0d, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 31928 | .{ ._, ._, .mov, .tmp1q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 31929 | .{ ._, ._, .bzhi, .tmp3q, .tmp1q, .tmp0q, ._ }, |
| | 31930 | .{ ._, ._r, .sh, .tmp1q, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 31931 | .{ ._, ._, .@"or", .tmp2q, .tmp1q, ._, ._ }, |
| | 31932 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 31933 | .{ ._, ._, .mov, .tmp1q, .si(-1), ._, ._ }, |
| | 31934 | .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ }, |
| | 31935 | .{ ._, ._, .mov, .tmp5d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 31936 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 31937 | .{ ._, ._, .bzhi, .tmp3q, .tmp1q, .tmp0q, ._ }, |
| | 31938 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -8), .tmp3q, ._, ._ }, |
| | 31939 | } }, |
| | 31940 | }, .{ |
| | 31941 | .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null }, |
| | 31942 | .src_constraints = .{ |
| | 31943 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, |
| | 31944 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, |
| | 31945 | .any, |
| | 31946 | }, |
| | 31947 | .patterns = &.{ |
| | 31948 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 31949 | }, |
| | 31950 | .extra_temps = .{ |
| | 31951 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 31952 | .{ .type = .usize, .kind = .{ .reg = .rax } }, |
| | 31953 | .{ .type = .u64, .kind = .{ .reg = .rdi } }, |
| | 31954 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| | 31955 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 31956 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 31957 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31958 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31959 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 31960 | .unused, |
| | 31961 | .unused, |
| | 31962 | }, |
| | 31963 | .dst_temps = .{ .mem, .unused }, |
| | 31964 | .clobbers = .{ .eflags = true }, |
| | 31965 | .each = .{ .once = &.{ |
| | 31966 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 31967 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 31968 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 31969 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 31970 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 31971 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 31972 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 31973 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 31974 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 31975 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 31976 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 31977 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 31978 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 31979 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 31980 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 31981 | .{ .@"2:", ._x, .mul, .tmp8q, .tmp7q, .leasi(.tmp1q, .@"8", .tmp3), ._ }, |
| | 31982 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 31983 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 31984 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 31985 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 31986 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 31987 | .{ ._, ._, .adc, .tmp5d, .tmp5d, ._, ._ }, |
| | 31988 | .{ ._, ._, .@"or", .tmp5q, .tmp8q, ._, ._ }, |
| | 31989 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 31990 | .{ .@"1:", ._, .@"or", .tmp5q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 31991 | .{ .@"2:", ._, .sub, .tmp3d, .si(1), ._, ._ }, |
| | 31992 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| | 31993 | .{ ._, ._, .@"or", .tmp2q, .tmp5q, ._, ._ }, |
| | 31994 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 31995 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 31996 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 31997 | .{ ._, ._, .mov, .tmp0d, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 31998 | .{ ._, ._, .mov, .tmp1q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 31999 | .{ ._, ._, .bzhi, .tmp3q, .tmp1q, .tmp0q, ._ }, |
| | 32000 | .{ ._, ._r, .sh, .tmp1q, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 32001 | .{ ._, ._, .@"or", .tmp2q, .tmp1q, ._, ._ }, |
| | 32002 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 32003 | .{ ._, ._, .mov, .tmp1q, .si(-1), ._, ._ }, |
| | 32004 | .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ }, |
| | 32005 | .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 32006 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 32007 | .{ ._, ._, .bzhi, .tmp3q, .tmp1q, .tmp0q, ._ }, |
| | 32008 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -8), .tmp3q, ._, ._ }, |
| | 32009 | } }, |
| | 32010 | }, .{ |
| | 32011 | .required_features = .{ .@"64bit", .bmi2, null, null }, |
| | 32012 | .src_constraints = .{ |
| | 32013 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, |
| | 32014 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, |
| | 32015 | .any, |
| | 32016 | }, |
| | 32017 | .patterns = &.{ |
| | 32018 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32019 | }, |
| | 32020 | .extra_temps = .{ |
| | 32021 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32022 | .{ .type = .usize, .kind = .{ .reg = .rax } }, |
| | 32023 | .{ .type = .u64, .kind = .{ .reg = .rdi } }, |
| | 32024 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| | 32025 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 32026 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 32027 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 32028 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 32029 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 32030 | .unused, |
| | 32031 | .unused, |
| | 32032 | }, |
| | 32033 | .dst_temps = .{ .mem, .unused }, |
| | 32034 | .clobbers = .{ .eflags = true }, |
| | 32035 | .each = .{ .once = &.{ |
| | 32036 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 32037 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 32038 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 32039 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 32040 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 32041 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 32042 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 32043 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 32044 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 32045 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 32046 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 32047 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 32048 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 32049 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 32050 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 32051 | .{ .@"2:", ._x, .mul, .tmp8q, .tmp7q, .leasi(.tmp1q, .@"8", .tmp3), ._ }, |
| | 32052 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 32053 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 32054 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 32055 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 32056 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 32057 | .{ ._, ._, .adc, .tmp5d, .tmp5d, ._, ._ }, |
| | 32058 | .{ ._, ._, .@"or", .tmp5q, .tmp8q, ._, ._ }, |
| | 32059 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 32060 | .{ .@"1:", ._, .@"or", .tmp5q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 32061 | .{ .@"2:", ._c, .de, .tmp3d, ._, ._, ._ }, |
| | 32062 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 32063 | .{ ._, ._, .@"or", .tmp2q, .tmp5q, ._, ._ }, |
| | 32064 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 32065 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 32066 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 32067 | .{ ._, ._, .mov, .tmp0d, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 32068 | .{ ._, ._, .mov, .tmp1q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 32069 | .{ ._, ._, .bzhi, .tmp3q, .tmp1q, .tmp0q, ._ }, |
| | 32070 | .{ ._, ._r, .sh, .tmp1q, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 32071 | .{ ._, ._, .@"or", .tmp2q, .tmp1q, ._, ._ }, |
| | 32072 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 32073 | .{ ._, ._, .mov, .tmp1q, .si(-1), ._, ._ }, |
| | 32074 | .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ }, |
| | 32075 | .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 32076 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 32077 | .{ ._, ._, .bzhi, .tmp3q, .tmp1q, .tmp0q, ._ }, |
| | 32078 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -8), .tmp3q, ._, ._ }, |
| | 32079 | } }, |
| | 32080 | }, .{ |
| | 32081 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| | 32082 | .src_constraints = .{ |
| | 32083 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, |
| | 32084 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, |
| | 32085 | .any, |
| | 32086 | }, |
| | 32087 | .patterns = &.{ |
| | 32088 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32089 | }, |
| | 32090 | .extra_temps = .{ |
| | 32091 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32092 | .{ .type = .usize, .kind = .{ .reg = .rdi } }, |
| | 32093 | .{ .type = .u64, .kind = .{ .reg = .rcx } }, |
| | 32094 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32095 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 32096 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 32097 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 32098 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 32099 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 32100 | .unused, |
| | 32101 | .unused, |
| | 32102 | }, |
| | 32103 | .dst_temps = .{ .mem, .unused }, |
| | 32104 | .clobbers = .{ .eflags = true }, |
| | 32105 | .each = .{ .once = &.{ |
| | 32106 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 32107 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 32108 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 32109 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 32110 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 32111 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 32112 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 32113 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 32114 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 32115 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 32116 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 32117 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 32118 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 32119 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 32120 | .{ .@"2:", ._, .mov, .tmp7q, .tmp4q, ._, ._ }, |
| | 32121 | .{ ._, ._, .mul, .leasi(.tmp1q, .@"8", .tmp3), ._, ._, ._ }, |
| | 32122 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 32123 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 32124 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 32125 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 32126 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 32127 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 32128 | .{ ._, ._, .adc, .tmp8q, .si(0), ._, ._ }, |
| | 32129 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 32130 | .{ .@"1:", ._, .@"or", .tmp8q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 32131 | .{ .@"2:", ._, .sub, .tmp3d, .si(1), ._, ._ }, |
| | 32132 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| | 32133 | .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ }, |
| | 32134 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 32135 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 32136 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 32137 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, |
| | 32138 | .{ ._, ._, .mov, .tmp1q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 32139 | .{ ._, ._, .mov, .tmp3q, .tmp0q, ._, ._ }, |
| | 32140 | .{ ._, ._, .@"and", .tmp3q, .tmp1q, ._, ._ }, |
| | 32141 | .{ ._, ._r, .sh, .tmp1q, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 32142 | .{ ._, ._, .@"or", .tmp2q, .tmp1q, ._, ._ }, |
| | 32143 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 32144 | .{ ._, ._, .mov, .tmp7q, .si(-1), ._, ._ }, |
| | 32145 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| | 32146 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 32147 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 32148 | .{ ._, ._, .mov, .tmp3q, .tmp0q, ._, ._ }, |
| | 32149 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -8), .tmp3q, ._, ._ }, |
| | 32150 | } }, |
| | 32151 | }, .{ |
| | 32152 | .required_features = .{ .@"64bit", null, null, null }, |
| | 32153 | .src_constraints = .{ |
| | 32154 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, |
| | 32155 | .{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, |
| | 32156 | .any, |
| | 32157 | }, |
| | 32158 | .patterns = &.{ |
| | 32159 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32160 | }, |
| | 32161 | .extra_temps = .{ |
| | 32162 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32163 | .{ .type = .usize, .kind = .{ .reg = .rdi } }, |
| | 32164 | .{ .type = .u64, .kind = .{ .reg = .rcx } }, |
| | 32165 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32166 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 32167 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 32168 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 32169 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 32170 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 32171 | .unused, |
| | 32172 | .unused, |
| | 32173 | }, |
| | 32174 | .dst_temps = .{ .mem, .unused }, |
| | 32175 | .clobbers = .{ .eflags = true }, |
| | 32176 | .each = .{ .once = &.{ |
| | 32177 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 32178 | .{ ._, ._, .lea, .tmp1p, .memd(.src1, 8), ._, ._ }, |
| | 32179 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| | 32180 | .{ .@"0:", ._, .lea, .tmp3p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 32181 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 32182 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| | 32183 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 32184 | .{ ._, ._, .@"or", .tmp4q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 32185 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 32186 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp4q, ._, ._ }, |
| | 32187 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 32188 | .{ .@"1:", ._, .adc, .tmp8q, .memsia(.dst0q, .@"8", .tmp3, .add_size), ._, ._ }, |
| | 32189 | .{ ._, ._, .adc, .tmp5b, .si(0), ._, ._ }, |
| | 32190 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| | 32191 | .{ .@"2:", ._, .mov, .tmp7q, .tmp4q, ._, ._ }, |
| | 32192 | .{ ._, ._, .mul, .leasi(.tmp1q, .@"8", .tmp3), ._, ._, ._ }, |
| | 32193 | .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ }, |
| | 32194 | .{ ._, ._, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| | 32195 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp3, .add_size), .tmp7q, ._, ._ }, |
| | 32196 | .{ ._, ._c, .in, .tmp3p, ._, ._, ._ }, |
| | 32197 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 32198 | .{ ._, ._, .mov, .tmp3d, .tmp0d, ._, ._ }, |
| | 32199 | .{ ._, ._, .adc, .tmp8q, .si(0), ._, ._ }, |
| | 32200 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 32201 | .{ .@"1:", ._, .@"or", .tmp8q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| | 32202 | .{ .@"2:", ._c, .de, .tmp3d, ._, ._, ._ }, |
| | 32203 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 32204 | .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ }, |
| | 32205 | .{ .@"3:", ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| | 32206 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 32207 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 32208 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, |
| | 32209 | .{ ._, ._, .mov, .tmp1q, .memad(.dst0q, .add_size, -8), ._, ._ }, |
| | 32210 | .{ ._, ._, .mov, .tmp3q, .tmp0q, ._, ._ }, |
| | 32211 | .{ ._, ._, .@"and", .tmp3q, .tmp1q, ._, ._ }, |
| | 32212 | .{ ._, ._r, .sh, .tmp1q, .ua(.src0, .add_bit_size_rem_64), ._, ._ }, |
| | 32213 | .{ ._, ._, .@"or", .tmp2q, .tmp1q, ._, ._ }, |
| | 32214 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 32215 | .{ ._, ._, .mov, .tmp7q, .si(-1), ._, ._ }, |
| | 32216 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| | 32217 | .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| | 32218 | .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ }, |
| | 32219 | .{ ._, ._, .mov, .tmp3q, .tmp0q, ._, ._ }, |
| | 32220 | .{ .@"0:", ._, .mov, .memad(.dst0q, .add_size, -8), .tmp3q, ._, ._ }, |
| | 32221 | } }, |
| | 32222 | } }) catch |err| switch (err) { |
| | 32223 | error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{ |
| | 32224 | @tagName(air_tag), |
| | 32225 | cg.typeOf(bin_op.lhs).fmt(pt), |
| | 32226 | ops[0].tracking(cg), |
| | 32227 | ops[1].tracking(cg), |
| | 32228 | }), |
| | 32229 | else => |e| return e, |
| | 32230 | }; |
| | 32231 | try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg); |
| | 32232 | }, |
| | 32233 | .div_float, .div_float_optimized, .div_exact, .div_exact_optimized => |air_tag| if (use_old) try cg.airMulDivBinOp(inst, switch (air_tag) { |
| | 32234 | else => unreachable, |
| | 32235 | .div_float, .div_float_optimized => .div_float, |
| | 32236 | .div_exact, .div_exact_optimized => .div_exact, |
| | 32237 | }) else { |
| | 32238 | const bin_op = air_datas[@intFromEnum(inst)].bin_op; |
| | 32239 | const ty = cg.typeOf(bin_op.lhs); |
| | 32240 | var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs }); |
| | 32241 | var res: [1]Temp = undefined; |
| | 32242 | (if (cg.floatBits(ty.scalarType(zcu))) |_| cg.select(&res, &.{ty}, &ops, comptime &.{ .{ |
| | 32243 | .required_features = .{ .f16c, null, null, null }, |
| | 32244 | .src_constraints = .{ |
| | 32245 | .{ .scalar_float = .{ .of = .word, .is = .word } }, |
| | 32246 | .{ .scalar_float = .{ .of = .word, .is = .word } }, |
| | 32247 | .any, |
| | 32248 | }, |
| | 32249 | .patterns = &.{ |
| | 32250 | .{ .src = .{ .to_sse, .to_sse, .none } }, |
| | 32251 | }, |
| | 32252 | .extra_temps = .{ |
| | 32253 | .{ .type = .f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } }, |
| | 32254 | .unused, |
| | 32255 | .unused, |
| | 32256 | .unused, |
| | 32257 | .unused, |
| | 32258 | .unused, |
| | 32259 | .unused, |
| | 32260 | .unused, |
| | 32261 | .unused, |
| | 32262 | .unused, |
| | 32263 | .unused, |
| | 32264 | }, |
| | 32265 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 32266 | .each = .{ .once = &.{ |
| | 32267 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| | 32268 | .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ }, |
| | 32269 | .{ ._, .v_ss, .div, .dst0x, .dst0x, .tmp0d, ._ }, |
| | 32270 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 32271 | } }, |
| | 32272 | }, .{ |
| | 32273 | .required_features = .{ .sse, null, null, null }, |
| | 32274 | .src_constraints = .{ |
| | 32275 | .{ .scalar_float = .{ .of = .word, .is = .word } }, |
| | 32276 | .{ .scalar_float = .{ .of = .word, .is = .word } }, |
| | 32277 | .any, |
| | 32278 | }, |
| | 32279 | .patterns = &.{ |
| | 32280 | .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } }, |
| | 32281 | }, |
| | 32282 | .call_frame = .{ .alignment = .@"16" }, |
| | 32283 | .extra_temps = .{ |
| | 32284 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } }, |
| | 32285 | .unused, |
| | 32286 | .unused, |
| | 32287 | .unused, |
| | 32288 | .unused, |
| | 32289 | .unused, |
| | 32290 | .unused, |
| | 32291 | .unused, |
| | 32292 | .unused, |
| | 32293 | .unused, |
| | 32294 | .unused, |
| | 32295 | }, |
| | 32296 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 32297 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 32298 | .each = .{ .once = &.{ |
| | 32299 | .{ ._, ._, .call, .tmp0d, ._, ._, ._ }, |
| | 32300 | } }, |
| | 32301 | }, .{ |
| | 32302 | .required_features = .{ .f16c, null, null, null }, |
| | 32303 | .src_constraints = .{ |
| | 32304 | .{ .scalar_float = .{ .of = .qword, .is = .word } }, |
| | 32305 | .{ .scalar_float = .{ .of = .qword, .is = .word } }, |
| | 32306 | .any, |
| | 32307 | }, |
| | 32308 | .patterns = &.{ |
| | 32309 | .{ .src = .{ .mem, .mem, .none } }, |
| | 32310 | .{ .src = .{ .to_sse, .mem, .none } }, |
| | 32311 | .{ .src = .{ .mem, .to_sse, .none } }, |
| | 32312 | .{ .src = .{ .to_sse, .to_sse, .none } }, |
| | 32313 | }, |
| | 32314 | .extra_temps = .{ |
| | 32315 | .{ .type = .vector_4_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } }, |
| | 32316 | .unused, |
| | 32317 | .unused, |
| | 32318 | .unused, |
| | 32319 | .unused, |
| | 32320 | .unused, |
| | 32321 | .unused, |
| | 32322 | .unused, |
| | 32323 | .unused, |
| | 32324 | .unused, |
| | 32325 | .unused, |
| | 32326 | }, |
| | 32327 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 32328 | .each = .{ .once = &.{ |
| | 32329 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| | 32330 | .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ }, |
| | 32331 | .{ ._, .v_ps, .div, .dst0x, .dst0x, .tmp0x, ._ }, |
| | 32332 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 32333 | } }, |
| | 32334 | }, .{ |
| | 32335 | .required_features = .{ .f16c, null, null, null }, |
| | 32336 | .src_constraints = .{ |
| | 32337 | .{ .scalar_float = .{ .of = .xword, .is = .word } }, |
| | 32338 | .{ .scalar_float = .{ .of = .xword, .is = .word } }, |
| | 32339 | .any, |
| | 32340 | }, |
| | 32341 | .patterns = &.{ |
| | 32342 | .{ .src = .{ .mem, .mem, .none } }, |
| | 32343 | .{ .src = .{ .to_sse, .mem, .none } }, |
| | 32344 | .{ .src = .{ .mem, .to_sse, .none } }, |
| | 32345 | .{ .src = .{ .to_sse, .to_sse, .none } }, |
| | 32346 | }, |
| | 32347 | .extra_temps = .{ |
| | 32348 | .{ .type = .vector_8_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } }, |
| | 32349 | .unused, |
| | 32350 | .unused, |
| | 32351 | .unused, |
| | 32352 | .unused, |
| | 32353 | .unused, |
| | 32354 | .unused, |
| | 32355 | .unused, |
| | 32356 | .unused, |
| | 32357 | .unused, |
| | 32358 | .unused, |
| | 32359 | }, |
| | 32360 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 32361 | .each = .{ .once = &.{ |
| | 32362 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| | 32363 | .{ ._, .v_ps, .cvtph2, .tmp0y, .src1x, ._, ._ }, |
| | 32364 | .{ ._, .v_ps, .div, .dst0y, .dst0y, .tmp0y, ._ }, |
| | 32365 | .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ }, |
| | 32366 | } }, |
| | 32367 | }, .{ |
| | 32368 | .required_features = .{ .f16c, null, null, null }, |
| | 32369 | .src_constraints = .{ |
| | 32370 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } }, |
| | 32371 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } }, |
| | 32372 | .any, |
| | 32373 | }, |
| | 32374 | .patterns = &.{ |
| | 32375 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32376 | }, |
| | 32377 | .extra_temps = .{ |
| | 32378 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32379 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 32380 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 32381 | .unused, |
| | 32382 | .unused, |
| | 32383 | .unused, |
| | 32384 | .unused, |
| | 32385 | .unused, |
| | 32386 | .unused, |
| | 32387 | .unused, |
| | 32388 | .unused, |
| | 32389 | }, |
| | 32390 | .dst_temps = .{ .mem, .unused }, |
| | 32391 | .clobbers = .{ .eflags = true }, |
| | 32392 | .each = .{ .once = &.{ |
| | 32393 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| | 32394 | .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, |
| | 32395 | .{ ._, .v_ps, .cvtph2, .tmp2y, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ }, |
| | 32396 | .{ ._, .v_ps, .div, .tmp1y, .tmp1y, .tmp2y, ._ }, |
| | 32397 | .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ }, |
| | 32398 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| | 32399 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| | 32400 | } }, |
| | 32401 | }, .{ |
| | 32402 | .required_features = .{ .avx, null, null, null }, |
| | 32403 | .src_constraints = .{ |
| | 32404 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, |
| | 32405 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, |
| | 32406 | .any, |
| | 32407 | }, |
| | 32408 | .patterns = &.{ |
| | 32409 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32410 | }, |
| | 32411 | .call_frame = .{ .alignment = .@"16" }, |
| | 32412 | .extra_temps = .{ |
| | 32413 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32414 | .{ .type = .f16, .kind = .{ .reg = .xmm0 } }, |
| | 32415 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| | 32416 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } }, |
| | 32417 | .unused, |
| | 32418 | .unused, |
| | 32419 | .unused, |
| | 32420 | .unused, |
| | 32421 | .unused, |
| | 32422 | .unused, |
| | 32423 | .unused, |
| | 32424 | }, |
| | 32425 | .dst_temps = .{ .mem, .unused }, |
| | 32426 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 32427 | .each = .{ .once = &.{ |
| | 32428 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| | 32429 | .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ }, |
| | 32430 | .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) }, |
| | 32431 | .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0) }, |
| | 32432 | .{ ._, ._, .call, .tmp3d, ._, ._, ._ }, |
| | 32433 | .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ }, |
| | 32434 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| | 32435 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| | 32436 | } }, |
| | 32437 | }, .{ |
| | 32438 | .required_features = .{ .sse4_1, null, null, null }, |
| | 32439 | .src_constraints = .{ |
| | 32440 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, |
| | 32441 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, |
| | 32442 | .any, |
| | 32443 | }, |
| | 32444 | .patterns = &.{ |
| | 32445 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32446 | }, |
| | 32447 | .call_frame = .{ .alignment = .@"16" }, |
| | 32448 | .extra_temps = .{ |
| | 32449 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32450 | .{ .type = .f16, .kind = .{ .reg = .xmm0 } }, |
| | 32451 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| | 32452 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } }, |
| | 32453 | .unused, |
| | 32454 | .unused, |
| | 32455 | .unused, |
| | 32456 | .unused, |
| | 32457 | .unused, |
| | 32458 | .unused, |
| | 32459 | .unused, |
| | 32460 | }, |
| | 32461 | .dst_temps = .{ .mem, .unused }, |
| | 32462 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 32463 | .each = .{ .once = &.{ |
| | 32464 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| | 32465 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| | 32466 | .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ }, |
| | 32467 | .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ }, |
| | 32468 | .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ }, |
| | 32469 | .{ ._, ._, .call, .tmp3d, ._, ._, ._ }, |
| | 32470 | .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ }, |
| | 32471 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| | 32472 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| | 32473 | } }, |
| | 32474 | }, .{ |
| | 32475 | .required_features = .{ .sse2, null, null, null }, |
| | 32476 | .src_constraints = .{ |
| | 32477 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, |
| | 32478 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, |
| | 32479 | .any, |
| | 32480 | }, |
| | 32481 | .patterns = &.{ |
| | 32482 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32483 | }, |
| | 32484 | .call_frame = .{ .alignment = .@"16" }, |
| | 32485 | .extra_temps = .{ |
| | 32486 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32487 | .{ .type = .f16, .kind = .{ .reg = .xmm0 } }, |
| | 32488 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| | 32489 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } }, |
| | 32490 | .{ .type = .f16, .kind = .{ .reg = .ax } }, |
| | 32491 | .unused, |
| | 32492 | .unused, |
| | 32493 | .unused, |
| | 32494 | .unused, |
| | 32495 | .unused, |
| | 32496 | .unused, |
| | 32497 | }, |
| | 32498 | .dst_temps = .{ .mem, .unused }, |
| | 32499 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 32500 | .each = .{ .once = &.{ |
| | 32501 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| | 32502 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| | 32503 | .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ }, |
| | 32504 | .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ }, |
| | 32505 | .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ }, |
| | 32506 | .{ ._, ._, .call, .tmp3d, ._, ._, ._ }, |
| | 32507 | .{ ._, .p_w, .extr, .tmp4d, .tmp1x, .ui(0), ._ }, |
| | 32508 | .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ }, |
| | 32509 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| | 32510 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| | 32511 | } }, |
| | 32512 | }, .{ |
| | 32513 | .required_features = .{ .sse, null, null, null }, |
| | 32514 | .src_constraints = .{ |
| | 32515 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, |
| | 32516 | .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, |
| | 32517 | .any, |
| | 32518 | }, |
| | 32519 | .patterns = &.{ |
| | 32520 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32521 | }, |
| | 32522 | .call_frame = .{ .alignment = .@"16" }, |
| | 32523 | .extra_temps = .{ |
| | 32524 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32525 | .{ .type = .f16, .kind = .{ .reg = .ax } }, |
| | 32526 | .{ .type = .f32, .kind = .mem }, |
| | 32527 | .{ .type = .f16, .kind = .{ .reg = .xmm0 } }, |
| | 32528 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| | 32529 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } }, |
| | 32530 | .unused, |
| | 32531 | .unused, |
| | 32532 | .unused, |
| | 32533 | .unused, |
| | 32534 | .unused, |
| | 32535 | }, |
| | 32536 | .dst_temps = .{ .mem, .unused }, |
| | 32537 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 32538 | .each = .{ .once = &.{ |
| | 32539 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| | 32540 | .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ }, |
| | 32541 | .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ }, |
| | 32542 | .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ }, |
| | 32543 | .{ ._, ._, .movzx, .tmp1d, .memia(.src1w, .tmp0, .add_unaligned_size), ._, ._ }, |
| | 32544 | .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ }, |
| | 32545 | .{ ._, ._ss, .mov, .tmp4x, .mem(.tmp2d), ._, ._ }, |
| | 32546 | .{ ._, ._, .call, .tmp5d, ._, ._, ._ }, |
| | 32547 | .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ }, |
| | 32548 | .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ }, |
| | 32549 | .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ }, |
| | 32550 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| | 32551 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| | 32552 | } }, |
| | 32553 | }, .{ |
| | 32554 | .required_features = .{ .avx, null, null, null }, |
| | 32555 | .src_constraints = .{ |
| | 32556 | .{ .scalar_float = .{ .of = .dword, .is = .dword } }, |
| | 32557 | .{ .scalar_float = .{ .of = .dword, .is = .dword } }, |
| | 32558 | .any, |
| | 32559 | }, |
| | 32560 | .patterns = &.{ |
| | 32561 | .{ .src = .{ .to_sse, .mem, .none } }, |
| | 32562 | .{ .src = .{ .to_sse, .to_sse, .none } }, |
| | 32563 | }, |
| | 32564 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 32565 | .each = .{ .once = &.{ |
| | 32566 | .{ ._, .v_ss, .div, .dst0x, .src0x, .src1d, ._ }, |
| | 32567 | } }, |
| | 32568 | }, .{ |
| | 32569 | .required_features = .{ .sse, null, null, null }, |
| | 32570 | .src_constraints = .{ |
| | 32571 | .{ .scalar_float = .{ .of = .dword, .is = .dword } }, |
| | 32572 | .{ .scalar_float = .{ .of = .dword, .is = .dword } }, |
| | 32573 | .any, |
| | 32574 | }, |
| | 32575 | .patterns = &.{ |
| | 32576 | .{ .src = .{ .to_mut_sse, .mem, .none } }, |
| | 32577 | .{ .src = .{ .to_mut_sse, .to_sse, .none } }, |
| | 32578 | }, |
| | 32579 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 32580 | .each = .{ .once = &.{ |
| | 32581 | .{ ._, ._ss, .div, .dst0x, .src1d, ._, ._ }, |
| | 32582 | } }, |
| | 32583 | }, .{ |
| | 32584 | .required_features = .{ .avx, null, null, null }, |
| | 32585 | .src_constraints = .{ |
| | 32586 | .{ .scalar_float = .{ .of = .xword, .is = .dword } }, |
| | 32587 | .{ .scalar_float = .{ .of = .xword, .is = .dword } }, |
| | 32588 | .any, |
| | 32589 | }, |
| | 32590 | .patterns = &.{ |
| | 32591 | .{ .src = .{ .to_sse, .mem, .none } }, |
| | 32592 | .{ .src = .{ .to_sse, .to_sse, .none } }, |
| | 32593 | }, |
| | 32594 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 32595 | .each = .{ .once = &.{ |
| | 32596 | .{ ._, .v_ps, .div, .dst0x, .src0x, .src1x, ._ }, |
| | 32597 | } }, |
| | 32598 | }, .{ |
| | 32599 | .required_features = .{ .sse, null, null, null }, |
| | 32600 | .src_constraints = .{ |
| | 32601 | .{ .scalar_float = .{ .of = .xword, .is = .dword } }, |
| | 32602 | .{ .scalar_float = .{ .of = .xword, .is = .dword } }, |
| | 32603 | .any, |
| | 32604 | }, |
| | 32605 | .patterns = &.{ |
| | 32606 | .{ .src = .{ .to_mut_sse, .mem, .none } }, |
| | 32607 | .{ .src = .{ .to_mut_sse, .to_sse, .none } }, |
| | 32608 | }, |
| | 32609 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 32610 | .each = .{ .once = &.{ |
| | 32611 | .{ ._, ._ps, .div, .dst0x, .src1x, ._, ._ }, |
| | 32612 | } }, |
| | 32613 | }, .{ |
| | 32614 | .required_features = .{ .avx, null, null, null }, |
| | 32615 | .src_constraints = .{ |
| | 32616 | .{ .scalar_float = .{ .of = .yword, .is = .dword } }, |
| | 32617 | .{ .scalar_float = .{ .of = .yword, .is = .dword } }, |
| | 32618 | .any, |
| | 32619 | }, |
| | 32620 | .patterns = &.{ |
| | 32621 | .{ .src = .{ .to_sse, .mem, .none } }, |
| | 32622 | .{ .src = .{ .to_sse, .to_sse, .none } }, |
| | 32623 | }, |
| | 32624 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 32625 | .each = .{ .once = &.{ |
| | 32626 | .{ ._, .v_ps, .div, .dst0y, .src0y, .src1y, ._ }, |
| | 32627 | } }, |
| | 32628 | }, .{ |
| | 32629 | .required_features = .{ .avx, null, null, null }, |
| | 32630 | .src_constraints = .{ |
| | 32631 | .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, |
| | 32632 | .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, |
| | 32633 | .any, |
| | 32634 | }, |
| | 32635 | .patterns = &.{ |
| | 32636 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32637 | }, |
| | 32638 | .extra_temps = .{ |
| | 32639 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32640 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 32641 | .unused, |
| | 32642 | .unused, |
| | 32643 | .unused, |
| | 32644 | .unused, |
| | 32645 | .unused, |
| | 32646 | .unused, |
| | 32647 | .unused, |
| | 32648 | .unused, |
| | 32649 | .unused, |
| | 32650 | }, |
| | 32651 | .dst_temps = .{ .mem, .unused }, |
| | 32652 | .clobbers = .{ .eflags = true }, |
| | 32653 | .each = .{ .once = &.{ |
| | 32654 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| | 32655 | .{ .@"0:", .v_ps, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ }, |
| | 32656 | .{ ._, .v_ps, .div, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ }, |
| | 32657 | .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ }, |
| | 32658 | .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ }, |
| | 32659 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| | 32660 | } }, |
| | 32661 | }, .{ |
| | 32662 | .required_features = .{ .sse, null, null, null }, |
| | 32663 | .src_constraints = .{ |
| | 32664 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, |
| | 32665 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, |
| | 32666 | .any, |
| | 32667 | }, |
| | 32668 | .patterns = &.{ |
| | 32669 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32670 | }, |
| | 32671 | .extra_temps = .{ |
| | 32672 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32673 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 32674 | .unused, |
| | 32675 | .unused, |
| | 32676 | .unused, |
| | 32677 | .unused, |
| | 32678 | .unused, |
| | 32679 | .unused, |
| | 32680 | .unused, |
| | 32681 | .unused, |
| | 32682 | .unused, |
| | 32683 | }, |
| | 32684 | .dst_temps = .{ .mem, .unused }, |
| | 32685 | .clobbers = .{ .eflags = true }, |
| | 32686 | .each = .{ .once = &.{ |
| | 32687 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| | 32688 | .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, |
| | 32689 | .{ ._, ._ps, .div, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ }, |
| | 32690 | .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ }, |
| | 32691 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| | 32692 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| | 32693 | } }, |
| | 32694 | }, .{ |
| | 32695 | .required_features = .{ .avx, null, null, null }, |
| | 32696 | .src_constraints = .{ |
| | 32697 | .{ .scalar_float = .{ .of = .qword, .is = .qword } }, |
| | 32698 | .{ .scalar_float = .{ .of = .qword, .is = .qword } }, |
| | 32699 | .any, |
| | 32700 | }, |
| | 32701 | .patterns = &.{ |
| | 32702 | .{ .src = .{ .to_sse, .mem, .none } }, |
| | 32703 | .{ .src = .{ .to_sse, .to_sse, .none } }, |
| | 32704 | }, |
| | 32705 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 32706 | .each = .{ .once = &.{ |
| | 32707 | .{ ._, .v_sd, .div, .dst0x, .src0x, .src1q, ._ }, |
| | 32708 | } }, |
| | 32709 | }, .{ |
| | 32710 | .required_features = .{ .sse2, null, null, null }, |
| | 32711 | .src_constraints = .{ |
| | 32712 | .{ .scalar_float = .{ .of = .qword, .is = .qword } }, |
| | 32713 | .{ .scalar_float = .{ .of = .qword, .is = .qword } }, |
| | 32714 | .any, |
| | 32715 | }, |
| | 32716 | .patterns = &.{ |
| | 32717 | .{ .src = .{ .to_mut_sse, .mem, .none } }, |
| | 32718 | .{ .src = .{ .to_mut_sse, .to_sse, .none } }, |
| | 32719 | }, |
| | 32720 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 32721 | .each = .{ .once = &.{ |
| | 32722 | .{ ._, ._sd, .div, .dst0x, .src1q, ._, ._ }, |
| | 32723 | } }, |
| | 32724 | }, .{ |
| | 32725 | .required_features = .{ .x87, null, null, null }, |
| | 32726 | .src_constraints = .{ |
| | 32727 | .{ .scalar_float = .{ .of = .qword, .is = .qword } }, |
| | 32728 | .{ .scalar_float = .{ .of = .qword, .is = .qword } }, |
| | 32729 | .any, |
| | 32730 | }, |
| | 32731 | .patterns = &.{ |
| | 32732 | .{ .src = .{ .mem, .mem, .none } }, |
| | 32733 | }, |
| | 32734 | .extra_temps = .{ |
| | 32735 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| | 32736 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| | 32737 | .unused, |
| | 32738 | .unused, |
| | 32739 | .unused, |
| | 32740 | .unused, |
| | 32741 | .unused, |
| | 32742 | .unused, |
| | 32743 | .unused, |
| | 32744 | .unused, |
| | 32745 | .unused, |
| | 32746 | }, |
| | 32747 | .dst_temps = .{ .mem, .unused }, |
| | 32748 | .each = .{ .once = &.{ |
| | 32749 | .{ ._, .f_, .ld, .src0q, ._, ._, ._ }, |
| | 32750 | .{ ._, .f_, .div, .src1q, ._, ._, ._ }, |
| | 32751 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| | 32752 | } }, |
| | 32753 | }, .{ |
| | 32754 | .required_features = .{ .avx, null, null, null }, |
| | 32755 | .src_constraints = .{ |
| | 32756 | .{ .scalar_float = .{ .of = .xword, .is = .qword } }, |
| | 32757 | .{ .scalar_float = .{ .of = .xword, .is = .qword } }, |
| | 32758 | .any, |
| | 32759 | }, |
| | 32760 | .patterns = &.{ |
| | 32761 | .{ .src = .{ .to_sse, .mem, .none } }, |
| | 32762 | .{ .src = .{ .to_sse, .to_sse, .none } }, |
| | 32763 | }, |
| | 32764 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 32765 | .each = .{ .once = &.{ |
| | 32766 | .{ ._, .v_pd, .div, .dst0x, .src0x, .src1x, ._ }, |
| | 32767 | } }, |
| | 32768 | }, .{ |
| | 32769 | .required_features = .{ .sse2, null, null, null }, |
| | 32770 | .src_constraints = .{ |
| | 32771 | .{ .scalar_float = .{ .of = .xword, .is = .qword } }, |
| | 32772 | .{ .scalar_float = .{ .of = .xword, .is = .qword } }, |
| | 32773 | .any, |
| | 32774 | }, |
| | 32775 | .patterns = &.{ |
| | 32776 | .{ .src = .{ .to_mut_sse, .mem, .none } }, |
| | 32777 | .{ .src = .{ .to_mut_sse, .to_sse, .none } }, |
| | 32778 | }, |
| | 32779 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 32780 | .each = .{ .once = &.{ |
| | 32781 | .{ ._, ._pd, .div, .dst0x, .src1x, ._, ._ }, |
| | 32782 | } }, |
| | 32783 | }, .{ |
| | 32784 | .required_features = .{ .avx, null, null, null }, |
| | 32785 | .src_constraints = .{ |
| | 32786 | .{ .scalar_float = .{ .of = .yword, .is = .qword } }, |
| | 32787 | .{ .scalar_float = .{ .of = .yword, .is = .qword } }, |
| | 32788 | .any, |
| | 32789 | }, |
| | 32790 | .patterns = &.{ |
| | 32791 | .{ .src = .{ .to_sse, .mem, .none } }, |
| | 32792 | .{ .src = .{ .to_sse, .to_sse, .none } }, |
| | 32793 | }, |
| | 32794 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 32795 | .each = .{ .once = &.{ |
| | 32796 | .{ ._, .v_pd, .div, .dst0y, .src0y, .src1y, ._ }, |
| | 32797 | } }, |
| | 32798 | }, .{ |
| | 32799 | .required_features = .{ .avx, null, null, null }, |
| | 32800 | .src_constraints = .{ |
| | 32801 | .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, |
| | 32802 | .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, |
| | 32803 | .any, |
| | 32804 | }, |
| | 32805 | .patterns = &.{ |
| | 32806 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32807 | }, |
| | 32808 | .extra_temps = .{ |
| | 32809 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32810 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| | 32811 | .unused, |
| | 32812 | .unused, |
| | 32813 | .unused, |
| | 32814 | .unused, |
| | 32815 | .unused, |
| | 32816 | .unused, |
| | 32817 | .unused, |
| | 32818 | .unused, |
| | 32819 | .unused, |
| | 32820 | }, |
| | 32821 | .dst_temps = .{ .mem, .unused }, |
| | 32822 | .clobbers = .{ .eflags = true }, |
| | 32823 | .each = .{ .once = &.{ |
| | 32824 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| | 32825 | .{ .@"0:", .v_pd, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ }, |
| | 32826 | .{ ._, .v_pd, .div, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ }, |
| | 32827 | .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ }, |
| | 32828 | .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ }, |
| | 32829 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| | 32830 | } }, |
| | 32831 | }, .{ |
| | 32832 | .required_features = .{ .sse2, null, null, null }, |
| | 32833 | .src_constraints = .{ |
| | 32834 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, |
| | 32835 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, |
| | 32836 | .any, |
| | 32837 | }, |
| | 32838 | .patterns = &.{ |
| | 32839 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32840 | }, |
| | 32841 | .extra_temps = .{ |
| | 32842 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32843 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 32844 | .unused, |
| | 32845 | .unused, |
| | 32846 | .unused, |
| | 32847 | .unused, |
| | 32848 | .unused, |
| | 32849 | .unused, |
| | 32850 | .unused, |
| | 32851 | .unused, |
| | 32852 | .unused, |
| | 32853 | }, |
| | 32854 | .dst_temps = .{ .mem, .unused }, |
| | 32855 | .clobbers = .{ .eflags = true }, |
| | 32856 | .each = .{ .once = &.{ |
| | 32857 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| | 32858 | .{ .@"0:", ._pd, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, |
| | 32859 | .{ ._, ._pd, .div, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ }, |
| | 32860 | .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ }, |
| | 32861 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| | 32862 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| | 32863 | } }, |
| | 32864 | }, .{ |
| | 32865 | .required_features = .{ .x87, null, null, null }, |
| | 32866 | .src_constraints = .{ |
| | 32867 | .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, |
| | 32868 | .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, |
| | 32869 | .any, |
| | 32870 | }, |
| | 32871 | .patterns = &.{ |
| | 32872 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32873 | }, |
| | 32874 | .extra_temps = .{ |
| | 32875 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32876 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| | 32877 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| | 32878 | .unused, |
| | 32879 | .unused, |
| | 32880 | .unused, |
| | 32881 | .unused, |
| | 32882 | .unused, |
| | 32883 | .unused, |
| | 32884 | .unused, |
| | 32885 | .unused, |
| | 32886 | }, |
| | 32887 | .dst_temps = .{ .mem, .unused }, |
| | 32888 | .clobbers = .{ .eflags = true }, |
| | 32889 | .each = .{ .once = &.{ |
| | 32890 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| | 32891 | .{ .@"0:", .f_, .ld, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| | 32892 | .{ ._, .f_, .div, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| | 32893 | .{ ._, .f_p, .st, .memia(.dst0q, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| | 32894 | .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ }, |
| | 32895 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| | 32896 | } }, |
| | 32897 | }, .{ |
| | 32898 | .required_features = .{ .x87, null, null, null }, |
| | 32899 | .src_constraints = .{ |
| | 32900 | .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, |
| | 32901 | .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, |
| | 32902 | .any, |
| | 32903 | }, |
| | 32904 | .patterns = &.{ |
| | 32905 | .{ .src = .{ .mem, .mem, .none } }, |
| | 32906 | }, |
| | 32907 | .extra_temps = .{ |
| | 32908 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| | 32909 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| | 32910 | .unused, |
| | 32911 | .unused, |
| | 32912 | .unused, |
| | 32913 | .unused, |
| | 32914 | .unused, |
| | 32915 | .unused, |
| | 32916 | .unused, |
| | 32917 | .unused, |
| | 32918 | .unused, |
| | 32919 | }, |
| | 32920 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| | 32921 | .each = .{ .once = &.{ |
| | 32922 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| | 32923 | .{ ._, .f_, .ld, .src1t, ._, ._, ._ }, |
| | 32924 | .{ ._, .f_p, .div, ._, ._, ._, ._ }, |
| | 32925 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| | 32926 | } }, |
| | 32927 | }, .{ |
| | 32928 | .required_features = .{ .x87, null, null, null }, |
| | 32929 | .src_constraints = .{ |
| | 32930 | .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, |
| | 32931 | .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, |
| | 32932 | .any, |
| | 32933 | }, |
| | 32934 | .patterns = &.{ |
| | 32935 | .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } }, |
| | 32936 | }, |
| | 32937 | .extra_temps = .{ |
| | 32938 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| | 32939 | .unused, |
| | 32940 | .unused, |
| | 32941 | .unused, |
| | 32942 | .unused, |
| | 32943 | .unused, |
| | 32944 | .unused, |
| | 32945 | .unused, |
| | 32946 | .unused, |
| | 32947 | .unused, |
| | 32948 | .unused, |
| | 32949 | }, |
| | 32950 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| | 32951 | .each = .{ .once = &.{ |
| | 32952 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| | 32953 | .{ ._, .f_, .divr, .tmp0t, .src1t, ._, ._ }, |
| | 32954 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| | 32955 | } }, |
| | 32956 | }, .{ |
| | 32957 | .required_features = .{ .x87, null, null, null }, |
| | 32958 | .src_constraints = .{ |
| | 32959 | .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, |
| | 32960 | .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, |
| | 32961 | .any, |
| | 32962 | }, |
| | 32963 | .patterns = &.{ |
| | 32964 | .{ .src = .{ .mem, .to_x87, .none } }, |
| | 32965 | .{ .src = .{ .to_x87, .to_x87, .none } }, |
| | 32966 | }, |
| | 32967 | .extra_temps = .{ |
| | 32968 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| | 32969 | .unused, |
| | 32970 | .unused, |
| | 32971 | .unused, |
| | 32972 | .unused, |
| | 32973 | .unused, |
| | 32974 | .unused, |
| | 32975 | .unused, |
| | 32976 | .unused, |
| | 32977 | .unused, |
| | 32978 | .unused, |
| | 32979 | }, |
| | 32980 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| | 32981 | .each = .{ .once = &.{ |
| | 32982 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| | 32983 | .{ ._, .f_, .div, .tmp0t, .src1t, ._, ._ }, |
| | 32984 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| | 32985 | } }, |
| | 32986 | }, .{ |
| | 32987 | .required_features = .{ .x87, null, null, null }, |
| | 32988 | .src_constraints = .{ |
| | 32989 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, |
| | 32990 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, |
| | 32991 | .any, |
| | 32992 | }, |
| | 32993 | .patterns = &.{ |
| | 32994 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 32995 | }, |
| | 32996 | .extra_temps = .{ |
| | 32997 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 32998 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| | 32999 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| | 33000 | .unused, |
| | 33001 | .unused, |
| | 33002 | .unused, |
| | 33003 | .unused, |
| | 33004 | .unused, |
| | 33005 | .unused, |
| | 33006 | .unused, |
| | 33007 | .unused, |
| | 33008 | }, |
| | 33009 | .dst_temps = .{ .mem, .unused }, |
| | 33010 | .clobbers = .{ .eflags = true }, |
| | 33011 | .each = .{ .once = &.{ |
| | 33012 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| | 33013 | .{ .@"0:", .f_, .ld, .memia(.src0t, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| | 33014 | .{ ._, .f_, .ld, .memia(.src1t, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| | 33015 | .{ ._, .f_p, .div, ._, ._, ._, ._ }, |
| | 33016 | .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| | 33017 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| | 33018 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| | 33019 | } }, |
| | 33020 | }, .{ |
| | 33021 | .required_features = .{ .sse, null, null, null }, |
| | 33022 | .src_constraints = .{ |
| | 33023 | .{ .scalar_float = .{ .of = .xword, .is = .xword } }, |
| | 33024 | .{ .scalar_float = .{ .of = .xword, .is = .xword } }, |
| | 33025 | .any, |
| | 33026 | }, |
| | 33027 | .patterns = &.{ |
| | 33028 | .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } }, |
| | 33029 | }, |
| | 33030 | .call_frame = .{ .alignment = .@"16" }, |
| | 33031 | .extra_temps = .{ |
| | 33032 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } }, |
| | 33033 | .unused, |
| | 33034 | .unused, |
| | 33035 | .unused, |
| | 33036 | .unused, |
| | 33037 | .unused, |
| | 33038 | .unused, |
| | 33039 | .unused, |
| | 33040 | .unused, |
| | 33041 | .unused, |
| | 33042 | .unused, |
| | 33043 | }, |
| | 33044 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 33045 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 33046 | .each = .{ .once = &.{ |
| | 33047 | .{ ._, ._, .call, .tmp0d, ._, ._, ._ }, |
| | 33048 | } }, |
| | 33049 | }, .{ |
| | 33050 | .required_features = .{ .avx, null, null, null }, |
| | 33051 | .src_constraints = .{ |
| | 33052 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, |
| | 33053 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, |
| | 33054 | .any, |
| | 33055 | }, |
| | 33056 | .patterns = &.{ |
| | 33057 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 33058 | }, |
| | 33059 | .call_frame = .{ .alignment = .@"16" }, |
| | 33060 | .extra_temps = .{ |
| | 33061 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 33062 | .{ .type = .f128, .kind = .{ .reg = .xmm0 } }, |
| | 33063 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| | 33064 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } }, |
| | 33065 | .unused, |
| | 33066 | .unused, |
| | 33067 | .unused, |
| | 33068 | .unused, |
| | 33069 | .unused, |
| | 33070 | .unused, |
| | 33071 | .unused, |
| | 33072 | }, |
| | 33073 | .dst_temps = .{ .mem, .unused }, |
| | 33074 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 33075 | .each = .{ .once = &.{ |
| | 33076 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| | 33077 | .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, |
| | 33078 | .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ }, |
| | 33079 | .{ ._, ._, .call, .tmp3d, ._, ._, ._ }, |
| | 33080 | .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ }, |
| | 33081 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| | 33082 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| | 33083 | } }, |
| | 33084 | }, .{ |
| | 33085 | .required_features = .{ .sse2, null, null, null }, |
| | 33086 | .src_constraints = .{ |
| | 33087 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, |
| | 33088 | .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, |
| | 33089 | .any, |
| | 33090 | }, |
| | 33091 | .patterns = &.{ |
| | 33092 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 33093 | }, |
| | 33094 | .call_frame = .{ .alignment = .@"16" }, |
| 27878 | .extra_temps = .{ | 33095 | .extra_temps = .{ |
| 27879 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 33096 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 27880 | .{ .type = .f128, .kind = .{ .reg = .xmm0 } }, | 33097 | .{ .type = .f128, .kind = .{ .reg = .xmm0 } }, |
| ... | @@ -31476,7 +36693,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -31476,7 +36693,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 31476 | }, | 36693 | }, |
| 31477 | .extra_temps = .{ | 36694 | .extra_temps = .{ |
| 31478 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 36695 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 31479 | .{ .type = .i8, .kind = .{ .reg = .ah } }, | 36696 | .{ .type = .i16, .kind = .{ .reg = .ax } }, |
| 31480 | .unused, | 36697 | .unused, |
| 31481 | .unused, | 36698 | .unused, |
| 31482 | .unused, | 36699 | .unused, |
| ... | @@ -31493,7 +36710,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -31493,7 +36710,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 31493 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 36710 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 31494 | .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ }, | 36711 | .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ }, |
| 31495 | .{ ._, .i_, .div, .memia(.src1b, .tmp0, .add_unaligned_size), ._, ._, ._ }, | 36712 | .{ ._, .i_, .div, .memia(.src1b, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 31496 | .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ }, | 36713 | .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1h, ._, ._ }, |
| 31497 | .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ }, | 36714 | .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ }, |
| 31498 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | 36715 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 31499 | } }, | 36716 | } }, |
| ... | @@ -31508,7 +36725,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -31508,7 +36725,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 31508 | }, | 36725 | }, |
| 31509 | .extra_temps = .{ | 36726 | .extra_temps = .{ |
| 31510 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 36727 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 31511 | .{ .type = .i8, .kind = .{ .reg = .ah } }, | 36728 | .{ .type = .i16, .kind = .{ .reg = .ax } }, |
| 31512 | .unused, | 36729 | .unused, |
| 31513 | .unused, | 36730 | .unused, |
| 31514 | .unused, | 36731 | .unused, |
| ... | @@ -31525,7 +36742,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -31525,7 +36742,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 31525 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 36742 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 31526 | .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ }, | 36743 | .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ }, |
| 31527 | .{ ._, .i_, .div, .memia(.src1b, .tmp0, .add_unaligned_size), ._, ._, ._ }, | 36744 | .{ ._, .i_, .div, .memia(.src1b, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 31528 | .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ }, | 36745 | .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1h, ._, ._ }, |
| 31529 | .{ ._, ._c, .in, .tmp0p, ._, ._, ._ }, | 36746 | .{ ._, ._c, .in, .tmp0p, ._, ._, ._ }, |
| 31530 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, | 36747 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| 31531 | } }, | 36748 | } }, |
| ... | @@ -31541,7 +36758,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -31541,7 +36758,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 31541 | }, | 36758 | }, |
| 31542 | .extra_temps = .{ | 36759 | .extra_temps = .{ |
| 31543 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 36760 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 31544 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 36761 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 31545 | .unused, | 36762 | .unused, |
| 31546 | .unused, | 36763 | .unused, |
| 31547 | .unused, | 36764 | .unused, |
| ... | @@ -31558,7 +36775,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -31558,7 +36775,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 31558 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 36775 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 31559 | .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ }, | 36776 | .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ }, |
| 31560 | .{ ._, ._, .div, .memia(.src1b, .tmp0, .add_unaligned_size), ._, ._, ._ }, | 36777 | .{ ._, ._, .div, .memia(.src1b, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 31561 | .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ }, | 36778 | .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1h, ._, ._ }, |
| 31562 | .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ }, | 36779 | .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ }, |
| 31563 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, | 36780 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 31564 | } }, | 36781 | } }, |
| ... | @@ -31573,7 +36790,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -31573,7 +36790,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 31573 | }, | 36790 | }, |
| 31574 | .extra_temps = .{ | 36791 | .extra_temps = .{ |
| 31575 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 36792 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 31576 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 36793 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 31577 | .unused, | 36794 | .unused, |
| 31578 | .unused, | 36795 | .unused, |
| 31579 | .unused, | 36796 | .unused, |
| ... | @@ -31590,7 +36807,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -31590,7 +36807,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 31590 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, | 36807 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 31591 | .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ }, | 36808 | .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ }, |
| 31592 | .{ ._, ._, .div, .memia(.src1b, .tmp0, .add_unaligned_size), ._, ._, ._ }, | 36809 | .{ ._, ._, .div, .memia(.src1b, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 31593 | .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ }, | 36810 | .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1h, ._, ._ }, |
| 31594 | .{ ._, ._c, .in, .tmp0p, ._, ._, ._ }, | 36811 | .{ ._, ._c, .in, .tmp0p, ._, ._, ._ }, |
| 31595 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, | 36812 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| 31596 | } }, | 36813 | } }, |
| ... | @@ -38951,7 +44168,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -38951,7 +44168,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 38951 | }, | 44168 | }, |
| 38952 | .extra_temps = .{ | 44169 | .extra_temps = .{ |
| 38953 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 44170 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 38954 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 44171 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 38955 | .unused, | 44172 | .unused, |
| 38956 | .unused, | 44173 | .unused, |
| 38957 | .unused, | 44174 | .unused, |
| ... | @@ -38994,7 +44211,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -38994,7 +44211,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 38994 | }, | 44211 | }, |
| 38995 | .extra_temps = .{ | 44212 | .extra_temps = .{ |
| 38996 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 44213 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 38997 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 44214 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 38998 | .unused, | 44215 | .unused, |
| 38999 | .unused, | 44216 | .unused, |
| 39000 | .unused, | 44217 | .unused, |
| ... | @@ -39011,13 +44228,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -39011,13 +44228,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 39011 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, | 44228 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| 39012 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, | 44229 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, |
| 39013 | .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ }, | 44230 | .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ }, |
| 39014 | .{ ._, ._, .@"test", .tmp1b, .si(0b1_000_100), ._, ._ }, | 44231 | .{ ._, ._, .@"test", .tmp1h, .si(0b1_000_100), ._, ._ }, |
| 39015 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, | 44232 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| 39016 | .{ ._, .f_, .xch, .src1t, ._, ._, ._ }, | 44233 | .{ ._, .f_, .xch, .src1t, ._, ._, ._ }, |
| 39017 | .{ ._, .f_, .ucom, .src1t, ._, ._, ._ }, | 44234 | .{ ._, .f_, .ucom, .src1t, ._, ._, ._ }, |
| 39018 | .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ }, | 44235 | .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ }, |
| 39019 | .{ ._, .f_, .xch, .src1t, ._, ._, ._ }, | 44236 | .{ ._, .f_, .xch, .src1t, ._, ._, ._ }, |
| 39020 | .{ ._, ._, .@"test", .tmp1b, .si(0b0_000_001), ._, ._ }, | 44237 | .{ ._, ._, .@"test", .tmp1h, .si(0b0_000_001), ._, ._ }, |
| 39021 | .{ ._, ._nz, .j, .@"1f", ._, ._, ._ }, | 44238 | .{ ._, ._nz, .j, .@"1f", ._, ._, ._ }, |
| 39022 | .{ .@"0:", .f_p, .st, .tmp0t, ._, ._, ._ }, | 44239 | .{ .@"0:", .f_p, .st, .tmp0t, ._, ._, ._ }, |
| 39023 | .{ ._, .f_, .ld, .src1t, ._, ._, ._ }, | 44240 | .{ ._, .f_, .ld, .src1t, ._, ._, ._ }, |
| ... | @@ -39077,7 +44294,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -39077,7 +44294,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 39077 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 44294 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 39078 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 44295 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 39079 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 44296 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 39080 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 44297 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 39081 | .unused, | 44298 | .unused, |
| 39082 | .unused, | 44299 | .unused, |
| 39083 | .unused, | 44300 | .unused, |
| ... | @@ -39123,7 +44340,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -39123,7 +44340,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 39123 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 44340 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 39124 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 44341 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 39125 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 44342 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 39126 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 44343 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 39127 | .unused, | 44344 | .unused, |
| 39128 | .unused, | 44345 | .unused, |
| 39129 | .unused, | 44346 | .unused, |
| ... | @@ -39140,13 +44357,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -39140,13 +44357,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 39140 | .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ }, | 44357 | .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ }, |
| 39141 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, | 44358 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, |
| 39142 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, | 44359 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 39143 | .{ ._, ._, .@"test", .tmp3b, .si(0b1_000_100), ._, ._ }, | 44360 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| 39144 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, | 44361 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 39145 | .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ }, | 44362 | .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ }, |
| 39146 | .{ ._, .f_, .ucom, .tmp2t, ._, ._, ._ }, | 44363 | .{ ._, .f_, .ucom, .tmp2t, ._, ._, ._ }, |
| 39147 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, | 44364 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 39148 | .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ }, | 44365 | .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ }, |
| 39149 | .{ ._, ._, .@"test", .tmp3b, .si(0b0_000_001), ._, ._ }, | 44366 | .{ ._, ._, .@"test", .tmp3h, .si(0b0_000_001), ._, ._ }, |
| 39150 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, | 44367 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| 39151 | .{ .@"1:", .f_p, .st, .tmp1t, ._, ._, ._ }, | 44368 | .{ .@"1:", .f_p, .st, .tmp1t, ._, ._, ._ }, |
| 39152 | .{ ._, .f_, .ld, .tmp2t, ._, ._, ._ }, | 44369 | .{ ._, .f_, .ld, .tmp2t, ._, ._, ._ }, |
| ... | @@ -43108,7 +48325,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -43108,7 +48325,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 43108 | }, | 48325 | }, |
| 43109 | .extra_temps = .{ | 48326 | .extra_temps = .{ |
| 43110 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 48327 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 43111 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 48328 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 43112 | .unused, | 48329 | .unused, |
| 43113 | .unused, | 48330 | .unused, |
| 43114 | .unused, | 48331 | .unused, |
| ... | @@ -43149,7 +48366,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -43149,7 +48366,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 43149 | }, | 48366 | }, |
| 43150 | .extra_temps = .{ | 48367 | .extra_temps = .{ |
| 43151 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 48368 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 43152 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 48369 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 43153 | .unused, | 48370 | .unused, |
| 43154 | .unused, | 48371 | .unused, |
| 43155 | .unused, | 48372 | .unused, |
| ... | @@ -43166,11 +48383,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -43166,11 +48383,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 43166 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, | 48383 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| 43167 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, | 48384 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, |
| 43168 | .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ }, | 48385 | .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ }, |
| 43169 | .{ ._, ._, .@"test", .tmp1b, .si(0b1_000_100), ._, ._ }, | 48386 | .{ ._, ._, .@"test", .tmp1h, .si(0b1_000_100), ._, ._ }, |
| 43170 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, | 48387 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| 43171 | .{ ._, .f_, .ucom, .src1t, ._, ._, ._ }, | 48388 | .{ ._, .f_, .ucom, .src1t, ._, ._, ._ }, |
| 43172 | .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ }, | 48389 | .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ }, |
| 43173 | .{ ._, ._, .@"test", .tmp1b, .si(0b0_000_001), ._, ._ }, | 48390 | .{ ._, ._, .@"test", .tmp1h, .si(0b0_000_001), ._, ._ }, |
| 43174 | .{ ._, ._nz, .j, .@"1f", ._, ._, ._ }, | 48391 | .{ ._, ._nz, .j, .@"1f", ._, ._, ._ }, |
| 43175 | .{ .@"0:", .f_p, .st, .tmp0t, ._, ._, ._ }, | 48392 | .{ .@"0:", .f_p, .st, .tmp0t, ._, ._, ._ }, |
| 43176 | .{ ._, .f_, .ld, .src1t, ._, ._, ._ }, | 48393 | .{ ._, .f_, .ld, .src1t, ._, ._, ._ }, |
| ... | @@ -43228,7 +48445,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -43228,7 +48445,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 43228 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 48445 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 43229 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 48446 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 43230 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 48447 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 43231 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 48448 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 43232 | .unused, | 48449 | .unused, |
| 43233 | .unused, | 48450 | .unused, |
| 43234 | .unused, | 48451 | .unused, |
| ... | @@ -43272,7 +48489,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -43272,7 +48489,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 43272 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | 48489 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 43273 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 48490 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 43274 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 48491 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 43275 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 48492 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 43276 | .unused, | 48493 | .unused, |
| 43277 | .unused, | 48494 | .unused, |
| 43278 | .unused, | 48495 | .unused, |
| ... | @@ -43289,11 +48506,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -43289,11 +48506,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 43289 | .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ }, | 48506 | .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ }, |
| 43290 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, | 48507 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, |
| 43291 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, | 48508 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 43292 | .{ ._, ._, .@"test", .tmp3b, .si(0b1_000_100), ._, ._ }, | 48509 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| 43293 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, | 48510 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 43294 | .{ ._, .f_, .ucom, .tmp2t, ._, ._, ._ }, | 48511 | .{ ._, .f_, .ucom, .tmp2t, ._, ._, ._ }, |
| 43295 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, | 48512 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 43296 | .{ ._, ._, .@"test", .tmp3b, .si(0b0_000_001), ._, ._ }, | 48513 | .{ ._, ._, .@"test", .tmp3h, .si(0b0_000_001), ._, ._ }, |
| 43297 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, | 48514 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| 43298 | .{ .@"1:", .f_p, .st, .tmp1t, ._, ._, ._ }, | 48515 | .{ .@"1:", .f_p, .st, .tmp1t, ._, ._, ._ }, |
| 43299 | .{ ._, .f_, .ld, .tmp2t, ._, ._, ._ }, | 48516 | .{ ._, .f_, .ld, .tmp2t, ._, ._, ._ }, |
| ... | @@ -43897,8 +49114,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -43897,8 +49114,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 43897 | }, .{ | 49114 | }, .{ |
| 43898 | .required_features = .{ .@"64bit", null, null, null }, | 49115 | .required_features = .{ .@"64bit", null, null, null }, |
| 43899 | .src_constraints = .{ | 49116 | .src_constraints = .{ |
| 43900 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 49117 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 43901 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 49118 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 43902 | .any, | 49119 | .any, |
| 43903 | }, | 49120 | }, |
| 43904 | .patterns = &.{ | 49121 | .patterns = &.{ |
| ... | @@ -43937,8 +49154,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -43937,8 +49154,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 43937 | }, .{ | 49154 | }, .{ |
| 43938 | .required_features = .{ .@"64bit", null, null, null }, | 49155 | .required_features = .{ .@"64bit", null, null, null }, |
| 43939 | .src_constraints = .{ | 49156 | .src_constraints = .{ |
| 43940 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 49157 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 43941 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 49158 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 43942 | .any, | 49159 | .any, |
| 43943 | }, | 49160 | }, |
| 43944 | .patterns = &.{ | 49161 | .patterns = &.{ |
| ... | @@ -43972,8 +49189,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -43972,8 +49189,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 43972 | }, .{ | 49189 | }, .{ |
| 43973 | .required_features = .{ .@"64bit", null, null, null }, | 49190 | .required_features = .{ .@"64bit", null, null, null }, |
| 43974 | .src_constraints = .{ | 49191 | .src_constraints = .{ |
| 43975 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 49192 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 43976 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 49193 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 43977 | .any, | 49194 | .any, |
| 43978 | }, | 49195 | }, |
| 43979 | .patterns = &.{ | 49196 | .patterns = &.{ |
| ... | @@ -44009,8 +49226,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -44009,8 +49226,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 44009 | }, .{ | 49226 | }, .{ |
| 44010 | .required_features = .{ .@"64bit", null, null, null }, | 49227 | .required_features = .{ .@"64bit", null, null, null }, |
| 44011 | .src_constraints = .{ | 49228 | .src_constraints = .{ |
| 44012 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 49229 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 44013 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 49230 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 44014 | .any, | 49231 | .any, |
| 44015 | }, | 49232 | }, |
| 44016 | .patterns = &.{ | 49233 | .patterns = &.{ |
| ... | @@ -44803,8 +50020,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -44803,8 +50020,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 44803 | }, .{ | 50020 | }, .{ |
| 44804 | .required_features = .{ .@"64bit", null, null, null }, | 50021 | .required_features = .{ .@"64bit", null, null, null }, |
| 44805 | .src_constraints = .{ | 50022 | .src_constraints = .{ |
| 44806 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 50023 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 44807 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 50024 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 44808 | .any, | 50025 | .any, |
| 44809 | }, | 50026 | }, |
| 44810 | .patterns = &.{ | 50027 | .patterns = &.{ |
| ... | @@ -44843,8 +50060,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -44843,8 +50060,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 44843 | }, .{ | 50060 | }, .{ |
| 44844 | .required_features = .{ .@"64bit", null, null, null }, | 50061 | .required_features = .{ .@"64bit", null, null, null }, |
| 44845 | .src_constraints = .{ | 50062 | .src_constraints = .{ |
| 44846 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 50063 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 44847 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 50064 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 44848 | .any, | 50065 | .any, |
| 44849 | }, | 50066 | }, |
| 44850 | .patterns = &.{ | 50067 | .patterns = &.{ |
| ... | @@ -44878,8 +50095,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -44878,8 +50095,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 44878 | }, .{ | 50095 | }, .{ |
| 44879 | .required_features = .{ .@"64bit", null, null, null }, | 50096 | .required_features = .{ .@"64bit", null, null, null }, |
| 44880 | .src_constraints = .{ | 50097 | .src_constraints = .{ |
| 44881 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 50098 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 44882 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 50099 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 44883 | .any, | 50100 | .any, |
| 44884 | }, | 50101 | }, |
| 44885 | .patterns = &.{ | 50102 | .patterns = &.{ |
| ... | @@ -44915,8 +50132,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -44915,8 +50132,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 44915 | }, .{ | 50132 | }, .{ |
| 44916 | .required_features = .{ .@"64bit", null, null, null }, | 50133 | .required_features = .{ .@"64bit", null, null, null }, |
| 44917 | .src_constraints = .{ | 50134 | .src_constraints = .{ |
| 44918 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 50135 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 44919 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 50136 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 44920 | .any, | 50137 | .any, |
| 44921 | }, | 50138 | }, |
| 44922 | .patterns = &.{ | 50139 | .patterns = &.{ |
| ... | @@ -45271,7 +50488,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -45271,7 +50488,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 45271 | .{ .src = .{ .{ .to_reg = .al }, .to_gpr, .none } }, | 50488 | .{ .src = .{ .{ .to_reg = .al }, .to_gpr, .none } }, |
| 45272 | }, | 50489 | }, |
| 45273 | .extra_temps = .{ | 50490 | .extra_temps = .{ |
| 45274 | .{ .type = .i16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, | 50491 | .{ .type = .u16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .general_purpose } } }, |
| 45275 | .unused, | 50492 | .unused, |
| 45276 | .unused, | 50493 | .unused, |
| 45277 | .unused, | 50494 | .unused, |
| ... | @@ -45401,7 +50618,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -45401,7 +50618,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 45401 | .{ ._, ._, .mul, .src1w, ._, ._, ._ }, | 50618 | .{ ._, ._, .mul, .src1w, ._, ._, ._ }, |
| 45402 | .{ ._, ._, .mov, .tmp1d, .dst0d, ._, ._ }, | 50619 | .{ ._, ._, .mov, .tmp1d, .dst0d, ._, ._ }, |
| 45403 | .{ ._, ._, .@"and", .dst0w, .ua(.src0, .add_umax), ._, ._ }, | 50620 | .{ ._, ._, .@"and", .dst0w, .ua(.src0, .add_umax), ._, ._ }, |
| 45404 | .{ ._, ._, .@"and", .tmp1w, .uia(std.math.maxInt(u16), .src0, .sub_umax), ._, ._ }, | 50621 | .{ ._, ._, .@"and", .tmp1w, .sa(.src0, .add_2_smin), ._, ._ }, |
| 45405 | .{ ._, ._, .@"or", .tmp1w, .tmp0w, ._, ._ }, | 50622 | .{ ._, ._, .@"or", .tmp1w, .tmp0w, ._, ._ }, |
| 45406 | } }, | 50623 | } }, |
| 45407 | }, .{ | 50624 | }, .{ |
| ... | @@ -45692,8 +50909,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -45692,8 +50909,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 45692 | }, .{ | 50909 | }, .{ |
| 45693 | .required_features = .{ .@"64bit", .cmov, .slow_incdec, null }, | 50910 | .required_features = .{ .@"64bit", .cmov, .slow_incdec, null }, |
| 45694 | .src_constraints = .{ | 50911 | .src_constraints = .{ |
| 45695 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 50912 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 45696 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 50913 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 45697 | .any, | 50914 | .any, |
| 45698 | }, | 50915 | }, |
| 45699 | .patterns = &.{ | 50916 | .patterns = &.{ |
| ... | @@ -45803,8 +51020,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -45803,8 +51020,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 45803 | }, .{ | 51020 | }, .{ |
| 45804 | .required_features = .{ .@"64bit", .cmov, null, null }, | 51021 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| 45805 | .src_constraints = .{ | 51022 | .src_constraints = .{ |
| 45806 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 51023 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 45807 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 51024 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 45808 | .any, | 51025 | .any, |
| 45809 | }, | 51026 | }, |
| 45810 | .patterns = &.{ | 51027 | .patterns = &.{ |
| ... | @@ -45914,8 +51131,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -45914,8 +51131,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 45914 | }, .{ | 51131 | }, .{ |
| 45915 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, | 51132 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| 45916 | .src_constraints = .{ | 51133 | .src_constraints = .{ |
| 45917 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 51134 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 45918 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 51135 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 45919 | .any, | 51136 | .any, |
| 45920 | }, | 51137 | }, |
| 45921 | .patterns = &.{ | 51138 | .patterns = &.{ |
| ... | @@ -46025,353 +51242,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -46025,353 +51242,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 46025 | }, .{ | 51242 | }, .{ |
| 46026 | .required_features = .{ .@"64bit", null, null, null }, | 51243 | .required_features = .{ .@"64bit", null, null, null }, |
| 46027 | .src_constraints = .{ | 51244 | .src_constraints = .{ |
| 46028 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 51245 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 46029 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 51246 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 46030 | .any, | | |
| 46031 | }, | | |
| 46032 | .patterns = &.{ | | |
| 46033 | .{ .src = .{ .to_mem, .to_mem, .none } }, | | |
| 46034 | }, | | |
| 46035 | .extra_temps = .{ | | |
| 46036 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | | |
| 46037 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46038 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, | | |
| 46039 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46040 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46041 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | | |
| 46042 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46043 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, | | |
| 46044 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46045 | .{ .type = .u64, .kind = .{ .reg = .rax } }, | | |
| 46046 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, | | |
| 46047 | }, | | |
| 46048 | .dst_temps = .{ .mem, .{ .cc = .nz } }, | | |
| 46049 | .clobbers = .{ .eflags = true }, | | |
| 46050 | .each = .{ .once = &.{ | | |
| 46051 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, | | |
| 46052 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, | | |
| 46053 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, | | |
| 46054 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, | | |
| 46055 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, | | |
| 46056 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, | | |
| 46057 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, | | |
| 46058 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, | | |
| 46059 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, | | |
| 46060 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | | |
| 46061 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, | | |
| 46062 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, | | |
| 46063 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, | | |
| 46064 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, | | |
| 46065 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, | | |
| 46066 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_src0_size), ._, ._ }, | | |
| 46067 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, | | |
| 46068 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, | | |
| 46069 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, | | |
| 46070 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, | | |
| 46071 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, | | |
| 46072 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, | | |
| 46073 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, | | |
| 46074 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_src0_size), .tmp9q, ._, ._ }, | | |
| 46075 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, | | |
| 46076 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, | | |
| 46077 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, | | |
| 46078 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, | | |
| 46079 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, | | |
| 46080 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, | | |
| 46081 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, | | |
| 46082 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, | | |
| 46083 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, | | |
| 46084 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, | | |
| 46085 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, | | |
| 46086 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, | | |
| 46087 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, | | |
| 46088 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, | | |
| 46089 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, | | |
| 46090 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_src0_size, -8), ._, ._ }, | | |
| 46091 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, | | |
| 46092 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | | |
| 46093 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, | | |
| 46094 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, | | |
| 46095 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, | | |
| 46096 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, | | |
| 46097 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, | | |
| 46098 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, | | |
| 46099 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, | | |
| 46100 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, | | |
| 46101 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, | | |
| 46102 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), ._, ._ }, | | |
| 46103 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, | | |
| 46104 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), .tmp8q, ._, ._ }, | | |
| 46105 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, | | |
| 46106 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, | | |
| 46107 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, | | |
| 46108 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, | | |
| 46109 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, | | |
| 46110 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, | | |
| 46111 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, | | |
| 46112 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, | | |
| 46113 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, | | |
| 46114 | .{ ._, ._c, .st, ._, ._, ._, ._ }, | | |
| 46115 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), ._, ._ }, | | |
| 46116 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, | | |
| 46117 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, | | |
| 46118 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, | | |
| 46119 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, | | |
| 46120 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), .tmp8q, ._, ._ }, | | |
| 46121 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, | | |
| 46122 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, | | |
| 46123 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, | | |
| 46124 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, | | |
| 46125 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, | | |
| 46126 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, | | |
| 46127 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | | |
| 46128 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, | | |
| 46129 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, | | |
| 46130 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, | | |
| 46131 | .{ ._, ._, .mov, .memad(.dst0q, .add_src0_size, -8), .tmp8q, ._, ._ }, | | |
| 46132 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, | | |
| 46133 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, | | |
| 46134 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, | | |
| 46135 | } }, | | |
| 46136 | }, .{ | | |
| 46137 | .required_features = .{ .@"64bit", .cmov, .slow_incdec, null }, | | |
| 46138 | .src_constraints = .{ | | |
| 46139 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | | |
| 46140 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | | |
| 46141 | .any, | | |
| 46142 | }, | | |
| 46143 | .patterns = &.{ | | |
| 46144 | .{ .src = .{ .to_mem, .to_mem, .none } }, | | |
| 46145 | }, | | |
| 46146 | .extra_temps = .{ | | |
| 46147 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | | |
| 46148 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46149 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, | | |
| 46150 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46151 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46152 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | | |
| 46153 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46154 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, | | |
| 46155 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46156 | .{ .type = .u64, .kind = .{ .reg = .rax } }, | | |
| 46157 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, | | |
| 46158 | }, | | |
| 46159 | .dst_temps = .{ .mem, .{ .cc = .nz } }, | | |
| 46160 | .clobbers = .{ .eflags = true }, | | |
| 46161 | .each = .{ .once = &.{ | | |
| 46162 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, | | |
| 46163 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, | | |
| 46164 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, | | |
| 46165 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, | | |
| 46166 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, | | |
| 46167 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, | | |
| 46168 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, | | |
| 46169 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, | | |
| 46170 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, | | |
| 46171 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | | |
| 46172 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, | | |
| 46173 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, | | |
| 46174 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, | | |
| 46175 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, | | |
| 46176 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, | | |
| 46177 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_src0_size), ._, ._ }, | | |
| 46178 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, | | |
| 46179 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, | | |
| 46180 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, | | |
| 46181 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, | | |
| 46182 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, | | |
| 46183 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, | | |
| 46184 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, | | |
| 46185 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_src0_size), .tmp9q, ._, ._ }, | | |
| 46186 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, | | |
| 46187 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, | | |
| 46188 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, | | |
| 46189 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, | | |
| 46190 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, | | |
| 46191 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, | | |
| 46192 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, | | |
| 46193 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, | | |
| 46194 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, | | |
| 46195 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, | | |
| 46196 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, | | |
| 46197 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, | | |
| 46198 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, | | |
| 46199 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, | | |
| 46200 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, | | |
| 46201 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_src0_size, -8), ._, ._ }, | | |
| 46202 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, | | |
| 46203 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | | |
| 46204 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, | | |
| 46205 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, | | |
| 46206 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, | | |
| 46207 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, | | |
| 46208 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, | | |
| 46209 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, | | |
| 46210 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, | | |
| 46211 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, | | |
| 46212 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, | | |
| 46213 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), ._, ._ }, | | |
| 46214 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, | | |
| 46215 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), .tmp8q, ._, ._ }, | | |
| 46216 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, | | |
| 46217 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, | | |
| 46218 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, | | |
| 46219 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, | | |
| 46220 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, | | |
| 46221 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, | | |
| 46222 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, | | |
| 46223 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, | | |
| 46224 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, | | |
| 46225 | .{ ._, ._c, .st, ._, ._, ._, ._ }, | | |
| 46226 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), ._, ._ }, | | |
| 46227 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, | | |
| 46228 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, | | |
| 46229 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, | | |
| 46230 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, | | |
| 46231 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), .tmp8q, ._, ._ }, | | |
| 46232 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, | | |
| 46233 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, | | |
| 46234 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, | | |
| 46235 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, | | |
| 46236 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, | | |
| 46237 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, | | |
| 46238 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | | |
| 46239 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, | | |
| 46240 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, | | |
| 46241 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, | | |
| 46242 | .{ ._, ._, .mov, .memad(.dst0q, .add_src0_size, -8), .tmp8q, ._, ._ }, | | |
| 46243 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, | | |
| 46244 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, | | |
| 46245 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, | | |
| 46246 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_src0_size, -16), ._, ._ }, | | |
| 46247 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, | | |
| 46248 | .{ ._, ._, .mov, .tmp1q, .tmp0q, ._, ._ }, | | |
| 46249 | .{ ._, ._, .xor, .tmp1q, .memad(.dst0q, .add_src0_size, -8), ._, ._ }, | | |
| 46250 | .{ ._, ._, .mov, .memad(.dst0q, .add_src0_size, -8), .tmp0q, ._, ._ }, | | |
| 46251 | .{ ._, ._, .@"or", .tmp4q, .tmp1q, ._, ._ }, | | |
| 46252 | } }, | | |
| 46253 | }, .{ | | |
| 46254 | .required_features = .{ .@"64bit", .cmov, null, null }, | | |
| 46255 | .src_constraints = .{ | | |
| 46256 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | | |
| 46257 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | | |
| 46258 | .any, | | |
| 46259 | }, | | |
| 46260 | .patterns = &.{ | | |
| 46261 | .{ .src = .{ .to_mem, .to_mem, .none } }, | | |
| 46262 | }, | | |
| 46263 | .extra_temps = .{ | | |
| 46264 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | | |
| 46265 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46266 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, | | |
| 46267 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46268 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46269 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, | | |
| 46270 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46271 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, | | |
| 46272 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, | | |
| 46273 | .{ .type = .u64, .kind = .{ .reg = .rax } }, | | |
| 46274 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, | | |
| 46275 | }, | | |
| 46276 | .dst_temps = .{ .mem, .{ .cc = .nz } }, | | |
| 46277 | .clobbers = .{ .eflags = true }, | | |
| 46278 | .each = .{ .once = &.{ | | |
| 46279 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, | | |
| 46280 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, | | |
| 46281 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, | | |
| 46282 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, | | |
| 46283 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, | | |
| 46284 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, | | |
| 46285 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, | | |
| 46286 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, | | |
| 46287 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, | | |
| 46288 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | | |
| 46289 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, | | |
| 46290 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, | | |
| 46291 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, | | |
| 46292 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, | | |
| 46293 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, | | |
| 46294 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_src0_size), ._, ._ }, | | |
| 46295 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, | | |
| 46296 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, | | |
| 46297 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, | | |
| 46298 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, | | |
| 46299 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, | | |
| 46300 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, | | |
| 46301 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, | | |
| 46302 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_src0_size), .tmp9q, ._, ._ }, | | |
| 46303 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, | | |
| 46304 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, | | |
| 46305 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, | | |
| 46306 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, | | |
| 46307 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, | | |
| 46308 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, | | |
| 46309 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, | | |
| 46310 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, | | |
| 46311 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, | | |
| 46312 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, | | |
| 46313 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, | | |
| 46314 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, | | |
| 46315 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, | | |
| 46316 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, | | |
| 46317 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, | | |
| 46318 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_src0_size, -8), ._, ._ }, | | |
| 46319 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, | | |
| 46320 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | | |
| 46321 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, | | |
| 46322 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, | | |
| 46323 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, | | |
| 46324 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, | | |
| 46325 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, | | |
| 46326 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, | | |
| 46327 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, | | |
| 46328 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, | | |
| 46329 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, | | |
| 46330 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), ._, ._ }, | | |
| 46331 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, | | |
| 46332 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), .tmp8q, ._, ._ }, | | |
| 46333 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, | | |
| 46334 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, | | |
| 46335 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, | | |
| 46336 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, | | |
| 46337 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, | | |
| 46338 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, | | |
| 46339 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, | | |
| 46340 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, | | |
| 46341 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, | | |
| 46342 | .{ ._, ._c, .st, ._, ._, ._, ._ }, | | |
| 46343 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), ._, ._ }, | | |
| 46344 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, | | |
| 46345 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, | | |
| 46346 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, | | |
| 46347 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, | | |
| 46348 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), .tmp8q, ._, ._ }, | | |
| 46349 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, | | |
| 46350 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, | | |
| 46351 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, | | |
| 46352 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, | | |
| 46353 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, | | |
| 46354 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, | | |
| 46355 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | | |
| 46356 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, | | |
| 46357 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, | | |
| 46358 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, | | |
| 46359 | .{ ._, ._, .mov, .memad(.dst0q, .add_src0_size, -8), .tmp8q, ._, ._ }, | | |
| 46360 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, | | |
| 46361 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, | | |
| 46362 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, | | |
| 46363 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_src0_size, -16), ._, ._ }, | | |
| 46364 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, | | |
| 46365 | .{ ._, ._, .mov, .tmp1q, .tmp0q, ._, ._ }, | | |
| 46366 | .{ ._, ._, .xor, .tmp1q, .memad(.dst0q, .add_src0_size, -8), ._, ._ }, | | |
| 46367 | .{ ._, ._, .mov, .memad(.dst0q, .add_src0_size, -8), .tmp0q, ._, ._ }, | | |
| 46368 | .{ ._, ._, .@"or", .tmp4q, .tmp1q, ._, ._ }, | | |
| 46369 | } }, | | |
| 46370 | }, .{ | | |
| 46371 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, | | |
| 46372 | .src_constraints = .{ | | |
| 46373 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | | |
| 46374 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | | |
| 46375 | .any, | 51247 | .any, |
| 46376 | }, | 51248 | }, |
| 46377 | .patterns = &.{ | 51249 | .patterns = &.{ |
| ... | @@ -46429,6 +51301,345 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -46429,6 +51301,345 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 46429 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, | 51301 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| 46430 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, | 51302 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| 46431 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, | 51303 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 51304 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 51305 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 51306 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 51307 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_src0_size, -8), ._, ._ }, |
| | 51308 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 51309 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 51310 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 51311 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 51312 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 51313 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 51314 | .{ ._, ._z, .j, .@"0f", ._, ._, ._ }, |
| | 51315 | .{ ._, ._, .lea, .tmp2q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 51316 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 51317 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 51318 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 51319 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), ._, ._ }, |
| | 51320 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 51321 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), .tmp8q, ._, ._ }, |
| | 51322 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 51323 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 51324 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 51325 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 51326 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 51327 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 51328 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 51329 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 51330 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 51331 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 51332 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), ._, ._ }, |
| | 51333 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 51334 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 51335 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 51336 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 51337 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), .tmp8q, ._, ._ }, |
| | 51338 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 51339 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 51340 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 51341 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 51342 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 51343 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 51344 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 51345 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 51346 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 51347 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 51348 | .{ ._, ._, .mov, .memad(.dst0q, .add_src0_size, -8), .tmp8q, ._, ._ }, |
| | 51349 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 51350 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 51351 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 51352 | } }, |
| | 51353 | }, .{ |
| | 51354 | .required_features = .{ .@"64bit", .cmov, .slow_incdec, null }, |
| | 51355 | .src_constraints = .{ |
| | 51356 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 51357 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 51358 | .any, |
| | 51359 | }, |
| | 51360 | .patterns = &.{ |
| | 51361 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 51362 | }, |
| | 51363 | .extra_temps = .{ |
| | 51364 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 51365 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51366 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| | 51367 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51368 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51369 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 51370 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51371 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 51372 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51373 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 51374 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 51375 | }, |
| | 51376 | .dst_temps = .{ .mem, .{ .cc = .nz } }, |
| | 51377 | .clobbers = .{ .eflags = true }, |
| | 51378 | .each = .{ .once = &.{ |
| | 51379 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 51380 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 51381 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 51382 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 51383 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 51384 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 51385 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 51386 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 51387 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 51388 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 51389 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 51390 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 51391 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 51392 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_src0_size), ._, ._ }, |
| | 51393 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 51394 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 51395 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 51396 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 51397 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 51398 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 51399 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 51400 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_src0_size), .tmp9q, ._, ._ }, |
| | 51401 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 51402 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 51403 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 51404 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 51405 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 51406 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 51407 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 51408 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 51409 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 51410 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 51411 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 51412 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 51413 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| | 51414 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| | 51415 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 51416 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_src0_size, -8), ._, ._ }, |
| | 51417 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 51418 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 51419 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 51420 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 51421 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 51422 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 51423 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 51424 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 51425 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 51426 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 51427 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 51428 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), ._, ._ }, |
| | 51429 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 51430 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), .tmp8q, ._, ._ }, |
| | 51431 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 51432 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 51433 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 51434 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 51435 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 51436 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 51437 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 51438 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 51439 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 51440 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 51441 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), ._, ._ }, |
| | 51442 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 51443 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 51444 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 51445 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 51446 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), .tmp8q, ._, ._ }, |
| | 51447 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 51448 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 51449 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 51450 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 51451 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 51452 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 51453 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 51454 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 51455 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 51456 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 51457 | .{ ._, ._, .mov, .memad(.dst0q, .add_src0_size, -8), .tmp8q, ._, ._ }, |
| | 51458 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 51459 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 51460 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 51461 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_src0_size, -16), ._, ._ }, |
| | 51462 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 51463 | .{ ._, ._, .mov, .tmp1q, .tmp0q, ._, ._ }, |
| | 51464 | .{ ._, ._, .xor, .tmp1q, .memad(.dst0q, .add_src0_size, -8), ._, ._ }, |
| | 51465 | .{ ._, ._, .mov, .memad(.dst0q, .add_src0_size, -8), .tmp0q, ._, ._ }, |
| | 51466 | .{ ._, ._, .@"or", .tmp4q, .tmp1q, ._, ._ }, |
| | 51467 | } }, |
| | 51468 | }, .{ |
| | 51469 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| | 51470 | .src_constraints = .{ |
| | 51471 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 51472 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 51473 | .any, |
| | 51474 | }, |
| | 51475 | .patterns = &.{ |
| | 51476 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 51477 | }, |
| | 51478 | .extra_temps = .{ |
| | 51479 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 51480 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51481 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| | 51482 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51483 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51484 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 51485 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51486 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 51487 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51488 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 51489 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 51490 | }, |
| | 51491 | .dst_temps = .{ .mem, .{ .cc = .nz } }, |
| | 51492 | .clobbers = .{ .eflags = true }, |
| | 51493 | .each = .{ .once = &.{ |
| | 51494 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 51495 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 51496 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 51497 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 51498 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 51499 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 51500 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 51501 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 51502 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 51503 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 51504 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 51505 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 51506 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 51507 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_src0_size), ._, ._ }, |
| | 51508 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 51509 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 51510 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 51511 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 51512 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 51513 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 51514 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 51515 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_src0_size), .tmp9q, ._, ._ }, |
| | 51516 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 51517 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 51518 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 51519 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 51520 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 51521 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 51522 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 51523 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 51524 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 51525 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 51526 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 51527 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| | 51528 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| | 51529 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| | 51530 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| | 51531 | .{ ._, ._, .mov, .tmp5q, .memad(.dst0q, .add_src0_size, -8), ._, ._ }, |
| | 51532 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| | 51533 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 51534 | .{ ._, ._, .cmp, .tmp1b, .tmp3b, ._, ._ }, |
| | 51535 | .{ ._, ._e, .j, .@"1f", ._, ._, ._ }, |
| | 51536 | .{ ._, ._, .lea, .tmp2q, .memad(.src0, .add_size, -8), ._, ._ }, |
| | 51537 | .{ ._, ._, .lea, .tmp8q, .memad(.src1, .add_size, -8), ._, ._ }, |
| | 51538 | .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 51539 | .{ ._, ._nz, .cmov, .tmp2q, .tmp8q, ._, ._ }, |
| | 51540 | .{ .@"0:", ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 51541 | .{ ._, ._, .sbb, .tmp8q, .leasi(.tmp2q, .@"8", .tmp0), ._, ._ }, |
| | 51542 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 51543 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), ._, ._ }, |
| | 51544 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 51545 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), .tmp8q, ._, ._ }, |
| | 51546 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 51547 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 51548 | .{ ._, ._, .mov, .tmp8d, .tmp7d, ._, ._ }, |
| | 51549 | .{ ._, ._, .sbb, .tmp8q, .lea(.tmp2q), ._, ._ }, |
| | 51550 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 51551 | .{ ._, ._, .sbb, .tmp8q, .tmp5q, ._, ._ }, |
| | 51552 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 51553 | .{ .@"1:", ._, .@"test", .tmp1b, .tmp1b, ._, ._ }, |
| | 51554 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 51555 | .{ ._, ._c, .st, ._, ._, ._, ._ }, |
| | 51556 | .{ .@"0:", ._, .mov, .tmp8q, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), ._, ._ }, |
| | 51557 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 51558 | .{ ._, ._, .adc, .tmp6b, .tmp6b, ._, ._ }, |
| | 51559 | .{ ._, ._, .sbb, .tmp8q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ }, |
| | 51560 | .{ ._, ._r, .rc, .tmp6b, .ui(1), ._, ._ }, |
| | 51561 | .{ ._, ._, .mov, .memsiad(.dst0q, .@"8", .tmp0, .add_src0_size, -8), .tmp8q, ._, ._ }, |
| | 51562 | .{ ._, ._c, .in, .tmp0q, ._, ._, ._ }, |
| | 51563 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| | 51564 | .{ ._, ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| | 51565 | .{ ._, ._, .sbb, .tmp8q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 51566 | .{ ._, ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 51567 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 51568 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 51569 | .{ ._, ._, .add, .tmp6b, .tmp6b, ._, ._ }, |
| | 51570 | .{ ._, ._, .sbb, .tmp8q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 51571 | .{ .@"2:", ._o, .set, .tmp7b, ._, ._, ._ }, |
| | 51572 | .{ ._, ._, .mov, .memad(.dst0q, .add_src0_size, -8), .tmp8q, ._, ._ }, |
| | 51573 | .{ ._, ._, .@"or", .tmp4b, .tmp7b, ._, ._ }, |
| | 51574 | .{ .@"1:", ._r, .sh, .tmp5q, .ui(63), ._, ._ }, |
| | 51575 | .{ ._, ._, .@"or", .tmp4q, .tmp5q, ._, ._ }, |
| | 51576 | .{ ._, ._, .mov, .tmp0q, .memad(.dst0q, .add_src0_size, -16), ._, ._ }, |
| | 51577 | .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ }, |
| | 51578 | .{ ._, ._, .mov, .tmp1q, .tmp0q, ._, ._ }, |
| | 51579 | .{ ._, ._, .xor, .tmp1q, .memad(.dst0q, .add_src0_size, -8), ._, ._ }, |
| | 51580 | .{ ._, ._, .mov, .memad(.dst0q, .add_src0_size, -8), .tmp0q, ._, ._ }, |
| | 51581 | .{ ._, ._, .@"or", .tmp4q, .tmp1q, ._, ._ }, |
| | 51582 | } }, |
| | 51583 | }, .{ |
| | 51584 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| | 51585 | .src_constraints = .{ |
| | 51586 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 51587 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| | 51588 | .any, |
| | 51589 | }, |
| | 51590 | .patterns = &.{ |
| | 51591 | .{ .src = .{ .to_mem, .to_mem, .none } }, |
| | 51592 | }, |
| | 51593 | .extra_temps = .{ |
| | 51594 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 51595 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51596 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| | 51597 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51598 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51599 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| | 51600 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51601 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| | 51602 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| | 51603 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| | 51604 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| | 51605 | }, |
| | 51606 | .dst_temps = .{ .mem, .{ .cc = .nz } }, |
| | 51607 | .clobbers = .{ .eflags = true }, |
| | 51608 | .each = .{ .once = &.{ |
| | 51609 | .{ ._, ._, .mov, .tmp0d, .sia(-1, .src0, .add_size_div_8), ._, ._ }, |
| | 51610 | .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ }, |
| | 51611 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| | 51612 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| | 51613 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| | 51614 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| | 51615 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| | 51616 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| | 51617 | .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ }, |
| | 51618 | .{ ._, ._, .xor, .tmp6q, .tmp1q, ._, ._ }, |
| | 51619 | .{ ._, ._nz, .j, .@"2f", ._, ._, ._ }, |
| | 51620 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp6q, ._, ._ }, |
| | 51621 | .{ ._, ._mp, .j, .@"3f", ._, ._, ._ }, |
| | 51622 | .{ .@"1:", ._, .adc, .tmp10q, .memsia(.dst0q, .@"8", .tmp5, .add_src0_size), ._, ._ }, |
| | 51623 | .{ ._, ._, .adc, .tmp7b, .si(0), ._, ._ }, |
| | 51624 | .{ ._, ._, .mov, .tmp8q, .tmp10q, ._, ._ }, |
| | 51625 | .{ .@"2:", ._, .mov, .tmp9q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 51626 | .{ ._, ._, .xor, .tmp9q, .tmp3q, ._, ._ }, |
| | 51627 | .{ ._, ._, .mul, .tmp6q, ._, ._, ._ }, |
| | 51628 | .{ ._, ._l, .sh, .tmp7b, .ui(4), ._, ._ }, |
| | 51629 | .{ ._, ._, .adc, .tmp9q, .tmp8q, ._, ._ }, |
| | 51630 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp5, .add_src0_size), .tmp9q, ._, ._ }, |
| | 51631 | .{ ._, ._c, .in, .tmp5p, ._, ._, ._ }, |
| | 51632 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| | 51633 | .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ }, |
| | 51634 | .{ ._, ._, .adc, .tmp10q, .si(0), ._, ._ }, |
| | 51635 | .{ ._, ._mp, .j, .@"2f", ._, ._, ._ }, |
| | 51636 | .{ .@"1:", ._, .mov, .tmp6q, .leasi(.tmp2q, .@"8", .tmp5), ._, ._ }, |
| | 51637 | .{ ._, ._, .xor, .tmp6q, .tmp3q, ._, ._ }, |
| | 51638 | .{ ._, ._, .@"or", .tmp10q, .tmp6q, ._, ._ }, |
| | 51639 | .{ .@"2:", ._c, .de, .tmp5d, ._, ._, ._ }, |
| | 51640 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| | 51641 | .{ ._, ._, .@"or", .tmp4q, .tmp10q, ._, ._ }, |
| | 51642 | .{ .@"3:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| 46432 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, | 51643 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| 46433 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, | 51644 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| 46434 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, | 51645 | .{ ._, ._, .mov, .tmp0q, .sia(1, .src0, .sub_size_div_8), ._, ._ }, |
| ... | @@ -46487,8 +51698,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -46487,8 +51698,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 46487 | }, .{ | 51698 | }, .{ |
| 46488 | .required_features = .{ .@"64bit", null, null, null }, | 51699 | .required_features = .{ .@"64bit", null, null, null }, |
| 46489 | .src_constraints = .{ | 51700 | .src_constraints = .{ |
| 46490 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 51701 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 46491 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 51702 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 46492 | .any, | 51703 | .any, |
| 46493 | }, | 51704 | }, |
| 46494 | .patterns = &.{ | 51705 | .patterns = &.{ |
| ... | @@ -46515,8 +51726,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -46515,8 +51726,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 46515 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, | 51726 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| 46516 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, | 51727 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| 46517 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, | 51728 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| 46518 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, | | |
| 46519 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, | | |
| 46520 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, | 51729 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| 46521 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, | 51730 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| 46522 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | 51731 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| ... | @@ -46632,8 +51841,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -46632,8 +51841,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 46632 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, | 51841 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| 46633 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, | 51842 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| 46634 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, | 51843 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| 46635 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, | | |
| 46636 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, | | |
| 46637 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, | 51844 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| 46638 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, | 51845 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| 46639 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | 51846 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| ... | @@ -46755,8 +51962,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -46755,8 +51962,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 46755 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, | 51962 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| 46756 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, | 51963 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| 46757 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, | 51964 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| 46758 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, | | |
| 46759 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, | | |
| 46760 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, | 51965 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| 46761 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, | 51966 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| 46762 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | 51967 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| ... | @@ -46878,8 +52083,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -46878,8 +52083,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 46878 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, | 52083 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| 46879 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, | 52084 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| 46880 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, | 52085 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| 46881 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, | | |
| 46882 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, | | |
| 46883 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, | 52086 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| 46884 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, | 52087 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| 46885 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | 52088 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| ... | @@ -47001,8 +52204,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -47001,8 +52204,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 47001 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, | 52204 | .{ ._, ._, .lea, .tmp2p, .memd(.src1, 8), ._, ._ }, |
| 47002 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, | 52205 | .{ ._, ._, .mov, .tmp3q, .memad(.src1q, .add_size, -8), ._, ._ }, |
| 47003 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, | 52206 | .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| 47004 | .{ ._, ._r, .sa, .tmp1q, .ui(63), ._, ._ }, | | |
| 47005 | .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ }, | | |
| 47006 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, | 52207 | .{ .@"0:", ._, .lea, .tmp5p, .leaa(.tmp0, .sub_src0_size_div_8), ._, ._ }, |
| 47007 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, | 52208 | .{ ._, ._, .mov, .tmp6q, .memsi(.src0q, .@"8", .tmp0), ._, ._ }, |
| 47008 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, | 52209 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| ... | @@ -47568,8 +52769,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -47568,8 +52769,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 47568 | }, .{ | 52769 | }, .{ |
| 47569 | .required_features = .{ .@"64bit", .bmi2, .adx, null }, | 52770 | .required_features = .{ .@"64bit", .bmi2, .adx, null }, |
| 47570 | .src_constraints = .{ | 52771 | .src_constraints = .{ |
| 47571 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 52772 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 47572 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 52773 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 47573 | .any, | 52774 | .any, |
| 47574 | }, | 52775 | }, |
| 47575 | .patterns = &.{ | 52776 | .patterns = &.{ |
| ... | @@ -47626,8 +52827,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -47626,8 +52827,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 47626 | }, .{ | 52827 | }, .{ |
| 47627 | .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null }, | 52828 | .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null }, |
| 47628 | .src_constraints = .{ | 52829 | .src_constraints = .{ |
| 47629 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 52830 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 47630 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 52831 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 47631 | .any, | 52832 | .any, |
| 47632 | }, | 52833 | }, |
| 47633 | .patterns = &.{ | 52834 | .patterns = &.{ |
| ... | @@ -47685,8 +52886,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -47685,8 +52886,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 47685 | }, .{ | 52886 | }, .{ |
| 47686 | .required_features = .{ .@"64bit", .bmi2, null, null }, | 52887 | .required_features = .{ .@"64bit", .bmi2, null, null }, |
| 47687 | .src_constraints = .{ | 52888 | .src_constraints = .{ |
| 47688 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 52889 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 47689 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 52890 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 47690 | .any, | 52891 | .any, |
| 47691 | }, | 52892 | }, |
| 47692 | .patterns = &.{ | 52893 | .patterns = &.{ |
| ... | @@ -47744,8 +52945,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -47744,8 +52945,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 47744 | }, .{ | 52945 | }, .{ |
| 47745 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, | 52946 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| 47746 | .src_constraints = .{ | 52947 | .src_constraints = .{ |
| 47747 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 52948 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 47748 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 52949 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 47749 | .any, | 52950 | .any, |
| 47750 | }, | 52951 | }, |
| 47751 | .patterns = &.{ | 52952 | .patterns = &.{ |
| ... | @@ -47803,8 +53004,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -47803,8 +53004,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 47803 | }, .{ | 53004 | }, .{ |
| 47804 | .required_features = .{ .@"64bit", null, null, null }, | 53005 | .required_features = .{ .@"64bit", null, null, null }, |
| 47805 | .src_constraints = .{ | 53006 | .src_constraints = .{ |
| 47806 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 53007 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 47807 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 53008 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 47808 | .any, | 53009 | .any, |
| 47809 | }, | 53010 | }, |
| 47810 | .patterns = &.{ | 53011 | .patterns = &.{ |
| ... | @@ -47862,8 +53063,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -47862,8 +53063,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 47862 | }, .{ | 53063 | }, .{ |
| 47863 | .required_features = .{ .@"64bit", .bmi2, .adx, null }, | 53064 | .required_features = .{ .@"64bit", .bmi2, .adx, null }, |
| 47864 | .src_constraints = .{ | 53065 | .src_constraints = .{ |
| 47865 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 53066 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 47866 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 53067 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 47867 | .any, | 53068 | .any, |
| 47868 | }, | 53069 | }, |
| 47869 | .patterns = &.{ | 53070 | .patterns = &.{ |
| ... | @@ -47921,8 +53122,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -47921,8 +53122,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 47921 | }, .{ | 53122 | }, .{ |
| 47922 | .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null }, | 53123 | .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null }, |
| 47923 | .src_constraints = .{ | 53124 | .src_constraints = .{ |
| 47924 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 53125 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 47925 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 53126 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 47926 | .any, | 53127 | .any, |
| 47927 | }, | 53128 | }, |
| 47928 | .patterns = &.{ | 53129 | .patterns = &.{ |
| ... | @@ -47981,8 +53182,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -47981,8 +53182,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 47981 | }, .{ | 53182 | }, .{ |
| 47982 | .required_features = .{ .@"64bit", .bmi2, null, null }, | 53183 | .required_features = .{ .@"64bit", .bmi2, null, null }, |
| 47983 | .src_constraints = .{ | 53184 | .src_constraints = .{ |
| 47984 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 53185 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 47985 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 53186 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 47986 | .any, | 53187 | .any, |
| 47987 | }, | 53188 | }, |
| 47988 | .patterns = &.{ | 53189 | .patterns = &.{ |
| ... | @@ -48041,8 +53242,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -48041,8 +53242,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 48041 | }, .{ | 53242 | }, .{ |
| 48042 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, | 53243 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| 48043 | .src_constraints = .{ | 53244 | .src_constraints = .{ |
| 48044 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 53245 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 48045 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 53246 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 48046 | .any, | 53247 | .any, |
| 48047 | }, | 53248 | }, |
| 48048 | .patterns = &.{ | 53249 | .patterns = &.{ |
| ... | @@ -48101,8 +53302,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -48101,8 +53302,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 48101 | }, .{ | 53302 | }, .{ |
| 48102 | .required_features = .{ .@"64bit", null, null, null }, | 53303 | .required_features = .{ .@"64bit", null, null, null }, |
| 48103 | .src_constraints = .{ | 53304 | .src_constraints = .{ |
| 48104 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 53305 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 48105 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 53306 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 48106 | .any, | 53307 | .any, |
| 48107 | }, | 53308 | }, |
| 48108 | .patterns = &.{ | 53309 | .patterns = &.{ |
| ... | @@ -49647,7 +54848,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -49647,7 +54848,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 49647 | }, .{ | 54848 | }, .{ |
| 49648 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, | 54849 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| 49649 | .src_constraints = .{ | 54850 | .src_constraints = .{ |
| 49650 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 54851 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 49651 | .{ .unsigned_int = .byte }, | 54852 | .{ .unsigned_int = .byte }, |
| 49652 | .any, | 54853 | .any, |
| 49653 | }, | 54854 | }, |
| ... | @@ -49711,7 +54912,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -49711,7 +54912,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 49711 | }, .{ | 54912 | }, .{ |
| 49712 | .required_features = .{ .@"64bit", null, null, null }, | 54913 | .required_features = .{ .@"64bit", null, null, null }, |
| 49713 | .src_constraints = .{ | 54914 | .src_constraints = .{ |
| 49714 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 54915 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 49715 | .{ .unsigned_int = .byte }, | 54916 | .{ .unsigned_int = .byte }, |
| 49716 | .any, | 54917 | .any, |
| 49717 | }, | 54918 | }, |
| ... | @@ -49775,7 +54976,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -49775,7 +54976,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 49775 | }, .{ | 54976 | }, .{ |
| 49776 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, | 54977 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| 49777 | .src_constraints = .{ | 54978 | .src_constraints = .{ |
| 49778 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 54979 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 49779 | .{ .unsigned_int = .word }, | 54980 | .{ .unsigned_int = .word }, |
| 49780 | .any, | 54981 | .any, |
| 49781 | }, | 54982 | }, |
| ... | @@ -49839,7 +55040,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -49839,7 +55040,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 49839 | }, .{ | 55040 | }, .{ |
| 49840 | .required_features = .{ .@"64bit", null, null, null }, | 55041 | .required_features = .{ .@"64bit", null, null, null }, |
| 49841 | .src_constraints = .{ | 55042 | .src_constraints = .{ |
| 49842 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .xword } }, | 55043 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 128 } }, |
| 49843 | .{ .unsigned_int = .word }, | 55044 | .{ .unsigned_int = .word }, |
| 49844 | .any, | 55045 | .any, |
| 49845 | }, | 55046 | }, |
| ... | @@ -49903,7 +55104,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -49903,7 +55104,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 49903 | }, .{ | 55104 | }, .{ |
| 49904 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, | 55105 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| 49905 | .src_constraints = .{ | 55106 | .src_constraints = .{ |
| 49906 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 55107 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 49907 | .{ .unsigned_int = .byte }, | 55108 | .{ .unsigned_int = .byte }, |
| 49908 | .any, | 55109 | .any, |
| 49909 | }, | 55110 | }, |
| ... | @@ -49959,7 +55160,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -49959,7 +55160,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 49959 | }, .{ | 55160 | }, .{ |
| 49960 | .required_features = .{ .@"64bit", null, null, null }, | 55161 | .required_features = .{ .@"64bit", null, null, null }, |
| 49961 | .src_constraints = .{ | 55162 | .src_constraints = .{ |
| 49962 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 55163 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 49963 | .{ .unsigned_int = .byte }, | 55164 | .{ .unsigned_int = .byte }, |
| 49964 | .any, | 55165 | .any, |
| 49965 | }, | 55166 | }, |
| ... | @@ -50015,7 +55216,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -50015,7 +55216,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 50015 | }, .{ | 55216 | }, .{ |
| 50016 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, | 55217 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| 50017 | .src_constraints = .{ | 55218 | .src_constraints = .{ |
| 50018 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 55219 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 50019 | .{ .unsigned_int = .word }, | 55220 | .{ .unsigned_int = .word }, |
| 50020 | .any, | 55221 | .any, |
| 50021 | }, | 55222 | }, |
| ... | @@ -50071,7 +55272,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -50071,7 +55272,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 50071 | }, .{ | 55272 | }, .{ |
| 50072 | .required_features = .{ .@"64bit", null, null, null }, | 55273 | .required_features = .{ .@"64bit", null, null, null }, |
| 50073 | .src_constraints = .{ | 55274 | .src_constraints = .{ |
| 50074 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, | 55275 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 128 } }, |
| 50075 | .{ .unsigned_int = .word }, | 55276 | .{ .unsigned_int = .word }, |
| 50076 | .any, | 55277 | .any, |
| 50077 | }, | 55278 | }, |
| ... | @@ -50127,7 +55328,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -50127,7 +55328,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 50127 | }, .{ | 55328 | }, .{ |
| 50128 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, | 55329 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| 50129 | .src_constraints = .{ | 55330 | .src_constraints = .{ |
| 50130 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 55331 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 50131 | .{ .unsigned_int = .byte }, | 55332 | .{ .unsigned_int = .byte }, |
| 50132 | .any, | 55333 | .any, |
| 50133 | }, | 55334 | }, |
| ... | @@ -50191,7 +55392,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -50191,7 +55392,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 50191 | }, .{ | 55392 | }, .{ |
| 50192 | .required_features = .{ .@"64bit", null, null, null }, | 55393 | .required_features = .{ .@"64bit", null, null, null }, |
| 50193 | .src_constraints = .{ | 55394 | .src_constraints = .{ |
| 50194 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 55395 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 50195 | .{ .unsigned_int = .byte }, | 55396 | .{ .unsigned_int = .byte }, |
| 50196 | .any, | 55397 | .any, |
| 50197 | }, | 55398 | }, |
| ... | @@ -50255,7 +55456,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -50255,7 +55456,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 50255 | }, .{ | 55456 | }, .{ |
| 50256 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, | 55457 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| 50257 | .src_constraints = .{ | 55458 | .src_constraints = .{ |
| 50258 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 55459 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 50259 | .{ .unsigned_int = .word }, | 55460 | .{ .unsigned_int = .word }, |
| 50260 | .any, | 55461 | .any, |
| 50261 | }, | 55462 | }, |
| ... | @@ -50319,7 +55520,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -50319,7 +55520,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 50319 | }, .{ | 55520 | }, .{ |
| 50320 | .required_features = .{ .@"64bit", null, null, null }, | 55521 | .required_features = .{ .@"64bit", null, null, null }, |
| 50321 | .src_constraints = .{ | 55522 | .src_constraints = .{ |
| 50322 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, | 55523 | .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, |
| 50323 | .{ .unsigned_int = .word }, | 55524 | .{ .unsigned_int = .word }, |
| 50324 | .any, | 55525 | .any, |
| 50325 | }, | 55526 | }, |
| ... | @@ -50383,7 +55584,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -50383,7 +55584,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 50383 | }, .{ | 55584 | }, .{ |
| 50384 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, | 55585 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| 50385 | .src_constraints = .{ | 55586 | .src_constraints = .{ |
| 50386 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 55587 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 50387 | .{ .unsigned_int = .byte }, | 55588 | .{ .unsigned_int = .byte }, |
| 50388 | .any, | 55589 | .any, |
| 50389 | }, | 55590 | }, |
| ... | @@ -50440,7 +55641,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -50440,7 +55641,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 50440 | }, .{ | 55641 | }, .{ |
| 50441 | .required_features = .{ .@"64bit", null, null, null }, | 55642 | .required_features = .{ .@"64bit", null, null, null }, |
| 50442 | .src_constraints = .{ | 55643 | .src_constraints = .{ |
| 50443 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 55644 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 50444 | .{ .unsigned_int = .byte }, | 55645 | .{ .unsigned_int = .byte }, |
| 50445 | .any, | 55646 | .any, |
| 50446 | }, | 55647 | }, |
| ... | @@ -50497,7 +55698,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -50497,7 +55698,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 50497 | }, .{ | 55698 | }, .{ |
| 50498 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, | 55699 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| 50499 | .src_constraints = .{ | 55700 | .src_constraints = .{ |
| 50500 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 55701 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 50501 | .{ .unsigned_int = .word }, | 55702 | .{ .unsigned_int = .word }, |
| 50502 | .any, | 55703 | .any, |
| 50503 | }, | 55704 | }, |
| ... | @@ -50554,7 +55755,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -50554,7 +55755,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 50554 | }, .{ | 55755 | }, .{ |
| 50555 | .required_features = .{ .@"64bit", null, null, null }, | 55756 | .required_features = .{ .@"64bit", null, null, null }, |
| 50556 | .src_constraints = .{ | 55757 | .src_constraints = .{ |
| 50557 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, | 55758 | .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, |
| 50558 | .{ .unsigned_int = .word }, | 55759 | .{ .unsigned_int = .word }, |
| 50559 | .any, | 55760 | .any, |
| 50560 | }, | 55761 | }, |
| ... | @@ -54031,7 +59232,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -54031,7 +59232,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 54031 | } }, | 59232 | } }, |
| 54032 | }, .{ | 59233 | }, .{ |
| 54033 | .required_features = .{ .@"64bit", null, null, null }, | 59234 | .required_features = .{ .@"64bit", null, null, null }, |
| 54034 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .dword } }, .any, .any }, | 59235 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = 32 } }, .any, .any }, |
| 54035 | .patterns = &.{ | 59236 | .patterns = &.{ |
| 54036 | .{ .src = .{ .mut_mem, .none, .none } }, | 59237 | .{ .src = .{ .mut_mem, .none, .none } }, |
| 54037 | }, | 59238 | }, |
| ... | @@ -54060,7 +59261,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -54060,7 +59261,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 54060 | } }, | 59261 | } }, |
| 54061 | }, .{ | 59262 | }, .{ |
| 54062 | .required_features = .{ .@"64bit", null, null, null }, | 59263 | .required_features = .{ .@"64bit", null, null, null }, |
| 54063 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .dword } }, .any, .any }, | 59264 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = 32 } }, .any, .any }, |
| 54064 | .patterns = &.{ | 59265 | .patterns = &.{ |
| 54065 | .{ .src = .{ .to_mem, .none, .none } }, | 59266 | .{ .src = .{ .to_mem, .none, .none } }, |
| 54066 | }, | 59267 | }, |
| ... | @@ -54094,7 +59295,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -54094,7 +59295,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 54094 | } }, | 59295 | } }, |
| 54095 | }, .{ | 59296 | }, .{ |
| 54096 | .required_features = .{ .@"64bit", null, null, null }, | 59297 | .required_features = .{ .@"64bit", null, null, null }, |
| 54097 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .qword, .is = .qword } }, .any, .any }, | 59298 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .qword, .is = 64 } }, .any, .any }, |
| 54098 | .patterns = &.{ | 59299 | .patterns = &.{ |
| 54099 | .{ .src = .{ .mut_mem, .none, .none } }, | 59300 | .{ .src = .{ .mut_mem, .none, .none } }, |
| 54100 | }, | 59301 | }, |
| ... | @@ -54123,7 +59324,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -54123,7 +59324,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 54123 | } }, | 59324 | } }, |
| 54124 | }, .{ | 59325 | }, .{ |
| 54125 | .required_features = .{ .@"64bit", null, null, null }, | 59326 | .required_features = .{ .@"64bit", null, null, null }, |
| 54126 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .qword, .is = .qword } }, .any, .any }, | 59327 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .qword, .is = 64 } }, .any, .any }, |
| 54127 | .patterns = &.{ | 59328 | .patterns = &.{ |
| 54128 | .{ .src = .{ .to_mem, .none, .none } }, | 59329 | .{ .src = .{ .to_mem, .none, .none } }, |
| 54129 | }, | 59330 | }, |
| ... | @@ -54153,7 +59354,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -54153,7 +59354,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 54153 | } }, | 59354 | } }, |
| 54154 | }, .{ | 59355 | }, .{ |
| 54155 | .required_features = .{ .@"64bit", null, null, null }, | 59356 | .required_features = .{ .@"64bit", null, null, null }, |
| 54156 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .dword, .is = .dword } }, .any, .any }, | 59357 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .dword, .is = 32 } }, .any, .any }, |
| 54157 | .patterns = &.{ | 59358 | .patterns = &.{ |
| 54158 | .{ .src = .{ .mut_mem, .none, .none } }, | 59359 | .{ .src = .{ .mut_mem, .none, .none } }, |
| 54159 | }, | 59360 | }, |
| ... | @@ -54181,7 +59382,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -54181,7 +59382,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 54181 | } }, | 59382 | } }, |
| 54182 | }, .{ | 59383 | }, .{ |
| 54183 | .required_features = .{ .@"64bit", null, null, null }, | 59384 | .required_features = .{ .@"64bit", null, null, null }, |
| 54184 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .dword, .is = .dword } }, .any, .any }, | 59385 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .dword, .is = 32 } }, .any, .any }, |
| 54185 | .patterns = &.{ | 59386 | .patterns = &.{ |
| 54186 | .{ .src = .{ .to_mem, .none, .none } }, | 59387 | .{ .src = .{ .to_mem, .none, .none } }, |
| 54187 | }, | 59388 | }, |
| ... | @@ -55117,7 +60318,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55117,7 +60318,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55117 | .{ ._, ._, .movzx, .tmp0d, .src0b, ._, ._ }, | 60318 | .{ ._, ._, .movzx, .tmp0d, .src0b, ._, ._ }, |
| 55118 | .{ ._, ._, .@"and", .tmp0d, .sa(.src0, .add_umax), ._, ._ }, | 60319 | .{ ._, ._, .@"and", .tmp0d, .sa(.src0, .add_umax), ._, ._ }, |
| 55119 | .{ ._, ._r, .bs, .tmp0d, .tmp0d, ._, ._ }, | 60320 | .{ ._, ._r, .bs, .tmp0d, .tmp0d, ._, ._ }, |
| 55120 | .{ ._, ._, .mov, .dst0d, .si(0xff), ._, ._ }, | 60321 | .{ ._, ._, .mov, .dst0d, .si(-1), ._, ._ }, |
| 55121 | .{ ._, ._z, .cmov, .tmp0d, .dst0d, ._, ._ }, | 60322 | .{ ._, ._z, .cmov, .tmp0d, .dst0d, ._, ._ }, |
| 55122 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60323 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55123 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, | 60324 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, |
| ... | @@ -55147,7 +60348,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55147,7 +60348,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55147 | .each = .{ .once = &.{ | 60348 | .each = .{ .once = &.{ |
| 55148 | .{ ._, ._, .movzx, .tmp0d, .src0b, ._, ._ }, | 60349 | .{ ._, ._, .movzx, .tmp0d, .src0b, ._, ._ }, |
| 55149 | .{ ._, ._r, .bs, .tmp0d, .tmp0d, ._, ._ }, | 60350 | .{ ._, ._r, .bs, .tmp0d, .tmp0d, ._, ._ }, |
| 55150 | .{ ._, ._, .mov, .dst0d, .si(0xff), ._, ._ }, | 60351 | .{ ._, ._, .mov, .dst0d, .si(-1), ._, ._ }, |
| 55151 | .{ ._, ._z, .cmov, .tmp0d, .dst0d, ._, ._ }, | 60352 | .{ ._, ._z, .cmov, .tmp0d, .dst0d, ._, ._ }, |
| 55152 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60353 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55153 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, | 60354 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, |
| ... | @@ -55325,7 +60526,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55325,7 +60526,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55325 | .each = .{ .once = &.{ | 60526 | .each = .{ .once = &.{ |
| 55326 | .{ ._, ._, .movzx, .dst0d, .src0b, ._, ._ }, | 60527 | .{ ._, ._, .movzx, .dst0d, .src0b, ._, ._ }, |
| 55327 | .{ ._, ._, .@"and", .dst0d, .sa(.src0, .add_umax), ._, ._ }, | 60528 | .{ ._, ._, .@"and", .dst0d, .sa(.src0, .add_umax), ._, ._ }, |
| 55328 | .{ ._, ._, .mov, .tmp0d, .si(0xff), ._, ._ }, | 60529 | .{ ._, ._, .mov, .tmp0d, .si(-1), ._, ._ }, |
| 55329 | .{ ._, ._r, .bs, .tmp0d, .dst0d, ._, ._ }, | 60530 | .{ ._, ._r, .bs, .tmp0d, .dst0d, ._, ._ }, |
| 55330 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60531 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55331 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, | 60532 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, |
| ... | @@ -55353,7 +60554,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55353,7 +60554,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55353 | .clobbers = .{ .eflags = true }, | 60554 | .clobbers = .{ .eflags = true }, |
| 55354 | .each = .{ .once = &.{ | 60555 | .each = .{ .once = &.{ |
| 55355 | .{ ._, ._, .movzx, .dst0d, .src0b, ._, ._ }, | 60556 | .{ ._, ._, .movzx, .dst0d, .src0b, ._, ._ }, |
| 55356 | .{ ._, ._, .mov, .tmp0d, .si(0xff), ._, ._ }, | 60557 | .{ ._, ._, .mov, .tmp0d, .si(-1), ._, ._ }, |
| 55357 | .{ ._, ._r, .bs, .tmp0d, .dst0d, ._, ._ }, | 60558 | .{ ._, ._r, .bs, .tmp0d, .dst0d, ._, ._ }, |
| 55358 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60559 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55359 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, | 60560 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, |
| ... | @@ -55383,8 +60584,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55383,8 +60584,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55383 | .each = .{ .once = &.{ | 60584 | .each = .{ .once = &.{ |
| 55384 | .{ ._, ._, .@"and", .src0w, .sa(.src0, .add_umax), ._, ._ }, | 60585 | .{ ._, ._, .@"and", .src0w, .sa(.src0, .add_umax), ._, ._ }, |
| 55385 | .{ ._, ._r, .bs, .src0w, .src0w, ._, ._ }, | 60586 | .{ ._, ._r, .bs, .src0w, .src0w, ._, ._ }, |
| 55386 | .{ ._, ._, .mov, .dst0w, .si(0xff), ._, ._ }, | 60587 | .{ ._, ._, .mov, .dst0d, .si(-1), ._, ._ }, |
| 55387 | .{ ._, ._z, .cmov, .src0w, .dst0w, ._, ._ }, | 60588 | .{ ._, ._z, .cmov, .src0d, .dst0d, ._, ._ }, |
| 55388 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60589 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55389 | .{ ._, ._, .sub, .dst0b, .src0b, ._, ._ }, | 60590 | .{ ._, ._, .sub, .dst0b, .src0b, ._, ._ }, |
| 55390 | } }, | 60591 | } }, |
| ... | @@ -55398,8 +60599,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55398,8 +60599,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55398 | .clobbers = .{ .eflags = true }, | 60599 | .clobbers = .{ .eflags = true }, |
| 55399 | .each = .{ .once = &.{ | 60600 | .each = .{ .once = &.{ |
| 55400 | .{ ._, ._r, .bs, .src0w, .src0w, ._, ._ }, | 60601 | .{ ._, ._r, .bs, .src0w, .src0w, ._, ._ }, |
| 55401 | .{ ._, ._, .mov, .dst0w, .si(0xff), ._, ._ }, | 60602 | .{ ._, ._, .mov, .dst0d, .si(-1), ._, ._ }, |
| 55402 | .{ ._, ._z, .cmov, .src0w, .dst0w, ._, ._ }, | 60603 | .{ ._, ._z, .cmov, .src0d, .dst0d, ._, ._ }, |
| 55403 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60604 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55404 | .{ ._, ._, .sub, .dst0b, .src0b, ._, ._ }, | 60605 | .{ ._, ._, .sub, .dst0b, .src0b, ._, ._ }, |
| 55405 | } }, | 60606 | } }, |
| ... | @@ -55483,7 +60684,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55483,7 +60684,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55483 | .clobbers = .{ .eflags = true }, | 60684 | .clobbers = .{ .eflags = true }, |
| 55484 | .each = .{ .once = &.{ | 60685 | .each = .{ .once = &.{ |
| 55485 | .{ ._, ._, .@"and", .src0w, .sa(.src0, .add_umax), ._, ._ }, | 60686 | .{ ._, ._, .@"and", .src0w, .sa(.src0, .add_umax), ._, ._ }, |
| 55486 | .{ ._, ._, .mov, .tmp0w, .si(0xff), ._, ._ }, | 60687 | .{ ._, ._, .mov, .tmp0d, .si(-1), ._, ._ }, |
| 55487 | .{ ._, ._r, .bs, .tmp0w, .src0w, ._, ._ }, | 60688 | .{ ._, ._r, .bs, .tmp0w, .src0w, ._, ._ }, |
| 55488 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60689 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55489 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, | 60690 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, |
| ... | @@ -55510,7 +60711,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55510,7 +60711,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55510 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, | 60711 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 55511 | .clobbers = .{ .eflags = true }, | 60712 | .clobbers = .{ .eflags = true }, |
| 55512 | .each = .{ .once = &.{ | 60713 | .each = .{ .once = &.{ |
| 55513 | .{ ._, ._, .mov, .tmp0w, .si(0xff), ._, ._ }, | 60714 | .{ ._, ._, .mov, .tmp0d, .si(-1), ._, ._ }, |
| 55514 | .{ ._, ._r, .bs, .tmp0w, .src0w, ._, ._ }, | 60715 | .{ ._, ._r, .bs, .tmp0w, .src0w, ._, ._ }, |
| 55515 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60716 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55516 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, | 60717 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, |
| ... | @@ -55540,7 +60741,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55540,7 +60741,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55540 | .each = .{ .once = &.{ | 60741 | .each = .{ .once = &.{ |
| 55541 | .{ ._, ._, .@"and", .src0d, .sa(.src0, .add_umax), ._, ._ }, | 60742 | .{ ._, ._, .@"and", .src0d, .sa(.src0, .add_umax), ._, ._ }, |
| 55542 | .{ ._, ._r, .bs, .src0d, .src0d, ._, ._ }, | 60743 | .{ ._, ._r, .bs, .src0d, .src0d, ._, ._ }, |
| 55543 | .{ ._, ._, .mov, .dst0d, .si(0xff), ._, ._ }, | 60744 | .{ ._, ._, .mov, .dst0d, .si(-1), ._, ._ }, |
| 55544 | .{ ._, ._z, .cmov, .src0d, .dst0d, ._, ._ }, | 60745 | .{ ._, ._z, .cmov, .src0d, .dst0d, ._, ._ }, |
| 55545 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60746 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55546 | .{ ._, ._, .sub, .dst0b, .src0b, ._, ._ }, | 60747 | .{ ._, ._, .sub, .dst0b, .src0b, ._, ._ }, |
| ... | @@ -55555,7 +60756,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55555,7 +60756,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55555 | .clobbers = .{ .eflags = true }, | 60756 | .clobbers = .{ .eflags = true }, |
| 55556 | .each = .{ .once = &.{ | 60757 | .each = .{ .once = &.{ |
| 55557 | .{ ._, ._r, .bs, .src0d, .src0d, ._, ._ }, | 60758 | .{ ._, ._r, .bs, .src0d, .src0d, ._, ._ }, |
| 55558 | .{ ._, ._, .mov, .dst0d, .si(0xff), ._, ._ }, | 60759 | .{ ._, ._, .mov, .dst0d, .si(-1), ._, ._ }, |
| 55559 | .{ ._, ._z, .cmov, .src0d, .dst0d, ._, ._ }, | 60760 | .{ ._, ._z, .cmov, .src0d, .dst0d, ._, ._ }, |
| 55560 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60761 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55561 | .{ ._, ._, .sub, .dst0b, .src0b, ._, ._ }, | 60762 | .{ ._, ._, .sub, .dst0b, .src0b, ._, ._ }, |
| ... | @@ -55640,7 +60841,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55640,7 +60841,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55640 | .clobbers = .{ .eflags = true }, | 60841 | .clobbers = .{ .eflags = true }, |
| 55641 | .each = .{ .once = &.{ | 60842 | .each = .{ .once = &.{ |
| 55642 | .{ ._, ._, .@"and", .src0d, .sa(.src0, .add_umax), ._, ._ }, | 60843 | .{ ._, ._, .@"and", .src0d, .sa(.src0, .add_umax), ._, ._ }, |
| 55643 | .{ ._, ._, .mov, .tmp0d, .si(0xff), ._, ._ }, | 60844 | .{ ._, ._, .mov, .tmp0d, .si(-1), ._, ._ }, |
| 55644 | .{ ._, ._r, .bs, .tmp0d, .src0d, ._, ._ }, | 60845 | .{ ._, ._r, .bs, .tmp0d, .src0d, ._, ._ }, |
| 55645 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60846 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55646 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, | 60847 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, |
| ... | @@ -55667,7 +60868,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55667,7 +60868,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55667 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, | 60868 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 55668 | .clobbers = .{ .eflags = true }, | 60869 | .clobbers = .{ .eflags = true }, |
| 55669 | .each = .{ .once = &.{ | 60870 | .each = .{ .once = &.{ |
| 55670 | .{ ._, ._, .mov, .tmp0d, .si(0xff), ._, ._ }, | 60871 | .{ ._, ._, .mov, .tmp0d, .si(-1), ._, ._ }, |
| 55671 | .{ ._, ._r, .bs, .tmp0d, .src0d, ._, ._ }, | 60872 | .{ ._, ._r, .bs, .tmp0d, .src0d, ._, ._ }, |
| 55672 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60873 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55673 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, | 60874 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, |
| ... | @@ -55712,7 +60913,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55712,7 +60913,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55712 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, | 60913 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, |
| 55713 | .{ ._, ._, .@"and", .tmp0q, .src0q, ._, ._ }, | 60914 | .{ ._, ._, .@"and", .tmp0q, .src0q, ._, ._ }, |
| 55714 | .{ ._, ._r, .bs, .tmp0q, .tmp0q, ._, ._ }, | 60915 | .{ ._, ._r, .bs, .tmp0q, .tmp0q, ._, ._ }, |
| 55715 | .{ ._, ._, .mov, .dst0d, .si(0xff), ._, ._ }, | 60916 | .{ ._, ._, .mov, .dst0d, .si(-1), ._, ._ }, |
| 55716 | .{ ._, ._z, .cmov, .tmp0d, .dst0d, ._, ._ }, | 60917 | .{ ._, ._z, .cmov, .tmp0d, .dst0d, ._, ._ }, |
| 55717 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60918 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55718 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, | 60919 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, |
| ... | @@ -55727,7 +60928,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55727,7 +60928,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55727 | .clobbers = .{ .eflags = true }, | 60928 | .clobbers = .{ .eflags = true }, |
| 55728 | .each = .{ .once = &.{ | 60929 | .each = .{ .once = &.{ |
| 55729 | .{ ._, ._r, .bs, .src0q, .src0q, ._, ._ }, | 60930 | .{ ._, ._r, .bs, .src0q, .src0q, ._, ._ }, |
| 55730 | .{ ._, ._, .mov, .dst0d, .si(0xff), ._, ._ }, | 60931 | .{ ._, ._, .mov, .dst0d, .si(-1), ._, ._ }, |
| 55731 | .{ ._, ._z, .cmov, .src0d, .dst0d, ._, ._ }, | 60932 | .{ ._, ._z, .cmov, .src0d, .dst0d, ._, ._ }, |
| 55732 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 60933 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55733 | .{ ._, ._, .sub, .dst0b, .src0b, ._, ._ }, | 60934 | .{ ._, ._, .sub, .dst0b, .src0b, ._, ._ }, |
| ... | @@ -55831,7 +61032,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55831,7 +61032,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55831 | .each = .{ .once = &.{ | 61032 | .each = .{ .once = &.{ |
| 55832 | .{ ._, ._, .mov, .dst0q, .ua(.src0, .add_umax), ._, ._ }, | 61033 | .{ ._, ._, .mov, .dst0q, .ua(.src0, .add_umax), ._, ._ }, |
| 55833 | .{ ._, ._, .@"and", .dst0q, .src0q, ._, ._ }, | 61034 | .{ ._, ._, .@"and", .dst0q, .src0q, ._, ._ }, |
| 55834 | .{ ._, ._, .mov, .tmp0d, .si(0xff), ._, ._ }, | 61035 | .{ ._, ._, .mov, .tmp0d, .si(-1), ._, ._ }, |
| 55835 | .{ ._, ._r, .bs, .tmp0q, .dst0q, ._, ._ }, | 61036 | .{ ._, ._r, .bs, .tmp0q, .dst0q, ._, ._ }, |
| 55836 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 61037 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55837 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, | 61038 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, |
| ... | @@ -55859,7 +61060,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -55859,7 +61060,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 55859 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, | 61060 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 55860 | .clobbers = .{ .eflags = true }, | 61061 | .clobbers = .{ .eflags = true }, |
| 55861 | .each = .{ .once = &.{ | 61062 | .each = .{ .once = &.{ |
| 55862 | .{ ._, ._, .mov, .tmp0d, .si(0xff), ._, ._ }, | 61063 | .{ ._, ._, .mov, .tmp0d, .si(-1), ._, ._ }, |
| 55863 | .{ ._, ._r, .bs, .tmp0q, .src0q, ._, ._ }, | 61064 | .{ ._, ._r, .bs, .tmp0q, .src0q, ._, ._ }, |
| 55864 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 61065 | .{ ._, ._, .mov, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 55865 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, | 61066 | .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ }, |
| ... | @@ -56597,7 +61798,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -56597,7 +61798,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 56597 | .clobbers = .{ .eflags = true }, | 61798 | .clobbers = .{ .eflags = true }, |
| 56598 | .each = .{ .once = &.{ | 61799 | .each = .{ .once = &.{ |
| 56599 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 61800 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 56600 | .{ ._, ._, .mov, .tmp1d, .si(0xff), ._, ._ }, | 61801 | .{ ._, ._, .mov, .tmp1d, .si(-1), ._, ._ }, |
| 56601 | .{ .@"0:", ._, .movzx, .tmp2d, .memia(.src0b, .tmp0, .add_len), ._, ._ }, | 61802 | .{ .@"0:", ._, .movzx, .tmp2d, .memia(.src0b, .tmp0, .add_len), ._, ._ }, |
| 56602 | .{ ._, ._, .@"and", .tmp2d, .sa(.src0, .add_umax), ._, ._ }, | 61803 | .{ ._, ._, .@"and", .tmp2d, .sa(.src0, .add_umax), ._, ._ }, |
| 56603 | .{ ._, ._r, .bs, .tmp2d, .tmp2d, ._, ._ }, | 61804 | .{ ._, ._r, .bs, .tmp2d, .tmp2d, ._, ._ }, |
| ... | @@ -56631,7 +61832,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -56631,7 +61832,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 56631 | .clobbers = .{ .eflags = true }, | 61832 | .clobbers = .{ .eflags = true }, |
| 56632 | .each = .{ .once = &.{ | 61833 | .each = .{ .once = &.{ |
| 56633 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 61834 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 56634 | .{ ._, ._, .mov, .tmp1d, .si(0xff), ._, ._ }, | 61835 | .{ ._, ._, .mov, .tmp1d, .si(-1), ._, ._ }, |
| 56635 | .{ .@"0:", ._, .movzx, .tmp2d, .memia(.src0b, .tmp0, .add_len), ._, ._ }, | 61836 | .{ .@"0:", ._, .movzx, .tmp2d, .memia(.src0b, .tmp0, .add_len), ._, ._ }, |
| 56636 | .{ ._, ._, .@"and", .tmp2d, .sa(.src0, .add_umax), ._, ._ }, | 61837 | .{ ._, ._, .@"and", .tmp2d, .sa(.src0, .add_umax), ._, ._ }, |
| 56637 | .{ ._, ._r, .bs, .tmp2d, .tmp2d, ._, ._ }, | 61838 | .{ ._, ._r, .bs, .tmp2d, .tmp2d, ._, ._ }, |
| ... | @@ -56735,7 +61936,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -56735,7 +61936,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 56735 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 61936 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 56736 | .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_len), ._, ._ }, | 61937 | .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_len), ._, ._ }, |
| 56737 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_umax), ._, ._ }, | 61938 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_umax), ._, ._ }, |
| 56738 | .{ ._, ._, .mov, .tmp2d, .si(0xff), ._, ._ }, | 61939 | .{ ._, ._, .mov, .tmp2d, .si(-1), ._, ._ }, |
| 56739 | .{ ._, ._r, .bs, .tmp2d, .tmp1d, ._, ._ }, | 61940 | .{ ._, ._r, .bs, .tmp2d, .tmp1d, ._, ._ }, |
| 56740 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 61941 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 56741 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, | 61942 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, |
| ... | @@ -56767,7 +61968,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -56767,7 +61968,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 56767 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 61968 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 56768 | .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_len), ._, ._ }, | 61969 | .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_len), ._, ._ }, |
| 56769 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_umax), ._, ._ }, | 61970 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_umax), ._, ._ }, |
| 56770 | .{ ._, ._, .mov, .tmp2d, .si(0xff), ._, ._ }, | 61971 | .{ ._, ._, .mov, .tmp2d, .si(-1), ._, ._ }, |
| 56771 | .{ ._, ._r, .bs, .tmp2d, .tmp1d, ._, ._ }, | 61972 | .{ ._, ._r, .bs, .tmp2d, .tmp1d, ._, ._ }, |
| 56772 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 61973 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 56773 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, | 61974 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, |
| ... | @@ -56798,7 +61999,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -56798,7 +61999,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 56798 | .clobbers = .{ .eflags = true }, | 61999 | .clobbers = .{ .eflags = true }, |
| 56799 | .each = .{ .once = &.{ | 62000 | .each = .{ .once = &.{ |
| 56800 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 62001 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 56801 | .{ ._, ._, .mov, .tmp1d, .si(0xff), ._, ._ }, | 62002 | .{ ._, ._, .mov, .tmp1d, .si(-1), ._, ._ }, |
| 56802 | .{ .@"0:", ._, .movzx, .tmp2d, .memsia(.src0w, .@"2", .tmp0, .add_2_len), ._, ._ }, | 62003 | .{ .@"0:", ._, .movzx, .tmp2d, .memsia(.src0w, .@"2", .tmp0, .add_2_len), ._, ._ }, |
| 56803 | .{ ._, ._, .@"and", .tmp2d, .sa(.src0, .add_umax), ._, ._ }, | 62004 | .{ ._, ._, .@"and", .tmp2d, .sa(.src0, .add_umax), ._, ._ }, |
| 56804 | .{ ._, ._r, .bs, .tmp2d, .tmp2d, ._, ._ }, | 62005 | .{ ._, ._r, .bs, .tmp2d, .tmp2d, ._, ._ }, |
| ... | @@ -56832,7 +62033,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -56832,7 +62033,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 56832 | .clobbers = .{ .eflags = true }, | 62033 | .clobbers = .{ .eflags = true }, |
| 56833 | .each = .{ .once = &.{ | 62034 | .each = .{ .once = &.{ |
| 56834 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 62035 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 56835 | .{ ._, ._, .mov, .tmp1d, .si(0xff), ._, ._ }, | 62036 | .{ ._, ._, .mov, .tmp1d, .si(-1), ._, ._ }, |
| 56836 | .{ .@"0:", ._, .movzx, .tmp2d, .memsia(.src0w, .@"2", .tmp0, .add_2_len), ._, ._ }, | 62037 | .{ .@"0:", ._, .movzx, .tmp2d, .memsia(.src0w, .@"2", .tmp0, .add_2_len), ._, ._ }, |
| 56837 | .{ ._, ._, .@"and", .tmp2d, .sa(.src0, .add_umax), ._, ._ }, | 62038 | .{ ._, ._, .@"and", .tmp2d, .sa(.src0, .add_umax), ._, ._ }, |
| 56838 | .{ ._, ._r, .bs, .tmp2d, .tmp2d, ._, ._ }, | 62039 | .{ ._, ._r, .bs, .tmp2d, .tmp2d, ._, ._ }, |
| ... | @@ -56936,7 +62137,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -56936,7 +62137,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 56936 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 62137 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 56937 | .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0w, .@"2", .tmp0, .add_2_len), ._, ._ }, | 62138 | .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0w, .@"2", .tmp0, .add_2_len), ._, ._ }, |
| 56938 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_umax), ._, ._ }, | 62139 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_umax), ._, ._ }, |
| 56939 | .{ ._, ._, .mov, .tmp2d, .si(0xff), ._, ._ }, | 62140 | .{ ._, ._, .mov, .tmp2d, .si(-1), ._, ._ }, |
| 56940 | .{ ._, ._r, .bs, .tmp2d, .tmp1d, ._, ._ }, | 62141 | .{ ._, ._r, .bs, .tmp2d, .tmp1d, ._, ._ }, |
| 56941 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 62142 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 56942 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, | 62143 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, |
| ... | @@ -56968,7 +62169,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -56968,7 +62169,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 56968 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 62169 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 56969 | .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0w, .@"2", .tmp0, .add_2_len), ._, ._ }, | 62170 | .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0w, .@"2", .tmp0, .add_2_len), ._, ._ }, |
| 56970 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_umax), ._, ._ }, | 62171 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_umax), ._, ._ }, |
| 56971 | .{ ._, ._, .mov, .tmp2d, .si(0xff), ._, ._ }, | 62172 | .{ ._, ._, .mov, .tmp2d, .si(-1), ._, ._ }, |
| 56972 | .{ ._, ._r, .bs, .tmp2d, .tmp1d, ._, ._ }, | 62173 | .{ ._, ._r, .bs, .tmp2d, .tmp1d, ._, ._ }, |
| 56973 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 62174 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 56974 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, | 62175 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, |
| ... | @@ -56999,7 +62200,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -56999,7 +62200,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 56999 | .clobbers = .{ .eflags = true }, | 62200 | .clobbers = .{ .eflags = true }, |
| 57000 | .each = .{ .once = &.{ | 62201 | .each = .{ .once = &.{ |
| 57001 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 62202 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 57002 | .{ ._, ._, .mov, .tmp1d, .si(0xff), ._, ._ }, | 62203 | .{ ._, ._, .mov, .tmp1d, .si(-1), ._, ._ }, |
| 57003 | .{ .@"0:", ._, .mov, .tmp2d, .memsia(.src0d, .@"4", .tmp0, .add_4_len), ._, ._ }, | 62204 | .{ .@"0:", ._, .mov, .tmp2d, .memsia(.src0d, .@"4", .tmp0, .add_4_len), ._, ._ }, |
| 57004 | .{ ._, ._, .@"and", .tmp2d, .sa(.src0, .add_umax), ._, ._ }, | 62205 | .{ ._, ._, .@"and", .tmp2d, .sa(.src0, .add_umax), ._, ._ }, |
| 57005 | .{ ._, ._r, .bs, .tmp2d, .tmp2d, ._, ._ }, | 62206 | .{ ._, ._r, .bs, .tmp2d, .tmp2d, ._, ._ }, |
| ... | @@ -57033,7 +62234,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -57033,7 +62234,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 57033 | .clobbers = .{ .eflags = true }, | 62234 | .clobbers = .{ .eflags = true }, |
| 57034 | .each = .{ .once = &.{ | 62235 | .each = .{ .once = &.{ |
| 57035 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 62236 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 57036 | .{ ._, ._, .mov, .tmp1d, .si(0xff), ._, ._ }, | 62237 | .{ ._, ._, .mov, .tmp1d, .si(-1), ._, ._ }, |
| 57037 | .{ .@"0:", ._, .mov, .tmp2d, .memsia(.src0d, .@"4", .tmp0, .add_4_len), ._, ._ }, | 62238 | .{ .@"0:", ._, .mov, .tmp2d, .memsia(.src0d, .@"4", .tmp0, .add_4_len), ._, ._ }, |
| 57038 | .{ ._, ._, .@"and", .tmp2d, .sa(.src0, .add_umax), ._, ._ }, | 62239 | .{ ._, ._, .@"and", .tmp2d, .sa(.src0, .add_umax), ._, ._ }, |
| 57039 | .{ ._, ._r, .bs, .tmp2d, .tmp2d, ._, ._ }, | 62240 | .{ ._, ._r, .bs, .tmp2d, .tmp2d, ._, ._ }, |
| ... | @@ -57137,7 +62338,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -57137,7 +62338,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 57137 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 62338 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 57138 | .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_4_len), ._, ._ }, | 62339 | .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_4_len), ._, ._ }, |
| 57139 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_umax), ._, ._ }, | 62340 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_umax), ._, ._ }, |
| 57140 | .{ ._, ._, .mov, .tmp2d, .si(0xff), ._, ._ }, | 62341 | .{ ._, ._, .mov, .tmp2d, .si(-1), ._, ._ }, |
| 57141 | .{ ._, ._r, .bs, .tmp2d, .tmp1d, ._, ._ }, | 62342 | .{ ._, ._r, .bs, .tmp2d, .tmp1d, ._, ._ }, |
| 57142 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 62343 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 57143 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, | 62344 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, |
| ... | @@ -57169,7 +62370,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -57169,7 +62370,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 57169 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 62370 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 57170 | .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_4_len), ._, ._ }, | 62371 | .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_4_len), ._, ._ }, |
| 57171 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_umax), ._, ._ }, | 62372 | .{ ._, ._, .@"and", .tmp1d, .sa(.src0, .add_umax), ._, ._ }, |
| 57172 | .{ ._, ._, .mov, .tmp2d, .si(0xff), ._, ._ }, | 62373 | .{ ._, ._, .mov, .tmp2d, .si(-1), ._, ._ }, |
| 57173 | .{ ._, ._r, .bs, .tmp2d, .tmp1d, ._, ._ }, | 62374 | .{ ._, ._r, .bs, .tmp2d, .tmp1d, ._, ._ }, |
| 57174 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 62375 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 57175 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, | 62376 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, |
| ... | @@ -57200,7 +62401,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -57200,7 +62401,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 57200 | .clobbers = .{ .eflags = true }, | 62401 | .clobbers = .{ .eflags = true }, |
| 57201 | .each = .{ .once = &.{ | 62402 | .each = .{ .once = &.{ |
| 57202 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 62403 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 57203 | .{ ._, ._, .mov, .tmp1d, .si(0xff), ._, ._ }, | 62404 | .{ ._, ._, .mov, .tmp1d, .si(-1), ._, ._ }, |
| 57204 | .{ .@"0:", ._, .mov, .tmp2q, .ua(.src0, .add_umax), ._, ._ }, | 62405 | .{ .@"0:", ._, .mov, .tmp2q, .ua(.src0, .add_umax), ._, ._ }, |
| 57205 | .{ ._, ._, .@"and", .tmp2q, .memsia(.src0q, .@"8", .tmp0, .add_8_len), ._, ._ }, | 62406 | .{ ._, ._, .@"and", .tmp2q, .memsia(.src0q, .@"8", .tmp0, .add_8_len), ._, ._ }, |
| 57206 | .{ ._, ._r, .bs, .tmp2q, .tmp2q, ._, ._ }, | 62407 | .{ ._, ._r, .bs, .tmp2q, .tmp2q, ._, ._ }, |
| ... | @@ -57234,7 +62435,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -57234,7 +62435,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 57234 | .clobbers = .{ .eflags = true }, | 62435 | .clobbers = .{ .eflags = true }, |
| 57235 | .each = .{ .once = &.{ | 62436 | .each = .{ .once = &.{ |
| 57236 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 62437 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 57237 | .{ ._, ._, .mov, .tmp1d, .si(0xff), ._, ._ }, | 62438 | .{ ._, ._, .mov, .tmp1d, .si(-1), ._, ._ }, |
| 57238 | .{ .@"0:", ._, .mov, .tmp2q, .ua(.src0, .add_umax), ._, ._ }, | 62439 | .{ .@"0:", ._, .mov, .tmp2q, .ua(.src0, .add_umax), ._, ._ }, |
| 57239 | .{ ._, ._, .@"and", .tmp2q, .memsia(.src0q, .@"8", .tmp0, .add_8_len), ._, ._ }, | 62440 | .{ ._, ._, .@"and", .tmp2q, .memsia(.src0q, .@"8", .tmp0, .add_8_len), ._, ._ }, |
| 57240 | .{ ._, ._r, .bs, .tmp2q, .tmp2q, ._, ._ }, | 62441 | .{ ._, ._r, .bs, .tmp2q, .tmp2q, ._, ._ }, |
| ... | @@ -57338,7 +62539,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -57338,7 +62539,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 57338 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 62539 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 57339 | .{ .@"0:", ._, .mov, .tmp1q, .ua(.src0, .add_umax), ._, ._ }, | 62540 | .{ .@"0:", ._, .mov, .tmp1q, .ua(.src0, .add_umax), ._, ._ }, |
| 57340 | .{ ._, ._, .@"and", .tmp1q, .memsia(.src0q, .@"8", .tmp0, .add_8_len), ._, ._ }, | 62541 | .{ ._, ._, .@"and", .tmp1q, .memsia(.src0q, .@"8", .tmp0, .add_8_len), ._, ._ }, |
| 57341 | .{ ._, ._, .mov, .tmp2d, .si(0xff), ._, ._ }, | 62542 | .{ ._, ._, .mov, .tmp2d, .si(-1), ._, ._ }, |
| 57342 | .{ ._, ._r, .bs, .tmp2q, .tmp1q, ._, ._ }, | 62543 | .{ ._, ._r, .bs, .tmp2q, .tmp1q, ._, ._ }, |
| 57343 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 62544 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 57344 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, | 62545 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, |
| ... | @@ -57371,7 +62572,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -57371,7 +62572,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 57371 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, | 62572 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ }, |
| 57372 | .{ .@"0:", ._, .mov, .tmp1q, .ua(.src0, .add_umax), ._, ._ }, | 62573 | .{ .@"0:", ._, .mov, .tmp1q, .ua(.src0, .add_umax), ._, ._ }, |
| 57373 | .{ ._, ._, .@"and", .tmp1q, .memsia(.src0q, .@"8", .tmp0, .add_8_len), ._, ._ }, | 62574 | .{ ._, ._, .@"and", .tmp1q, .memsia(.src0q, .@"8", .tmp0, .add_8_len), ._, ._ }, |
| 57374 | .{ ._, ._, .mov, .tmp2d, .si(0xff), ._, ._ }, | 62575 | .{ ._, ._, .mov, .tmp2d, .si(-1), ._, ._ }, |
| 57375 | .{ ._, ._r, .bs, .tmp2q, .tmp1q, ._, ._ }, | 62576 | .{ ._, ._r, .bs, .tmp2q, .tmp1q, ._, ._ }, |
| 57376 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, | 62577 | .{ ._, ._, .mov, .tmp1b, .sia(-1, .src0, .add_bit_size), ._, ._ }, |
| 57377 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, | 62578 | .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ }, |
| ... | @@ -59339,7 +64540,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -59339,7 +64540,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 59339 | } }, | 64540 | } }, |
| 59340 | }, .{ | 64541 | }, .{ |
| 59341 | .required_features = .{ .@"64bit", .movbe, null, null }, | 64542 | .required_features = .{ .@"64bit", .movbe, null, null }, |
| 59342 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any }, | 64543 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = 128 } }, .any, .any }, |
| 59343 | .patterns = &.{ | 64544 | .patterns = &.{ |
| 59344 | .{ .src = .{ .to_mem, .none, .none } }, | 64545 | .{ .src = .{ .to_mem, .none, .none } }, |
| 59345 | }, | 64546 | }, |
| ... | @@ -59369,7 +64570,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -59369,7 +64570,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 59369 | } }, | 64570 | } }, |
| 59370 | }, .{ | 64571 | }, .{ |
| 59371 | .required_features = .{ .@"64bit", null, null, null }, | 64572 | .required_features = .{ .@"64bit", null, null, null }, |
| 59372 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any }, | 64573 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = 128 } }, .any, .any }, |
| 59373 | .patterns = &.{ | 64574 | .patterns = &.{ |
| 59374 | .{ .src = .{ .to_mem, .none, .none } }, | 64575 | .{ .src = .{ .to_mem, .none, .none } }, |
| 59375 | }, | 64576 | }, |
| ... | @@ -59400,7 +64601,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -59400,7 +64601,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 59400 | } }, | 64601 | } }, |
| 59401 | }, .{ | 64602 | }, .{ |
| 59402 | .required_features = .{ .@"64bit", .movbe, null, null }, | 64603 | .required_features = .{ .@"64bit", .movbe, null, null }, |
| 59403 | .src_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, | 64604 | .src_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, .any, .any }, |
| 59404 | .patterns = &.{ | 64605 | .patterns = &.{ |
| 59405 | .{ .src = .{ .to_mem, .none, .none } }, | 64606 | .{ .src = .{ .to_mem, .none, .none } }, |
| 59406 | }, | 64607 | }, |
| ... | @@ -59433,7 +64634,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -59433,7 +64634,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 59433 | } }, | 64634 | } }, |
| 59434 | }, .{ | 64635 | }, .{ |
| 59435 | .required_features = .{ .@"64bit", null, null, null }, | 64636 | .required_features = .{ .@"64bit", null, null, null }, |
| 59436 | .src_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, | 64637 | .src_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, .any, .any }, |
| 59437 | .patterns = &.{ | 64638 | .patterns = &.{ |
| 59438 | .{ .src = .{ .to_mem, .none, .none } }, | 64639 | .{ .src = .{ .to_mem, .none, .none } }, |
| 59439 | }, | 64640 | }, |
| ... | @@ -59467,7 +64668,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -59467,7 +64668,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 59467 | } }, | 64668 | } }, |
| 59468 | }, .{ | 64669 | }, .{ |
| 59469 | .required_features = .{ .@"64bit", .movbe, null, null }, | 64670 | .required_features = .{ .@"64bit", .movbe, null, null }, |
| 59470 | .src_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, | 64671 | .src_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, .any, .any }, |
| 59471 | .patterns = &.{ | 64672 | .patterns = &.{ |
| 59472 | .{ .src = .{ .to_mem, .none, .none } }, | 64673 | .{ .src = .{ .to_mem, .none, .none } }, |
| 59473 | }, | 64674 | }, |
| ... | @@ -59498,7 +64699,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -59498,7 +64699,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 59498 | } }, | 64699 | } }, |
| 59499 | }, .{ | 64700 | }, .{ |
| 59500 | .required_features = .{ .@"64bit", null, null, null }, | 64701 | .required_features = .{ .@"64bit", null, null, null }, |
| 59501 | .src_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, | 64702 | .src_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, .any, .any }, |
| 59502 | .patterns = &.{ | 64703 | .patterns = &.{ |
| 59503 | .{ .src = .{ .to_mem, .none, .none } }, | 64704 | .{ .src = .{ .to_mem, .none, .none } }, |
| 59504 | }, | 64705 | }, |
| ... | @@ -62067,7 +67268,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -62067,7 +67268,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 62067 | } }, | 67268 | } }, |
| 62068 | }, .{ | 67269 | }, .{ |
| 62069 | .required_features = .{ .avx2, .gfni, null, null }, | 67270 | .required_features = .{ .avx2, .gfni, null, null }, |
| 62070 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .yword, .is = .yword } }, .any, .any }, | 67271 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .yword, .is = 256 } }, .any, .any }, |
| 62071 | .patterns = &.{ | 67272 | .patterns = &.{ |
| 62072 | .{ .src = .{ .to_mem, .none, .none } }, | 67273 | .{ .src = .{ .to_mem, .none, .none } }, |
| 62073 | }, | 67274 | }, |
| ... | @@ -62103,7 +67304,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -62103,7 +67304,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 62103 | } }, | 67304 | } }, |
| 62104 | }, .{ | 67305 | }, .{ |
| 62105 | .required_features = .{ .avx, .gfni, null, null }, | 67306 | .required_features = .{ .avx, .gfni, null, null }, |
| 62106 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .yword, .is = .yword } }, .any, .any }, | 67307 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .yword, .is = 256 } }, .any, .any }, |
| 62107 | .patterns = &.{ | 67308 | .patterns = &.{ |
| 62108 | .{ .src = .{ .to_mem, .none, .none } }, | 67309 | .{ .src = .{ .to_mem, .none, .none } }, |
| 62109 | }, | 67310 | }, |
| ... | @@ -62139,7 +67340,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -62139,7 +67340,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 62139 | } }, | 67340 | } }, |
| 62140 | }, .{ | 67341 | }, .{ |
| 62141 | .required_features = .{ .avx, .gfni, null, null }, | 67342 | .required_features = .{ .avx, .gfni, null, null }, |
| 62142 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any }, | 67343 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = 128 } }, .any, .any }, |
| 62143 | .patterns = &.{ | 67344 | .patterns = &.{ |
| 62144 | .{ .src = .{ .to_mem, .none, .none } }, | 67345 | .{ .src = .{ .to_mem, .none, .none } }, |
| 62145 | }, | 67346 | }, |
| ... | @@ -62175,7 +67376,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -62175,7 +67376,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 62175 | } }, | 67376 | } }, |
| 62176 | }, .{ | 67377 | }, .{ |
| 62177 | .required_features = .{ .@"64bit", .movbe, null, null }, | 67378 | .required_features = .{ .@"64bit", .movbe, null, null }, |
| 62178 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any }, | 67379 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = 128 } }, .any, .any }, |
| 62179 | .patterns = &.{ | 67380 | .patterns = &.{ |
| 62180 | .{ .src = .{ .to_mem, .none, .none } }, | 67381 | .{ .src = .{ .to_mem, .none, .none } }, |
| 62181 | }, | 67382 | }, |
| ... | @@ -62226,7 +67427,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -62226,7 +67427,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 62226 | } }, | 67427 | } }, |
| 62227 | }, .{ | 67428 | }, .{ |
| 62228 | .required_features = .{ .@"64bit", null, null, null }, | 67429 | .required_features = .{ .@"64bit", null, null, null }, |
| 62229 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any }, | 67430 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = 128 } }, .any, .any }, |
| 62230 | .patterns = &.{ | 67431 | .patterns = &.{ |
| 62231 | .{ .src = .{ .to_mem, .none, .none } }, | 67432 | .{ .src = .{ .to_mem, .none, .none } }, |
| 62232 | }, | 67433 | }, |
| ... | @@ -62278,7 +67479,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -62278,7 +67479,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 62278 | } }, | 67479 | } }, |
| 62279 | }, .{ | 67480 | }, .{ |
| 62280 | .required_features = .{ .@"64bit", .movbe, null, null }, | 67481 | .required_features = .{ .@"64bit", .movbe, null, null }, |
| 62281 | .src_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, | 67482 | .src_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, .any, .any }, |
| 62282 | .patterns = &.{ | 67483 | .patterns = &.{ |
| 62283 | .{ .src = .{ .to_mem, .none, .none } }, | 67484 | .{ .src = .{ .to_mem, .none, .none } }, |
| 62284 | }, | 67485 | }, |
| ... | @@ -62333,7 +67534,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -62333,7 +67534,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 62333 | } }, | 67534 | } }, |
| 62334 | }, .{ | 67535 | }, .{ |
| 62335 | .required_features = .{ .@"64bit", null, null, null }, | 67536 | .required_features = .{ .@"64bit", null, null, null }, |
| 62336 | .src_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, | 67537 | .src_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, .any, .any }, |
| 62337 | .patterns = &.{ | 67538 | .patterns = &.{ |
| 62338 | .{ .src = .{ .to_mem, .none, .none } }, | 67539 | .{ .src = .{ .to_mem, .none, .none } }, |
| 62339 | }, | 67540 | }, |
| ... | @@ -62389,7 +67590,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -62389,7 +67590,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 62389 | } }, | 67590 | } }, |
| 62390 | }, .{ | 67591 | }, .{ |
| 62391 | .required_features = .{ .@"64bit", .movbe, null, null }, | 67592 | .required_features = .{ .@"64bit", .movbe, null, null }, |
| 62392 | .src_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, | 67593 | .src_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, .any, .any }, |
| 62393 | .patterns = &.{ | 67594 | .patterns = &.{ |
| 62394 | .{ .src = .{ .to_mem, .none, .none } }, | 67595 | .{ .src = .{ .to_mem, .none, .none } }, |
| 62395 | }, | 67596 | }, |
| ... | @@ -62441,7 +67642,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -62441,7 +67642,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 62441 | } }, | 67642 | } }, |
| 62442 | }, .{ | 67643 | }, .{ |
| 62443 | .required_features = .{ .@"64bit", null, null, null }, | 67644 | .required_features = .{ .@"64bit", null, null, null }, |
| 62444 | .src_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, | 67645 | .src_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, .any, .any }, |
| 62445 | .patterns = &.{ | 67646 | .patterns = &.{ |
| 62446 | .{ .src = .{ .to_mem, .none, .none } }, | 67647 | .{ .src = .{ .to_mem, .none, .none } }, |
| 62447 | }, | 67648 | }, |
| ... | @@ -64694,7 +69895,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -64694,7 +69895,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 64694 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, | 69895 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 64695 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, | 69896 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 64696 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, | 69897 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 64697 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 69898 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 64698 | .unused, | 69899 | .unused, |
| 64699 | .unused, | 69900 | .unused, |
| 64700 | .unused, | 69901 | .unused, |
| ... | @@ -64713,8 +69914,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -64713,8 +69914,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 64713 | .{ ._, .fn_sw, .st, .tmp6w, ._, ._, ._ }, | 69914 | .{ ._, .fn_sw, .st, .tmp6w, ._, ._, ._ }, |
| 64714 | switch (cc) { | 69915 | switch (cc) { |
| 64715 | else => unreachable, | 69916 | else => unreachable, |
| 64716 | .l => .{ ._, ._, .@"test", .tmp6b, .si(0b1_000_001), ._, ._ }, | 69917 | .l => .{ ._, ._, .@"test", .tmp6h, .si(0b1_000_001), ._, ._ }, |
| 64717 | .le => .{ ._, ._r, .sh, .tmp6b, .ui(1), ._, ._ }, | 69918 | .le => .{ ._, ._r, .sh, .tmp6h, .ui(1), ._, ._ }, |
| 64718 | }, | 69919 | }, |
| 64719 | .{ ._, .fromCond(switch (cc) { | 69920 | .{ ._, .fromCond(switch (cc) { |
| 64720 | else => unreachable, | 69921 | else => unreachable, |
| ... | @@ -64864,7 +70065,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -64864,7 +70065,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 64864 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, | 70065 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 64865 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 70066 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 64866 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 70067 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 64867 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 70068 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 64868 | .unused, | 70069 | .unused, |
| 64869 | .unused, | 70070 | .unused, |
| 64870 | .unused, | 70071 | .unused, |
| ... | @@ -64883,8 +70084,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -64883,8 +70084,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 64883 | .{ ._, .fn_sw, .st, .tmp6w, ._, ._, ._ }, | 70084 | .{ ._, .fn_sw, .st, .tmp6w, ._, ._, ._ }, |
| 64884 | switch (cc) { | 70085 | switch (cc) { |
| 64885 | else => unreachable, | 70086 | else => unreachable, |
| 64886 | .l => .{ ._, ._, .@"test", .tmp6b, .si(0b1_000_001), ._, ._ }, | 70087 | .l => .{ ._, ._, .@"test", .tmp6h, .si(0b1_000_001), ._, ._ }, |
| 64887 | .le => .{ ._, ._r, .sh, .tmp6b, .ui(1), ._, ._ }, | 70088 | .le => .{ ._, ._r, .sh, .tmp6h, .ui(1), ._, ._ }, |
| 64888 | }, | 70089 | }, |
| 64889 | .{ ._, .fromCond(switch (cc) { | 70090 | .{ ._, .fromCond(switch (cc) { |
| 64890 | else => unreachable, | 70091 | else => unreachable, |
| ... | @@ -69216,7 +74417,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -69216,7 +74417,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69216 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, | 74417 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 69217 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, | 74418 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 69218 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, | 74419 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 69219 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 74420 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 69220 | .unused, | 74421 | .unused, |
| 69221 | .unused, | 74422 | .unused, |
| 69222 | .unused, | 74423 | .unused, |
| ... | @@ -69233,8 +74434,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -69233,8 +74434,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69233 | .{ ._, .f_, .ld, .memia(.src0q, .tmp0, .add_size), ._, ._, ._ }, | 74434 | .{ ._, .f_, .ld, .memia(.src0q, .tmp0, .add_size), ._, ._, ._ }, |
| 69234 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, | 74435 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, |
| 69235 | .{ ._, .fn_sw, .st, .tmp6w, ._, ._, ._ }, | 74436 | .{ ._, .fn_sw, .st, .tmp6w, ._, ._, ._ }, |
| 69236 | .{ ._, ._, .xor, .tmp6b, .si(0b1_000_000), ._, ._ }, | 74437 | .{ ._, ._, .xor, .tmp6h, .si(0b1_000_000), ._, ._ }, |
| 69237 | .{ ._, ._, .@"test", .tmp6b, .si(0b1_000_100), ._, ._ }, | 74438 | .{ ._, ._, .@"test", .tmp6h, .si(0b1_000_100), ._, ._ }, |
| 69238 | .{ ._, .fromCond(cc), .set, .tmp3b, ._, ._, ._ }, | 74439 | .{ ._, .fromCond(cc), .set, .tmp3b, ._, ._, ._ }, |
| 69239 | .{ ._, ._l, .ro, .tmp3b, .tmp1b, ._, ._ }, | 74440 | .{ ._, ._l, .ro, .tmp3b, .tmp1b, ._, ._ }, |
| 69240 | .{ ._, ._, .@"or", .tmp2b, .tmp3b, ._, ._ }, | 74441 | .{ ._, ._, .@"or", .tmp2b, .tmp3b, ._, ._ }, |
| ... | @@ -69393,7 +74594,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -69393,7 +74594,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69393 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, | 74594 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 69394 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 74595 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 69395 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 74596 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 69396 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 74597 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 69397 | .unused, | 74598 | .unused, |
| 69398 | .unused, | 74599 | .unused, |
| 69399 | .unused, | 74600 | .unused, |
| ... | @@ -69410,8 +74611,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -69410,8 +74611,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69410 | .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ }, | 74611 | .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ }, |
| 69411 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, | 74612 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, |
| 69412 | .{ ._, .fn_sw, .st, .tmp6w, ._, ._, ._ }, | 74613 | .{ ._, .fn_sw, .st, .tmp6w, ._, ._, ._ }, |
| 69413 | .{ ._, ._, .xor, .tmp6b, .si(0b1_000_000), ._, ._ }, | 74614 | .{ ._, ._, .xor, .tmp6h, .si(0b1_000_000), ._, ._ }, |
| 69414 | .{ ._, ._, .@"test", .tmp6b, .si(0b1_000_100), ._, ._ }, | 74615 | .{ ._, ._, .@"test", .tmp6h, .si(0b1_000_100), ._, ._ }, |
| 69415 | .{ ._, .fromCond(cc), .set, .tmp3b, ._, ._, ._ }, | 74616 | .{ ._, .fromCond(cc), .set, .tmp3b, ._, ._, ._ }, |
| 69416 | .{ ._, ._l, .ro, .tmp3b, .tmp1b, ._, ._ }, | 74617 | .{ ._, ._l, .ro, .tmp3b, .tmp1b, ._, ._ }, |
| 69417 | .{ ._, ._, .@"or", .tmp2b, .tmp3b, ._, ._ }, | 74618 | .{ ._, ._, .@"or", .tmp2b, .tmp3b, ._, ._ }, |
| ... | @@ -74953,7 +80154,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -74953,7 +80154,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 74953 | .extra_temps = .{ | 80154 | .extra_temps = .{ |
| 74954 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, | 80155 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 74955 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, | 80156 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 74956 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 80157 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 74957 | .unused, | 80158 | .unused, |
| 74958 | .unused, | 80159 | .unused, |
| 74959 | .unused, | 80160 | .unused, |
| ... | @@ -74984,7 +80185,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -74984,7 +80185,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 74984 | .extra_temps = .{ | 80185 | .extra_temps = .{ |
| 74985 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, | 80186 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 74986 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, | 80187 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 74987 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 80188 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 74988 | .unused, | 80189 | .unused, |
| 74989 | .unused, | 80190 | .unused, |
| 74990 | .unused, | 80191 | .unused, |
| ... | @@ -75005,8 +80206,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75005,8 +80206,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75005 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, | 80206 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, |
| 75006 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, | 80207 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, |
| 75007 | switch (strict) { | 80208 | switch (strict) { |
| 75008 | true => .{ ._, ._, .@"test", .tmp2b, .si(0b1_000_001), ._, ._ }, | 80209 | true => .{ ._, ._, .@"test", .tmp2h, .si(0b1_000_001), ._, ._ }, |
| 75009 | false => .{ ._, ._r, .sh, .tmp2b, .ui(1), ._, ._ }, | 80210 | false => .{ ._, ._r, .sh, .tmp2h, .ui(1), ._, ._ }, |
| 75010 | }, | 80211 | }, |
| 75011 | } }, | 80212 | } }, |
| 75012 | }, .{ | 80213 | }, .{ |
| ... | @@ -75047,7 +80248,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75047,7 +80248,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75047 | .extra_temps = .{ | 80248 | .extra_temps = .{ |
| 75048 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 80249 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 75049 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 80250 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 75050 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 80251 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 75051 | .unused, | 80252 | .unused, |
| 75052 | .unused, | 80253 | .unused, |
| 75053 | .unused, | 80254 | .unused, |
| ... | @@ -75079,7 +80280,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75079,7 +80280,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75079 | .extra_temps = .{ | 80280 | .extra_temps = .{ |
| 75080 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 80281 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 75081 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 80282 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 75082 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 80283 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 75083 | .unused, | 80284 | .unused, |
| 75084 | .unused, | 80285 | .unused, |
| 75085 | .unused, | 80286 | .unused, |
| ... | @@ -75109,7 +80310,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75109,7 +80310,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75109 | .extra_temps = .{ | 80310 | .extra_temps = .{ |
| 75110 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 80311 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 75111 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 80312 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 75112 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 80313 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 75113 | .unused, | 80314 | .unused, |
| 75114 | .unused, | 80315 | .unused, |
| 75115 | .unused, | 80316 | .unused, |
| ... | @@ -75130,8 +80331,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75130,8 +80331,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75130 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, | 80331 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, |
| 75131 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, | 80332 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, |
| 75132 | switch (strict) { | 80333 | switch (strict) { |
| 75133 | true => .{ ._, ._, .@"test", .tmp2b, .si(0b1_000_001), ._, ._ }, | 80334 | true => .{ ._, ._, .@"test", .tmp2h, .si(0b1_000_001), ._, ._ }, |
| 75134 | false => .{ ._, ._r, .sh, .tmp2b, .ui(1), ._, ._ }, | 80335 | false => .{ ._, ._r, .sh, .tmp2h, .ui(1), ._, ._ }, |
| 75135 | }, | 80336 | }, |
| 75136 | } }, | 80337 | } }, |
| 75137 | }, .{ | 80338 | }, .{ |
| ... | @@ -75144,7 +80345,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75144,7 +80345,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75144 | .extra_temps = .{ | 80345 | .extra_temps = .{ |
| 75145 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 80346 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 75146 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 80347 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 75147 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 80348 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 75148 | .unused, | 80349 | .unused, |
| 75149 | .unused, | 80350 | .unused, |
| 75150 | .unused, | 80351 | .unused, |
| ... | @@ -75164,8 +80365,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75164,8 +80365,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75164 | .{ ._, .f_p, .ucom, .src1t, ._, ._, ._ }, | 80365 | .{ ._, .f_p, .ucom, .src1t, ._, ._, ._ }, |
| 75165 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, | 80366 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, |
| 75166 | switch (strict) { | 80367 | switch (strict) { |
| 75167 | true => .{ ._, ._, .@"test", .tmp2b, .si(0b1_000_001), ._, ._ }, | 80368 | true => .{ ._, ._, .@"test", .tmp2h, .si(0b1_000_001), ._, ._ }, |
| 75168 | false => .{ ._, ._r, .sh, .tmp2b, .ui(1), ._, ._ }, | 80369 | false => .{ ._, ._r, .sh, .tmp2h, .ui(1), ._, ._ }, |
| 75169 | }, | 80370 | }, |
| 75170 | } }, | 80371 | } }, |
| 75171 | }, .{ | 80372 | }, .{ |
| ... | @@ -75458,7 +80659,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75458,7 +80659,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75458 | .extra_temps = .{ | 80659 | .extra_temps = .{ |
| 75459 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, | 80660 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 75460 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, | 80661 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 75461 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 80662 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 75462 | .unused, | 80663 | .unused, |
| 75463 | .unused, | 80664 | .unused, |
| 75464 | .unused, | 80665 | .unused, |
| ... | @@ -75489,7 +80690,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75489,7 +80690,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75489 | .extra_temps = .{ | 80690 | .extra_temps = .{ |
| 75490 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, | 80691 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 75491 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, | 80692 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 75492 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 80693 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 75493 | .unused, | 80694 | .unused, |
| 75494 | .unused, | 80695 | .unused, |
| 75495 | .unused, | 80696 | .unused, |
| ... | @@ -75510,15 +80711,15 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75510,15 +80711,15 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75510 | .{ ._, .f_, .ld, .src0q, ._, ._, ._ }, | 80711 | .{ ._, .f_, .ld, .src0q, ._, ._, ._ }, |
| 75511 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, | 80712 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, |
| 75512 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, | 80713 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, |
| 75513 | .{ ._, ._, .xor, .tmp2b, .si(0b1_000_000), ._, ._ }, | 80714 | .{ ._, ._, .xor, .tmp2h, .si(0b1_000_000), ._, ._ }, |
| 75514 | .{ ._, ._, .@"test", .tmp2b, .si(0b1_000_100), ._, ._ }, | 80715 | .{ ._, ._, .@"test", .tmp2h, .si(0b1_000_100), ._, ._ }, |
| 75515 | }, | 80716 | }, |
| 75516 | true => &.{ | 80717 | true => &.{ |
| 75517 | .{ ._, .f_, .ld, .src1q, ._, ._, ._ }, | 80718 | .{ ._, .f_, .ld, .src1q, ._, ._, ._ }, |
| 75518 | .{ ._, .f_, .ld, .src0q, ._, ._, ._ }, | 80719 | .{ ._, .f_, .ld, .src0q, ._, ._, ._ }, |
| 75519 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, | 80720 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, |
| 75520 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, | 80721 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, |
| 75521 | .{ ._, ._, .@"test", .tmp2b, .si(0b1_000_000), ._, ._ }, | 80722 | .{ ._, ._, .@"test", .tmp2h, .si(0b1_000_000), ._, ._ }, |
| 75522 | }, | 80723 | }, |
| 75523 | } }, | 80724 | } }, |
| 75524 | }, .{ | 80725 | }, .{ |
| ... | @@ -75560,7 +80761,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75560,7 +80761,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75560 | .extra_temps = .{ | 80761 | .extra_temps = .{ |
| 75561 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 80762 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 75562 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 80763 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 75563 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 80764 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 75564 | .unused, | 80765 | .unused, |
| 75565 | .unused, | 80766 | .unused, |
| 75566 | .unused, | 80767 | .unused, |
| ... | @@ -75593,7 +80794,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75593,7 +80794,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75593 | .extra_temps = .{ | 80794 | .extra_temps = .{ |
| 75594 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 80795 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 75595 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 80796 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 75596 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 80797 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 75597 | .unused, | 80798 | .unused, |
| 75598 | .unused, | 80799 | .unused, |
| 75599 | .unused, | 80800 | .unused, |
| ... | @@ -75623,7 +80824,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75623,7 +80824,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75623 | .extra_temps = .{ | 80824 | .extra_temps = .{ |
| 75624 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 80825 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 75625 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 80826 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 75626 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 80827 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 75627 | .unused, | 80828 | .unused, |
| 75628 | .unused, | 80829 | .unused, |
| 75629 | .unused, | 80830 | .unused, |
| ... | @@ -75644,15 +80845,15 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75644,15 +80845,15 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75644 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, | 80845 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| 75645 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, | 80846 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, |
| 75646 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, | 80847 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, |
| 75647 | .{ ._, ._, .xor, .tmp2b, .si(0b1_000_000), ._, ._ }, | 80848 | .{ ._, ._, .xor, .tmp2h, .si(0b1_000_000), ._, ._ }, |
| 75648 | .{ ._, ._, .@"test", .tmp2b, .si(0b1_000_100), ._, ._ }, | 80849 | .{ ._, ._, .@"test", .tmp2h, .si(0b1_000_100), ._, ._ }, |
| 75649 | }, | 80850 | }, |
| 75650 | true => &.{ | 80851 | true => &.{ |
| 75651 | .{ ._, .f_, .ld, .src1t, ._, ._, ._ }, | 80852 | .{ ._, .f_, .ld, .src1t, ._, ._, ._ }, |
| 75652 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, | 80853 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| 75653 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, | 80854 | .{ ._, .f_pp, .ucom, ._, ._, ._, ._ }, |
| 75654 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, | 80855 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, |
| 75655 | .{ ._, ._, .@"test", .tmp2b, .si(0b1_000_000), ._, ._ }, | 80856 | .{ ._, ._, .@"test", .tmp2h, .si(0b1_000_000), ._, ._ }, |
| 75656 | }, | 80857 | }, |
| 75657 | } }, | 80858 | } }, |
| 75658 | }, .{ | 80859 | }, .{ |
| ... | @@ -75666,7 +80867,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75666,7 +80867,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75666 | .extra_temps = .{ | 80867 | .extra_temps = .{ |
| 75667 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, | 80868 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 75668 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, | 80869 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 75669 | .{ .type = .u8, .kind = .{ .reg = .ah } }, | 80870 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 75670 | .unused, | 80871 | .unused, |
| 75671 | .unused, | 80872 | .unused, |
| 75672 | .unused, | 80873 | .unused, |
| ... | @@ -75686,14 +80887,14 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -75686,14 +80887,14 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 75686 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, | 80887 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| 75687 | .{ ._, .f_p, .ucom, .src1t, ._, ._, ._ }, | 80888 | .{ ._, .f_p, .ucom, .src1t, ._, ._, ._ }, |
| 75688 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, | 80889 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, |
| 75689 | .{ ._, ._, .xor, .tmp2b, .si(0b1_000_000), ._, ._ }, | 80890 | .{ ._, ._, .xor, .tmp2h, .si(0b1_000_000), ._, ._ }, |
| 75690 | .{ ._, ._, .@"test", .tmp2b, .si(0b1_000_100), ._, ._ }, | 80891 | .{ ._, ._, .@"test", .tmp2h, .si(0b1_000_100), ._, ._ }, |
| 75691 | }, | 80892 | }, |
| 75692 | true => &.{ | 80893 | true => &.{ |
| 75693 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, | 80894 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| 75694 | .{ ._, .f_p, .ucom, .src1t, ._, ._, ._ }, | 80895 | .{ ._, .f_p, .ucom, .src1t, ._, ._, ._ }, |
| 75695 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, | 80896 | .{ ._, .fn_sw, .st, .tmp2w, ._, ._, ._ }, |
| 75696 | .{ ._, ._, .@"test", .tmp2b, .si(0b1_000_000), ._, ._ }, | 80897 | .{ ._, ._, .@"test", .tmp2h, .si(0b1_000_000), ._, ._ }, |
| 75697 | }, | 80898 | }, |
| 75698 | } }, | 80899 | } }, |
| 75699 | }, .{ | 80900 | }, .{ |
| ... | @@ -83848,7 +89049,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -83848,7 +89049,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 83848 | }, .{ | 89049 | }, .{ |
| 83849 | .required_features = .{ .@"64bit", null, null, null }, | 89050 | .required_features = .{ .@"64bit", null, null, null }, |
| 83850 | .src_constraints = .{ .any_int, .any, .any }, | 89051 | .src_constraints = .{ .any_int, .any, .any }, |
| 83851 | .dst_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any }, | 89052 | .dst_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = 128 } }, .any }, |
| 83852 | .patterns = &.{ | 89053 | .patterns = &.{ |
| 83853 | .{ .src = .{ .to_mem, .none, .none } }, | 89054 | .{ .src = .{ .to_mem, .none, .none } }, |
| 83854 | }, | 89055 | }, |
| ... | @@ -83875,7 +89076,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -83875,7 +89076,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 83875 | }, .{ | 89076 | }, .{ |
| 83876 | .required_features = .{ .@"64bit", null, null, null }, | 89077 | .required_features = .{ .@"64bit", null, null, null }, |
| 83877 | .src_constraints = .{ .any_signed_int, .any, .any }, | 89078 | .src_constraints = .{ .any_signed_int, .any, .any }, |
| 83878 | .dst_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, .any }, | 89079 | .dst_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, .any }, |
| 83879 | .patterns = &.{ | 89080 | .patterns = &.{ |
| 83880 | .{ .src = .{ .to_mem, .none, .none } }, | 89081 | .{ .src = .{ .to_mem, .none, .none } }, |
| 83881 | }, | 89082 | }, |
| ... | @@ -83973,7 +89174,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -83973,7 +89174,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 83973 | }, .{ | 89174 | }, .{ |
| 83974 | .required_features = .{ .@"64bit", null, null, null }, | 89175 | .required_features = .{ .@"64bit", null, null, null }, |
| 83975 | .src_constraints = .{ .any_unsigned_int, .any, .any }, | 89176 | .src_constraints = .{ .any_unsigned_int, .any, .any }, |
| 83976 | .dst_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, .any }, | 89177 | .dst_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, .any }, |
| 83977 | .patterns = &.{ | 89178 | .patterns = &.{ |
| 83978 | .{ .src = .{ .to_mem, .none, .none } }, | 89179 | .{ .src = .{ .to_mem, .none, .none } }, |
| 83979 | }, | 89180 | }, |
| ... | @@ -110484,7 +115685,8 @@ fn regClassForType(self: *CodeGen, ty: Type) Register.Class { | ... | @@ -110484,7 +115685,8 @@ fn regClassForType(self: *CodeGen, ty: Type) Register.Class { |
| 110484 | fn regSetForRegClass(rc: Register.Class) RegisterManager.RegisterBitSet { | 115685 | fn regSetForRegClass(rc: Register.Class) RegisterManager.RegisterBitSet { |
| 110485 | return switch (rc) { | 115686 | return switch (rc) { |
| 110486 | .general_purpose => abi.RegisterClass.gp, | 115687 | .general_purpose => abi.RegisterClass.gp, |
| 110487 | .gphi, .segment, .ip, .cr, .dr => unreachable, | 115688 | .gphi => abi.RegisterClass.gphi, |
| | 115689 | .segment, .ip, .cr, .dr => unreachable, |
| 110488 | .x87 => abi.RegisterClass.x87, | 115690 | .x87 => abi.RegisterClass.x87, |
| 110489 | .mmx => @panic("TODO"), | 115691 | .mmx => @panic("TODO"), |
| 110490 | .sse => abi.RegisterClass.sse, | 115692 | .sse => abi.RegisterClass.sse, |
| ... | @@ -122498,10 +127700,7 @@ fn airAsm(self: *CodeGen, inst: Air.Inst.Index) !void { | ... | @@ -122498,10 +127700,7 @@ fn airAsm(self: *CodeGen, inst: Air.Inst.Index) !void { |
| 122498 | else | 127700 | else |
| 122499 | return self.fail("invalid modifier: '{s}'", .{modifier}), | 127701 | return self.fail("invalid modifier: '{s}'", .{modifier}), |
| 122500 | .register => |reg| if (std.mem.eql(u8, modifier, "")) | 127702 | .register => |reg| if (std.mem.eql(u8, modifier, "")) |
| 122501 | .{ .reg = if (mnem_size.use()) |size| | 127703 | .{ .reg = if (mnem_size.use()) |size| reg.toSize(size, self.target) else reg } |
| 122502 | registerAlias(reg, @intCast(@divExact(size.bitSize(self.target), 8))) | | |
| 122503 | else | | |
| 122504 | reg } | | |
| 122505 | else | 127704 | else |
| 122506 | return self.fail("invalid modifier: '{s}'", .{modifier}), | 127705 | return self.fail("invalid modifier: '{s}'", .{modifier}), |
| 122507 | .memory => |addr| if (std.mem.eql(u8, modifier, "") or std.mem.eql(u8, modifier, "P")) | 127706 | .memory => |addr| if (std.mem.eql(u8, modifier, "") or std.mem.eql(u8, modifier, "P")) |
| ... | @@ -122887,11 +128086,7 @@ const MoveStrategy = union(enum) { | ... | @@ -122887,11 +128086,7 @@ const MoveStrategy = union(enum) { |
| 122887 | .move_through_gpr => { | 128086 | .move_through_gpr => { |
| 122888 | const tmp_reg = try cg.register_manager.allocReg(null, abi.RegisterClass.gp); | 128087 | const tmp_reg = try cg.register_manager.allocReg(null, abi.RegisterClass.gp); |
| 122889 | try cg.asmRegisterRegister(.{ ._d, .mov }, tmp_reg.to32(), src_reg.to128()); | 128088 | try cg.asmRegisterRegister(.{ ._d, .mov }, tmp_reg.to32(), src_reg.to128()); |
| 122890 | try cg.asmMemoryRegister( | 128089 | try cg.asmMemoryRegister(.{ ._, .mov }, dst_mem, tmp_reg.toSize(dst_mem.mod.rm.size, cg.target)); |
| 122891 | .{ ._, .mov }, | | |
| 122892 | dst_mem, | | |
| 122893 | registerAlias(tmp_reg, @intCast(@divExact(dst_mem.mod.rm.size.bitSize(cg.target), 8))), | | |
| 122894 | ); | | |
| 122895 | }, | 128090 | }, |
| 122896 | .load_store_through_frame => { | 128091 | .load_store_through_frame => { |
| 122897 | const tmp_frame_index = try cg.allocFrameIndex(.init(.{ | 128092 | const tmp_frame_index = try cg.allocFrameIndex(.init(.{ |
| ... | @@ -129941,7 +135136,7 @@ const Temp = struct { | ... | @@ -129941,7 +135136,7 @@ const Temp = struct { |
| 129941 | .{ ._, ._, .@"and", .dst0q, .tmp0q, ._, ._ }, | 135136 | .{ ._, ._, .@"and", .dst0q, .tmp0q, ._, ._ }, |
| 129942 | } }, | 135137 | } }, |
| 129943 | }, .{ | 135138 | }, .{ |
| 129944 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any }, | 135139 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = 128 } }, .any, .any }, |
| 129945 | .patterns = &.{ | 135140 | .patterns = &.{ |
| 129946 | .{ .src = .{ .mut_mem, .none, .none } }, | 135141 | .{ .src = .{ .mut_mem, .none, .none } }, |
| 129947 | }, | 135142 | }, |
| ... | @@ -129949,7 +135144,7 @@ const Temp = struct { | ... | @@ -129949,7 +135144,7 @@ const Temp = struct { |
| 129949 | .each = .{ .once = &.{} }, | 135144 | .each = .{ .once = &.{} }, |
| 129950 | }, .{ | 135145 | }, .{ |
| 129951 | .required_features = .{ .@"64bit", null, null, null }, | 135146 | .required_features = .{ .@"64bit", null, null, null }, |
| 129952 | .src_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, | 135147 | .src_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, .any, .any }, |
| 129953 | .patterns = &.{ | 135148 | .patterns = &.{ |
| 129954 | .{ .src = .{ .mut_mem, .none, .none } }, | 135149 | .{ .src = .{ .mut_mem, .none, .none } }, |
| 129955 | }, | 135150 | }, |
| ... | @@ -129975,7 +135170,7 @@ const Temp = struct { | ... | @@ -129975,7 +135170,7 @@ const Temp = struct { |
| 129975 | } }, | 135170 | } }, |
| 129976 | }, .{ | 135171 | }, .{ |
| 129977 | .required_features = .{ .@"64bit", null, null, null }, | 135172 | .required_features = .{ .@"64bit", null, null, null }, |
| 129978 | .src_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, | 135173 | .src_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, .any, .any }, |
| 129979 | .patterns = &.{ | 135174 | .patterns = &.{ |
| 129980 | .{ .src = .{ .mut_mem, .none, .none } }, | 135175 | .{ .src = .{ .mut_mem, .none, .none } }, |
| 129981 | }, | 135176 | }, |
| ... | @@ -132752,7 +137947,7 @@ const Temp = struct { | ... | @@ -132752,7 +137947,7 @@ const Temp = struct { |
| 132752 | .{ ._, .p_, .xor, .src0x, .src1x, ._, ._ }, | 137947 | .{ ._, .p_, .xor, .src0x, .src1x, ._, ._ }, |
| 132753 | .{ ._, .p_b, .cmpeq, .tmp1x, .src0x, ._, ._ }, | 137948 | .{ ._, .p_b, .cmpeq, .tmp1x, .src0x, ._, ._ }, |
| 132754 | .{ ._, .p_b, .movmsk, .tmp0d, .tmp1x, ._, ._ }, | 137949 | .{ ._, .p_b, .movmsk, .tmp0d, .tmp1x, ._, ._ }, |
| 132755 | .{ ._, ._, .xor, .tmp0d, .si(0xffff), ._, ._ }, | 137950 | .{ ._, ._, .xor, .tmp0d, .si(std.math.maxInt(u16)), ._, ._ }, |
| 132756 | } }, | 137951 | } }, |
| 132757 | }, .{ | 137952 | }, .{ |
| 132758 | .required_features = .{ .avx2, null, null, null }, | 137953 | .required_features = .{ .avx2, null, null, null }, |
| ... | @@ -133083,7 +138278,7 @@ const Temp = struct { | ... | @@ -133083,7 +138278,7 @@ const Temp = struct { |
| 133083 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ }, | 138278 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ }, |
| 133084 | .{ ._, .p_b, .cmpeq, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ }, | 138279 | .{ ._, .p_b, .cmpeq, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ }, |
| 133085 | .{ ._, .p_b, .movmsk, .tmp2d, .tmp1x, ._, ._ }, | 138280 | .{ ._, .p_b, .movmsk, .tmp2d, .tmp1x, ._, ._ }, |
| 133086 | .{ ._, ._, .xor, .tmp2d, .ui(0xffff), ._, ._ }, | 138281 | .{ ._, ._, .xor, .tmp2d, .si(std.math.maxInt(u16)), ._, ._ }, |
| 133087 | .{ ._, ._nz, .j, .@"0f", ._, ._, ._ }, | 138282 | .{ ._, ._nz, .j, .@"0f", ._, ._, ._ }, |
| 133088 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, | 138283 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| 133089 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, | 138284 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| ... | @@ -134513,9 +139708,9 @@ const Select = struct { | ... | @@ -134513,9 +139708,9 @@ const Select = struct { |
| 134513 | remainder_int: OfIsSizes, | 139708 | remainder_int: OfIsSizes, |
| 134514 | remainder_signed_int: OfIsSizes, | 139709 | remainder_signed_int: OfIsSizes, |
| 134515 | remainder_unsigned_int: OfIsSizes, | 139710 | remainder_unsigned_int: OfIsSizes, |
| 134516 | exact_remainder_int: OfIsSizes, | 139711 | exact_remainder_int: struct { of: Memory.Size, is: u16 }, |
| 134517 | exact_remainder_signed_int: OfIsSizes, | 139712 | exact_remainder_signed_int: struct { of: Memory.Size, is: u16 }, |
| 134518 | exact_remainder_unsigned_int: OfIsSizes, | 139713 | exact_remainder_unsigned_int: struct { of: Memory.Size, is: u16 }, |
| 134519 | signed_or_exact_remainder_int: OfIsSizes, | 139714 | signed_or_exact_remainder_int: OfIsSizes, |
| 134520 | unsigned_or_exact_remainder_int: OfIsSizes, | 139715 | unsigned_or_exact_remainder_int: OfIsSizes, |
| 134521 | signed_int: Memory.Size, | 139716 | signed_int: Memory.Size, |
| ... | @@ -134676,13 +139871,13 @@ const Select = struct { | ... | @@ -134676,13 +139871,13 @@ const Select = struct { |
| 134676 | .remainder_unsigned_int => |of_is| if (cg.intInfo(ty)) |int_info| int_info.signedness == .unsigned and | 139871 | .remainder_unsigned_int => |of_is| if (cg.intInfo(ty)) |int_info| int_info.signedness == .unsigned and |
| 134677 | of_is.is.bitSize(cg.target) >= (int_info.bits - 1) % of_is.of.bitSize(cg.target) + 1 else false, | 139872 | of_is.is.bitSize(cg.target) >= (int_info.bits - 1) % of_is.of.bitSize(cg.target) + 1 else false, |
| 134678 | .exact_remainder_int => |of_is| if (cg.intInfo(ty)) |int_info| | 139873 | .exact_remainder_int => |of_is| if (cg.intInfo(ty)) |int_info| |
| 134679 | of_is.is.bitSize(cg.target) == (int_info.bits - 1) % of_is.of.bitSize(cg.target) + 1 | 139874 | of_is.is == (int_info.bits - 1) % of_is.of.bitSize(cg.target) + 1 |
| 134680 | else | 139875 | else |
| 134681 | false, | 139876 | false, |
| 134682 | .exact_remainder_signed_int => |of_is| if (cg.intInfo(ty)) |int_info| int_info.signedness == .signed and | 139877 | .exact_remainder_signed_int => |of_is| if (cg.intInfo(ty)) |int_info| int_info.signedness == .signed and |
| 134683 | of_is.is.bitSize(cg.target) == (int_info.bits - 1) % of_is.of.bitSize(cg.target) + 1 else false, | 139878 | of_is.is == (int_info.bits - 1) % of_is.of.bitSize(cg.target) + 1 else false, |
| 134684 | .exact_remainder_unsigned_int => |of_is| if (cg.intInfo(ty)) |int_info| int_info.signedness == .unsigned and | 139879 | .exact_remainder_unsigned_int => |of_is| if (cg.intInfo(ty)) |int_info| int_info.signedness == .unsigned and |
| 134685 | of_is.is.bitSize(cg.target) == (int_info.bits - 1) % of_is.of.bitSize(cg.target) + 1 else false, | 139880 | of_is.is == (int_info.bits - 1) % of_is.of.bitSize(cg.target) + 1 else false, |
| 134686 | .signed_or_exact_remainder_int => |of_is| if (cg.intInfo(ty)) |int_info| switch (int_info.signedness) { | 139881 | .signed_or_exact_remainder_int => |of_is| if (cg.intInfo(ty)) |int_info| switch (int_info.signedness) { |
| 134687 | .signed => of_is.is.bitSize(cg.target) >= (int_info.bits - 1) % of_is.of.bitSize(cg.target) + 1, | 139882 | .signed => of_is.is.bitSize(cg.target) >= (int_info.bits - 1) % of_is.of.bitSize(cg.target) + 1, |
| 134688 | .unsigned => of_is.is.bitSize(cg.target) == (int_info.bits - 1) % of_is.of.bitSize(cg.target) + 1, | 139883 | .unsigned => of_is.is.bitSize(cg.target) == (int_info.bits - 1) % of_is.of.bitSize(cg.target) + 1, |
| ... | @@ -135431,11 +140626,12 @@ const Select = struct { | ... | @@ -135431,11 +140626,12 @@ const Select = struct { |
| 135431 | const add_dst0_elem_size: Adjust = .{ .sign = .pos, .lhs = .dst0_elem_size, .op = .mul, .rhs = .@"1" }; | 140626 | const add_dst0_elem_size: Adjust = .{ .sign = .pos, .lhs = .dst0_elem_size, .op = .mul, .rhs = .@"1" }; |
| 135432 | const add_elem_limbs: Adjust = .{ .sign = .pos, .lhs = .elem_limbs, .op = .mul, .rhs = .@"1" }; | 140627 | const add_elem_limbs: Adjust = .{ .sign = .pos, .lhs = .elem_limbs, .op = .mul, .rhs = .@"1" }; |
| 135433 | const add_smin: Adjust = .{ .sign = .pos, .lhs = .smin, .op = .mul, .rhs = .@"1" }; | 140628 | const add_smin: Adjust = .{ .sign = .pos, .lhs = .smin, .op = .mul, .rhs = .@"1" }; |
| | 140629 | const add_2_smin: Adjust = .{ .sign = .pos, .lhs = .smin, .op = .mul, .rhs = .@"2" }; |
| 135434 | const sub_smin: Adjust = .{ .sign = .neg, .lhs = .smin, .op = .mul, .rhs = .@"1" }; | 140630 | const sub_smin: Adjust = .{ .sign = .neg, .lhs = .smin, .op = .mul, .rhs = .@"1" }; |
| 135435 | const add_smax: Adjust = .{ .sign = .pos, .lhs = .smax, .op = .mul, .rhs = .@"1" }; | 140631 | const add_smax: Adjust = .{ .sign = .pos, .lhs = .smax, .op = .mul, .rhs = .@"1" }; |
| 135436 | const add_umax: Adjust = .{ .sign = .pos, .lhs = .umax, .op = .mul, .rhs = .@"1" }; | 140632 | const add_umax: Adjust = .{ .sign = .pos, .lhs = .umax, .op = .mul, .rhs = .@"1" }; |
| 135437 | const sub_umax: Adjust = .{ .sign = .neg, .lhs = .umax, .op = .mul, .rhs = .@"1" }; | | |
| 135438 | const add_umax_shr_src1: Adjust = .{ .sign = .pos, .lhs = .umax_shr_src1, .op = .mul, .rhs = .@"1" }; | 140633 | const add_umax_shr_src1: Adjust = .{ .sign = .pos, .lhs = .umax_shr_src1, .op = .mul, .rhs = .@"1" }; |
| | 140634 | const sub_umax: Adjust = .{ .sign = .neg, .lhs = .umax, .op = .mul, .rhs = .@"1" }; |
| 135439 | const repeat: Adjust = .{ .sign = .pos, .lhs = .repeat, .op = .mul, .rhs = .@"1" }; | 140635 | const repeat: Adjust = .{ .sign = .pos, .lhs = .repeat, .op = .mul, .rhs = .@"1" }; |
| 135440 | }; | 140636 | }; |
| 135441 | const Ref = enum(u5) { | 140637 | const Ref = enum(u5) { |
| ... | @@ -135464,6 +140660,8 @@ const Select = struct { | ... | @@ -135464,6 +140660,8 @@ const Select = struct { |
| 135464 | const none: Sized = .{ .ref = .none, .size = .none }; | 140660 | const none: Sized = .{ .ref = .none, .size = .none }; |
| 135465 | | 140661 | |
| 135466 | const tmp0: Sized = .{ .ref = .tmp0, .size = .none }; | 140662 | const tmp0: Sized = .{ .ref = .tmp0, .size = .none }; |
| | 140663 | const tmp0l: Sized = .{ .ref = .tmp0, .size = .low_byte }; |
| | 140664 | const tmp0h: Sized = .{ .ref = .tmp0, .size = .high_byte }; |
| 135467 | const tmp0b: Sized = .{ .ref = .tmp0, .size = .byte }; | 140665 | const tmp0b: Sized = .{ .ref = .tmp0, .size = .byte }; |
| 135468 | const tmp0w: Sized = .{ .ref = .tmp0, .size = .word }; | 140666 | const tmp0w: Sized = .{ .ref = .tmp0, .size = .word }; |
| 135469 | const tmp0d: Sized = .{ .ref = .tmp0, .size = .dword }; | 140667 | const tmp0d: Sized = .{ .ref = .tmp0, .size = .dword }; |
| ... | @@ -135475,6 +140673,8 @@ const Select = struct { | ... | @@ -135475,6 +140673,8 @@ const Select = struct { |
| 135475 | const tmp0y: Sized = .{ .ref = .tmp0, .size = .yword }; | 140673 | const tmp0y: Sized = .{ .ref = .tmp0, .size = .yword }; |
| 135476 | | 140674 | |
| 135477 | const tmp1: Sized = .{ .ref = .tmp1, .size = .none }; | 140675 | const tmp1: Sized = .{ .ref = .tmp1, .size = .none }; |
| | 140676 | const tmp1l: Sized = .{ .ref = .tmp1, .size = .low_byte }; |
| | 140677 | const tmp1h: Sized = .{ .ref = .tmp1, .size = .high_byte }; |
| 135478 | const tmp1b: Sized = .{ .ref = .tmp1, .size = .byte }; | 140678 | const tmp1b: Sized = .{ .ref = .tmp1, .size = .byte }; |
| 135479 | const tmp1w: Sized = .{ .ref = .tmp1, .size = .word }; | 140679 | const tmp1w: Sized = .{ .ref = .tmp1, .size = .word }; |
| 135480 | const tmp1d: Sized = .{ .ref = .tmp1, .size = .dword }; | 140680 | const tmp1d: Sized = .{ .ref = .tmp1, .size = .dword }; |
| ... | @@ -135486,6 +140686,8 @@ const Select = struct { | ... | @@ -135486,6 +140686,8 @@ const Select = struct { |
| 135486 | const tmp1y: Sized = .{ .ref = .tmp1, .size = .yword }; | 140686 | const tmp1y: Sized = .{ .ref = .tmp1, .size = .yword }; |
| 135487 | | 140687 | |
| 135488 | const tmp2: Sized = .{ .ref = .tmp2, .size = .none }; | 140688 | const tmp2: Sized = .{ .ref = .tmp2, .size = .none }; |
| | 140689 | const tmp2l: Sized = .{ .ref = .tmp2, .size = .low_byte }; |
| | 140690 | const tmp2h: Sized = .{ .ref = .tmp2, .size = .high_byte }; |
| 135489 | const tmp2b: Sized = .{ .ref = .tmp2, .size = .byte }; | 140691 | const tmp2b: Sized = .{ .ref = .tmp2, .size = .byte }; |
| 135490 | const tmp2w: Sized = .{ .ref = .tmp2, .size = .word }; | 140692 | const tmp2w: Sized = .{ .ref = .tmp2, .size = .word }; |
| 135491 | const tmp2d: Sized = .{ .ref = .tmp2, .size = .dword }; | 140693 | const tmp2d: Sized = .{ .ref = .tmp2, .size = .dword }; |
| ... | @@ -135497,6 +140699,8 @@ const Select = struct { | ... | @@ -135497,6 +140699,8 @@ const Select = struct { |
| 135497 | const tmp2y: Sized = .{ .ref = .tmp2, .size = .yword }; | 140699 | const tmp2y: Sized = .{ .ref = .tmp2, .size = .yword }; |
| 135498 | | 140700 | |
| 135499 | const tmp3: Sized = .{ .ref = .tmp3, .size = .none }; | 140701 | const tmp3: Sized = .{ .ref = .tmp3, .size = .none }; |
| | 140702 | const tmp3l: Sized = .{ .ref = .tmp3, .size = .low_byte }; |
| | 140703 | const tmp3h: Sized = .{ .ref = .tmp3, .size = .high_byte }; |
| 135500 | const tmp3b: Sized = .{ .ref = .tmp3, .size = .byte }; | 140704 | const tmp3b: Sized = .{ .ref = .tmp3, .size = .byte }; |
| 135501 | const tmp3w: Sized = .{ .ref = .tmp3, .size = .word }; | 140705 | const tmp3w: Sized = .{ .ref = .tmp3, .size = .word }; |
| 135502 | const tmp3d: Sized = .{ .ref = .tmp3, .size = .dword }; | 140706 | const tmp3d: Sized = .{ .ref = .tmp3, .size = .dword }; |
| ... | @@ -135508,6 +140712,8 @@ const Select = struct { | ... | @@ -135508,6 +140712,8 @@ const Select = struct { |
| 135508 | const tmp3y: Sized = .{ .ref = .tmp3, .size = .yword }; | 140712 | const tmp3y: Sized = .{ .ref = .tmp3, .size = .yword }; |
| 135509 | | 140713 | |
| 135510 | const tmp4: Sized = .{ .ref = .tmp4, .size = .none }; | 140714 | const tmp4: Sized = .{ .ref = .tmp4, .size = .none }; |
| | 140715 | const tmp4l: Sized = .{ .ref = .tmp4, .size = .low_byte }; |
| | 140716 | const tmp4h: Sized = .{ .ref = .tmp4, .size = .high_byte }; |
| 135511 | const tmp4b: Sized = .{ .ref = .tmp4, .size = .byte }; | 140717 | const tmp4b: Sized = .{ .ref = .tmp4, .size = .byte }; |
| 135512 | const tmp4w: Sized = .{ .ref = .tmp4, .size = .word }; | 140718 | const tmp4w: Sized = .{ .ref = .tmp4, .size = .word }; |
| 135513 | const tmp4d: Sized = .{ .ref = .tmp4, .size = .dword }; | 140719 | const tmp4d: Sized = .{ .ref = .tmp4, .size = .dword }; |
| ... | @@ -135519,6 +140725,8 @@ const Select = struct { | ... | @@ -135519,6 +140725,8 @@ const Select = struct { |
| 135519 | const tmp4y: Sized = .{ .ref = .tmp4, .size = .yword }; | 140725 | const tmp4y: Sized = .{ .ref = .tmp4, .size = .yword }; |
| 135520 | | 140726 | |
| 135521 | const tmp5: Sized = .{ .ref = .tmp5, .size = .none }; | 140727 | const tmp5: Sized = .{ .ref = .tmp5, .size = .none }; |
| | 140728 | const tmp5l: Sized = .{ .ref = .tmp5, .size = .low_byte }; |
| | 140729 | const tmp5h: Sized = .{ .ref = .tmp5, .size = .high_byte }; |
| 135522 | const tmp5b: Sized = .{ .ref = .tmp5, .size = .byte }; | 140730 | const tmp5b: Sized = .{ .ref = .tmp5, .size = .byte }; |
| 135523 | const tmp5w: Sized = .{ .ref = .tmp5, .size = .word }; | 140731 | const tmp5w: Sized = .{ .ref = .tmp5, .size = .word }; |
| 135524 | const tmp5d: Sized = .{ .ref = .tmp5, .size = .dword }; | 140732 | const tmp5d: Sized = .{ .ref = .tmp5, .size = .dword }; |
| ... | @@ -135530,6 +140738,8 @@ const Select = struct { | ... | @@ -135530,6 +140738,8 @@ const Select = struct { |
| 135530 | const tmp5y: Sized = .{ .ref = .tmp5, .size = .yword }; | 140738 | const tmp5y: Sized = .{ .ref = .tmp5, .size = .yword }; |
| 135531 | | 140739 | |
| 135532 | const tmp6: Sized = .{ .ref = .tmp6, .size = .none }; | 140740 | const tmp6: Sized = .{ .ref = .tmp6, .size = .none }; |
| | 140741 | const tmp6l: Sized = .{ .ref = .tmp6, .size = .low_byte }; |
| | 140742 | const tmp6h: Sized = .{ .ref = .tmp6, .size = .high_byte }; |
| 135533 | const tmp6b: Sized = .{ .ref = .tmp6, .size = .byte }; | 140743 | const tmp6b: Sized = .{ .ref = .tmp6, .size = .byte }; |
| 135534 | const tmp6w: Sized = .{ .ref = .tmp6, .size = .word }; | 140744 | const tmp6w: Sized = .{ .ref = .tmp6, .size = .word }; |
| 135535 | const tmp6d: Sized = .{ .ref = .tmp6, .size = .dword }; | 140745 | const tmp6d: Sized = .{ .ref = .tmp6, .size = .dword }; |
| ... | @@ -135541,6 +140751,8 @@ const Select = struct { | ... | @@ -135541,6 +140751,8 @@ const Select = struct { |
| 135541 | const tmp6y: Sized = .{ .ref = .tmp6, .size = .yword }; | 140751 | const tmp6y: Sized = .{ .ref = .tmp6, .size = .yword }; |
| 135542 | | 140752 | |
| 135543 | const tmp7: Sized = .{ .ref = .tmp7, .size = .none }; | 140753 | const tmp7: Sized = .{ .ref = .tmp7, .size = .none }; |
| | 140754 | const tmp7l: Sized = .{ .ref = .tmp7, .size = .low_byte }; |
| | 140755 | const tmp7h: Sized = .{ .ref = .tmp7, .size = .high_byte }; |
| 135544 | const tmp7b: Sized = .{ .ref = .tmp7, .size = .byte }; | 140756 | const tmp7b: Sized = .{ .ref = .tmp7, .size = .byte }; |
| 135545 | const tmp7w: Sized = .{ .ref = .tmp7, .size = .word }; | 140757 | const tmp7w: Sized = .{ .ref = .tmp7, .size = .word }; |
| 135546 | const tmp7d: Sized = .{ .ref = .tmp7, .size = .dword }; | 140758 | const tmp7d: Sized = .{ .ref = .tmp7, .size = .dword }; |
| ... | @@ -135552,6 +140764,8 @@ const Select = struct { | ... | @@ -135552,6 +140764,8 @@ const Select = struct { |
| 135552 | const tmp7y: Sized = .{ .ref = .tmp7, .size = .yword }; | 140764 | const tmp7y: Sized = .{ .ref = .tmp7, .size = .yword }; |
| 135553 | | 140765 | |
| 135554 | const tmp8: Sized = .{ .ref = .tmp8, .size = .none }; | 140766 | const tmp8: Sized = .{ .ref = .tmp8, .size = .none }; |
| | 140767 | const tmp8l: Sized = .{ .ref = .tmp8, .size = .low_byte }; |
| | 140768 | const tmp8h: Sized = .{ .ref = .tmp8, .size = .high_byte }; |
| 135555 | const tmp8b: Sized = .{ .ref = .tmp8, .size = .byte }; | 140769 | const tmp8b: Sized = .{ .ref = .tmp8, .size = .byte }; |
| 135556 | const tmp8w: Sized = .{ .ref = .tmp8, .size = .word }; | 140770 | const tmp8w: Sized = .{ .ref = .tmp8, .size = .word }; |
| 135557 | const tmp8d: Sized = .{ .ref = .tmp8, .size = .dword }; | 140771 | const tmp8d: Sized = .{ .ref = .tmp8, .size = .dword }; |
| ... | @@ -135563,6 +140777,8 @@ const Select = struct { | ... | @@ -135563,6 +140777,8 @@ const Select = struct { |
| 135563 | const tmp8y: Sized = .{ .ref = .tmp8, .size = .yword }; | 140777 | const tmp8y: Sized = .{ .ref = .tmp8, .size = .yword }; |
| 135564 | | 140778 | |
| 135565 | const tmp9: Sized = .{ .ref = .tmp9, .size = .none }; | 140779 | const tmp9: Sized = .{ .ref = .tmp9, .size = .none }; |
| | 140780 | const tmp9l: Sized = .{ .ref = .tmp9, .size = .low_byte }; |
| | 140781 | const tmp9h: Sized = .{ .ref = .tmp9, .size = .high_byte }; |
| 135566 | const tmp9b: Sized = .{ .ref = .tmp9, .size = .byte }; | 140782 | const tmp9b: Sized = .{ .ref = .tmp9, .size = .byte }; |
| 135567 | const tmp9w: Sized = .{ .ref = .tmp9, .size = .word }; | 140783 | const tmp9w: Sized = .{ .ref = .tmp9, .size = .word }; |
| 135568 | const tmp9d: Sized = .{ .ref = .tmp9, .size = .dword }; | 140784 | const tmp9d: Sized = .{ .ref = .tmp9, .size = .dword }; |
| ... | @@ -135574,6 +140790,8 @@ const Select = struct { | ... | @@ -135574,6 +140790,8 @@ const Select = struct { |
| 135574 | const tmp9y: Sized = .{ .ref = .tmp9, .size = .yword }; | 140790 | const tmp9y: Sized = .{ .ref = .tmp9, .size = .yword }; |
| 135575 | | 140791 | |
| 135576 | const tmp10: Sized = .{ .ref = .tmp10, .size = .none }; | 140792 | const tmp10: Sized = .{ .ref = .tmp10, .size = .none }; |
| | 140793 | const tmp10l: Sized = .{ .ref = .tmp10, .size = .low_byte }; |
| | 140794 | const tmp10h: Sized = .{ .ref = .tmp10, .size = .high_byte }; |
| 135577 | const tmp10b: Sized = .{ .ref = .tmp10, .size = .byte }; | 140795 | const tmp10b: Sized = .{ .ref = .tmp10, .size = .byte }; |
| 135578 | const tmp10w: Sized = .{ .ref = .tmp10, .size = .word }; | 140796 | const tmp10w: Sized = .{ .ref = .tmp10, .size = .word }; |
| 135579 | const tmp10d: Sized = .{ .ref = .tmp10, .size = .dword }; | 140797 | const tmp10d: Sized = .{ .ref = .tmp10, .size = .dword }; |
| ... | @@ -135585,6 +140803,8 @@ const Select = struct { | ... | @@ -135585,6 +140803,8 @@ const Select = struct { |
| 135585 | const tmp10y: Sized = .{ .ref = .tmp10, .size = .yword }; | 140803 | const tmp10y: Sized = .{ .ref = .tmp10, .size = .yword }; |
| 135586 | | 140804 | |
| 135587 | const dst0: Sized = .{ .ref = .dst0, .size = .none }; | 140805 | const dst0: Sized = .{ .ref = .dst0, .size = .none }; |
| | 140806 | const dst0l: Sized = .{ .ref = .dst0, .size = .low_byte }; |
| | 140807 | const dst0h: Sized = .{ .ref = .dst0, .size = .high_byte }; |
| 135588 | const dst0b: Sized = .{ .ref = .dst0, .size = .byte }; | 140808 | const dst0b: Sized = .{ .ref = .dst0, .size = .byte }; |
| 135589 | const dst0w: Sized = .{ .ref = .dst0, .size = .word }; | 140809 | const dst0w: Sized = .{ .ref = .dst0, .size = .word }; |
| 135590 | const dst0d: Sized = .{ .ref = .dst0, .size = .dword }; | 140810 | const dst0d: Sized = .{ .ref = .dst0, .size = .dword }; |
| ... | @@ -135596,6 +140816,8 @@ const Select = struct { | ... | @@ -135596,6 +140816,8 @@ const Select = struct { |
| 135596 | const dst0y: Sized = .{ .ref = .dst0, .size = .yword }; | 140816 | const dst0y: Sized = .{ .ref = .dst0, .size = .yword }; |
| 135597 | | 140817 | |
| 135598 | const dst1: Sized = .{ .ref = .dst1, .size = .none }; | 140818 | const dst1: Sized = .{ .ref = .dst1, .size = .none }; |
| | 140819 | const dst1l: Sized = .{ .ref = .dst1, .size = .low_byte }; |
| | 140820 | const dst1h: Sized = .{ .ref = .dst1, .size = .high_byte }; |
| 135599 | const dst1b: Sized = .{ .ref = .dst1, .size = .byte }; | 140821 | const dst1b: Sized = .{ .ref = .dst1, .size = .byte }; |
| 135600 | const dst1w: Sized = .{ .ref = .dst1, .size = .word }; | 140822 | const dst1w: Sized = .{ .ref = .dst1, .size = .word }; |
| 135601 | const dst1d: Sized = .{ .ref = .dst1, .size = .dword }; | 140823 | const dst1d: Sized = .{ .ref = .dst1, .size = .dword }; |
| ... | @@ -135607,6 +140829,8 @@ const Select = struct { | ... | @@ -135607,6 +140829,8 @@ const Select = struct { |
| 135607 | const dst1y: Sized = .{ .ref = .dst1, .size = .yword }; | 140829 | const dst1y: Sized = .{ .ref = .dst1, .size = .yword }; |
| 135608 | | 140830 | |
| 135609 | const src0: Sized = .{ .ref = .src0, .size = .none }; | 140831 | const src0: Sized = .{ .ref = .src0, .size = .none }; |
| | 140832 | const src0l: Sized = .{ .ref = .src0, .size = .low_byte }; |
| | 140833 | const src0h: Sized = .{ .ref = .src0, .size = .high_byte }; |
| 135610 | const src0b: Sized = .{ .ref = .src0, .size = .byte }; | 140834 | const src0b: Sized = .{ .ref = .src0, .size = .byte }; |
| 135611 | const src0w: Sized = .{ .ref = .src0, .size = .word }; | 140835 | const src0w: Sized = .{ .ref = .src0, .size = .word }; |
| 135612 | const src0d: Sized = .{ .ref = .src0, .size = .dword }; | 140836 | const src0d: Sized = .{ .ref = .src0, .size = .dword }; |
| ... | @@ -135618,6 +140842,8 @@ const Select = struct { | ... | @@ -135618,6 +140842,8 @@ const Select = struct { |
| 135618 | const src0y: Sized = .{ .ref = .src0, .size = .yword }; | 140842 | const src0y: Sized = .{ .ref = .src0, .size = .yword }; |
| 135619 | | 140843 | |
| 135620 | const src1: Sized = .{ .ref = .src1, .size = .none }; | 140844 | const src1: Sized = .{ .ref = .src1, .size = .none }; |
| | 140845 | const src1l: Sized = .{ .ref = .src1, .size = .low_byte }; |
| | 140846 | const src1h: Sized = .{ .ref = .src1, .size = .high_byte }; |
| 135621 | const src1b: Sized = .{ .ref = .src1, .size = .byte }; | 140847 | const src1b: Sized = .{ .ref = .src1, .size = .byte }; |
| 135622 | const src1w: Sized = .{ .ref = .src1, .size = .word }; | 140848 | const src1w: Sized = .{ .ref = .src1, .size = .word }; |
| 135623 | const src1d: Sized = .{ .ref = .src1, .size = .dword }; | 140849 | const src1d: Sized = .{ .ref = .src1, .size = .dword }; |
| ... | @@ -135629,6 +140855,8 @@ const Select = struct { | ... | @@ -135629,6 +140855,8 @@ const Select = struct { |
| 135629 | const src1y: Sized = .{ .ref = .src1, .size = .yword }; | 140855 | const src1y: Sized = .{ .ref = .src1, .size = .yword }; |
| 135630 | | 140856 | |
| 135631 | const src2: Sized = .{ .ref = .src2, .size = .none }; | 140857 | const src2: Sized = .{ .ref = .src2, .size = .none }; |
| | 140858 | const src2l: Sized = .{ .ref = .src2, .size = .low_byte }; |
| | 140859 | const src2h: Sized = .{ .ref = .src2, .size = .high_byte }; |
| 135632 | const src2b: Sized = .{ .ref = .src2, .size = .byte }; | 140860 | const src2b: Sized = .{ .ref = .src2, .size = .byte }; |
| 135633 | const src2w: Sized = .{ .ref = .src2, .size = .word }; | 140861 | const src2w: Sized = .{ .ref = .src2, .size = .word }; |
| 135634 | const src2d: Sized = .{ .ref = .src2, .size = .dword }; | 140862 | const src2d: Sized = .{ .ref = .src2, .size = .dword }; |
| ... | @@ -135669,6 +140897,8 @@ const Select = struct { | ... | @@ -135669,6 +140897,8 @@ const Select = struct { |
| 135669 | const @"4b": Select.Operand = .{ .flags = .{ .tag = .backward_label, .base = .{ .ref = .tmp4, .size = .none } } }; | 140897 | const @"4b": Select.Operand = .{ .flags = .{ .tag = .backward_label, .base = .{ .ref = .tmp4, .size = .none } } }; |
| 135670 | const @"4f": Select.Operand = .{ .flags = .{ .tag = .forward_label, .base = .{ .ref = .tmp4, .size = .none } } }; | 140898 | const @"4f": Select.Operand = .{ .flags = .{ .tag = .forward_label, .base = .{ .ref = .tmp4, .size = .none } } }; |
| 135671 | | 140899 | |
| | 140900 | const tmp0l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp0l } }; |
| | 140901 | const tmp0h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp0h } }; |
| 135672 | const tmp0b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp0b } }; | 140902 | const tmp0b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp0b } }; |
| 135673 | const tmp0w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp0w } }; | 140903 | const tmp0w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp0w } }; |
| 135674 | const tmp0d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp0d } }; | 140904 | const tmp0d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp0d } }; |
| ... | @@ -135679,6 +140909,8 @@ const Select = struct { | ... | @@ -135679,6 +140909,8 @@ const Select = struct { |
| 135679 | const tmp0x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp0x } }; | 140909 | const tmp0x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp0x } }; |
| 135680 | const tmp0y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp0y } }; | 140910 | const tmp0y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp0y } }; |
| 135681 | | 140911 | |
| | 140912 | const tmp1l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp1l } }; |
| | 140913 | const tmp1h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp1h } }; |
| 135682 | const tmp1b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp1b } }; | 140914 | const tmp1b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp1b } }; |
| 135683 | const tmp1w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp1w } }; | 140915 | const tmp1w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp1w } }; |
| 135684 | const tmp1d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp1d } }; | 140916 | const tmp1d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp1d } }; |
| ... | @@ -135689,6 +140921,8 @@ const Select = struct { | ... | @@ -135689,6 +140921,8 @@ const Select = struct { |
| 135689 | const tmp1x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp1x } }; | 140921 | const tmp1x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp1x } }; |
| 135690 | const tmp1y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp1y } }; | 140922 | const tmp1y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp1y } }; |
| 135691 | | 140923 | |
| | 140924 | const tmp2l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp2l } }; |
| | 140925 | const tmp2h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp2h } }; |
| 135692 | const tmp2b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp2b } }; | 140926 | const tmp2b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp2b } }; |
| 135693 | const tmp2w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp2w } }; | 140927 | const tmp2w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp2w } }; |
| 135694 | const tmp2d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp2d } }; | 140928 | const tmp2d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp2d } }; |
| ... | @@ -135699,6 +140933,8 @@ const Select = struct { | ... | @@ -135699,6 +140933,8 @@ const Select = struct { |
| 135699 | const tmp2x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp2x } }; | 140933 | const tmp2x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp2x } }; |
| 135700 | const tmp2y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp2y } }; | 140934 | const tmp2y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp2y } }; |
| 135701 | | 140935 | |
| | 140936 | const tmp3l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp3l } }; |
| | 140937 | const tmp3h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp3h } }; |
| 135702 | const tmp3b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp3b } }; | 140938 | const tmp3b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp3b } }; |
| 135703 | const tmp3w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp3w } }; | 140939 | const tmp3w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp3w } }; |
| 135704 | const tmp3d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp3d } }; | 140940 | const tmp3d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp3d } }; |
| ... | @@ -135709,6 +140945,8 @@ const Select = struct { | ... | @@ -135709,6 +140945,8 @@ const Select = struct { |
| 135709 | const tmp3x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp3x } }; | 140945 | const tmp3x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp3x } }; |
| 135710 | const tmp3y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp3y } }; | 140946 | const tmp3y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp3y } }; |
| 135711 | | 140947 | |
| | 140948 | const tmp4l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp4l } }; |
| | 140949 | const tmp4h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp4h } }; |
| 135712 | const tmp4b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp4b } }; | 140950 | const tmp4b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp4b } }; |
| 135713 | const tmp4w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp4w } }; | 140951 | const tmp4w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp4w } }; |
| 135714 | const tmp4d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp4d } }; | 140952 | const tmp4d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp4d } }; |
| ... | @@ -135719,6 +140957,8 @@ const Select = struct { | ... | @@ -135719,6 +140957,8 @@ const Select = struct { |
| 135719 | const tmp4x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp4x } }; | 140957 | const tmp4x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp4x } }; |
| 135720 | const tmp4y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp4y } }; | 140958 | const tmp4y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp4y } }; |
| 135721 | | 140959 | |
| | 140960 | const tmp5l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp5l } }; |
| | 140961 | const tmp5h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp5h } }; |
| 135722 | const tmp5b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp5b } }; | 140962 | const tmp5b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp5b } }; |
| 135723 | const tmp5w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp5w } }; | 140963 | const tmp5w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp5w } }; |
| 135724 | const tmp5d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp5d } }; | 140964 | const tmp5d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp5d } }; |
| ... | @@ -135729,6 +140969,8 @@ const Select = struct { | ... | @@ -135729,6 +140969,8 @@ const Select = struct { |
| 135729 | const tmp5x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp5x } }; | 140969 | const tmp5x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp5x } }; |
| 135730 | const tmp5y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp5y } }; | 140970 | const tmp5y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp5y } }; |
| 135731 | | 140971 | |
| | 140972 | const tmp6l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp6l } }; |
| | 140973 | const tmp6h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp6h } }; |
| 135732 | const tmp6b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp6b } }; | 140974 | const tmp6b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp6b } }; |
| 135733 | const tmp6w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp6w } }; | 140975 | const tmp6w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp6w } }; |
| 135734 | const tmp6d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp6d } }; | 140976 | const tmp6d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp6d } }; |
| ... | @@ -135739,6 +140981,8 @@ const Select = struct { | ... | @@ -135739,6 +140981,8 @@ const Select = struct { |
| 135739 | const tmp6x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp6x } }; | 140981 | const tmp6x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp6x } }; |
| 135740 | const tmp6y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp6y } }; | 140982 | const tmp6y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp6y } }; |
| 135741 | | 140983 | |
| | 140984 | const tmp7l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp7l } }; |
| | 140985 | const tmp7h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp7h } }; |
| 135742 | const tmp7b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp7b } }; | 140986 | const tmp7b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp7b } }; |
| 135743 | const tmp7w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp7w } }; | 140987 | const tmp7w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp7w } }; |
| 135744 | const tmp7d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp7d } }; | 140988 | const tmp7d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp7d } }; |
| ... | @@ -135749,6 +140993,8 @@ const Select = struct { | ... | @@ -135749,6 +140993,8 @@ const Select = struct { |
| 135749 | const tmp7x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp7x } }; | 140993 | const tmp7x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp7x } }; |
| 135750 | const tmp7y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp7y } }; | 140994 | const tmp7y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp7y } }; |
| 135751 | | 140995 | |
| | 140996 | const tmp8l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp8l } }; |
| | 140997 | const tmp8h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp8h } }; |
| 135752 | const tmp8b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp8b } }; | 140998 | const tmp8b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp8b } }; |
| 135753 | const tmp8w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp8w } }; | 140999 | const tmp8w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp8w } }; |
| 135754 | const tmp8d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp8d } }; | 141000 | const tmp8d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp8d } }; |
| ... | @@ -135759,6 +141005,8 @@ const Select = struct { | ... | @@ -135759,6 +141005,8 @@ const Select = struct { |
| 135759 | const tmp8x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp8x } }; | 141005 | const tmp8x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp8x } }; |
| 135760 | const tmp8y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp8y } }; | 141006 | const tmp8y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp8y } }; |
| 135761 | | 141007 | |
| | 141008 | const tmp9l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp9l } }; |
| | 141009 | const tmp9h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp9h } }; |
| 135762 | const tmp9b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp9b } }; | 141010 | const tmp9b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp9b } }; |
| 135763 | const tmp9w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp9w } }; | 141011 | const tmp9w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp9w } }; |
| 135764 | const tmp9d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp9d } }; | 141012 | const tmp9d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp9d } }; |
| ... | @@ -135769,6 +141017,8 @@ const Select = struct { | ... | @@ -135769,6 +141017,8 @@ const Select = struct { |
| 135769 | const tmp9x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp9x } }; | 141017 | const tmp9x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp9x } }; |
| 135770 | const tmp9y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp9y } }; | 141018 | const tmp9y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp9y } }; |
| 135771 | | 141019 | |
| | 141020 | const tmp10l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp10l } }; |
| | 141021 | const tmp10h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp10h } }; |
| 135772 | const tmp10b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp10b } }; | 141022 | const tmp10b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp10b } }; |
| 135773 | const tmp10w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp10w } }; | 141023 | const tmp10w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp10w } }; |
| 135774 | const tmp10d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp10d } }; | 141024 | const tmp10d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp10d } }; |
| ... | @@ -135779,6 +141029,8 @@ const Select = struct { | ... | @@ -135779,6 +141029,8 @@ const Select = struct { |
| 135779 | const tmp10x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp10x } }; | 141029 | const tmp10x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp10x } }; |
| 135780 | const tmp10y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp10y } }; | 141030 | const tmp10y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .tmp10y } }; |
| 135781 | | 141031 | |
| | 141032 | const dst0l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst0l } }; |
| | 141033 | const dst0h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst0h } }; |
| 135782 | const dst0b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst0b } }; | 141034 | const dst0b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst0b } }; |
| 135783 | const dst0w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst0w } }; | 141035 | const dst0w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst0w } }; |
| 135784 | const dst0d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst0d } }; | 141036 | const dst0d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst0d } }; |
| ... | @@ -135789,6 +141041,8 @@ const Select = struct { | ... | @@ -135789,6 +141041,8 @@ const Select = struct { |
| 135789 | const dst0x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst0x } }; | 141041 | const dst0x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst0x } }; |
| 135790 | const dst0y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst0y } }; | 141042 | const dst0y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst0y } }; |
| 135791 | | 141043 | |
| | 141044 | const dst1l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst1l } }; |
| | 141045 | const dst1h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst1h } }; |
| 135792 | const dst1b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst1b } }; | 141046 | const dst1b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst1b } }; |
| 135793 | const dst1w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst1w } }; | 141047 | const dst1w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst1w } }; |
| 135794 | const dst1d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst1d } }; | 141048 | const dst1d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst1d } }; |
| ... | @@ -135799,6 +141053,8 @@ const Select = struct { | ... | @@ -135799,6 +141053,8 @@ const Select = struct { |
| 135799 | const dst1x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst1x } }; | 141053 | const dst1x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst1x } }; |
| 135800 | const dst1y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst1y } }; | 141054 | const dst1y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .dst1y } }; |
| 135801 | | 141055 | |
| | 141056 | const src0l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src0l } }; |
| | 141057 | const src0h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src0h } }; |
| 135802 | const src0b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src0b } }; | 141058 | const src0b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src0b } }; |
| 135803 | const src0w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src0w } }; | 141059 | const src0w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src0w } }; |
| 135804 | const src0d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src0d } }; | 141060 | const src0d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src0d } }; |
| ... | @@ -135809,6 +141065,8 @@ const Select = struct { | ... | @@ -135809,6 +141065,8 @@ const Select = struct { |
| 135809 | const src0x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src0x } }; | 141065 | const src0x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src0x } }; |
| 135810 | const src0y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src0y } }; | 141066 | const src0y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src0y } }; |
| 135811 | | 141067 | |
| | 141068 | const src1l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src1l } }; |
| | 141069 | const src1h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src1h } }; |
| 135812 | const src1b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src1b } }; | 141070 | const src1b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src1b } }; |
| 135813 | const src1w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src1w } }; | 141071 | const src1w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src1w } }; |
| 135814 | const src1d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src1d } }; | 141072 | const src1d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src1d } }; |
| ... | @@ -135819,6 +141077,8 @@ const Select = struct { | ... | @@ -135819,6 +141077,8 @@ const Select = struct { |
| 135819 | const src1x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src1x } }; | 141077 | const src1x: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src1x } }; |
| 135820 | const src1y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src1y } }; | 141078 | const src1y: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src1y } }; |
| 135821 | | 141079 | |
| | 141080 | const src2l: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src2l } }; |
| | 141081 | const src2h: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src2h } }; |
| 135822 | const src2b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src2b } }; | 141082 | const src2b: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src2b } }; |
| 135823 | const src2w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src2w } }; | 141083 | const src2w: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src2w } }; |
| 135824 | const src2d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src2d } }; | 141084 | const src2d: Select.Operand = .{ .flags = .{ .tag = .ref, .base = .src2d } }; |
| ... | @@ -136194,7 +141454,7 @@ const Select = struct { | ... | @@ -136194,7 +141454,7 @@ const Select = struct { |
| 136194 | else => unreachable, | 141454 | else => unreachable, |
| 136195 | } }, | 141455 | } }, |
| 136196 | else => |mcv| .{ .mem = try mcv.mem(s.cg, .{ .size = op.flags.base.size }) }, | 141456 | else => |mcv| .{ .mem = try mcv.mem(s.cg, .{ .size = op.flags.base.size }) }, |
| 136197 | .register => |reg| .{ .reg = s.lowerReg(registerAlias(reg, @intCast(@divExact(op.flags.base.size.bitSize(s.cg.target), 8)))) }, | 141457 | .register => |reg| .{ .reg = s.lowerReg(reg.toSize(op.flags.base.size, s.cg.target)) }, |
| 136198 | .lea_symbol => |sym_off| .{ .imm = .rel(sym_off) }, | 141458 | .lea_symbol => |sym_off| .{ .imm = .rel(sym_off) }, |
| 136199 | }, | 141459 | }, |
| 136200 | .simm => .{ .imm = .s(op.adjustedImm(i32, s)) }, | 141460 | .simm => .{ .imm = .s(op.adjustedImm(i32, s)) }, |
| ... | @@ -136203,8 +141463,8 @@ const Select = struct { | ... | @@ -136203,8 +141463,8 @@ const Select = struct { |
| 136203 | .base = switch (op.flags.base.ref.valueOf(s)) { | 141463 | .base = switch (op.flags.base.ref.valueOf(s)) { |
| 136204 | else => unreachable, | 141464 | else => unreachable, |
| 136205 | .none => .none, | 141465 | .none => .none, |
| 136206 | .register => |base_reg| .{ .reg = registerAlias(base_reg, @divExact(s.cg.target.ptrBitWidth(), 8)) }, | 141466 | .register => |base_reg| .{ .reg = base_reg.toSize(.ptr, s.cg.target) }, |
| 136207 | .register_offset => |base_reg_off| .{ .reg = registerAlias(base_reg_off.reg, @divExact(s.cg.target.ptrBitWidth(), 8)) }, | 141467 | .register_offset => |base_reg_off| .{ .reg = base_reg_off.reg.toSize(.ptr, s.cg.target) }, |
| 136208 | .lea_symbol => |base_sym_off| .{ .reloc = base_sym_off.sym_index }, | 141468 | .lea_symbol => |base_sym_off| .{ .reloc = base_sym_off.sym_index }, |
| 136209 | }, | 141469 | }, |
| 136210 | .mod = .{ .rm = .{ | 141470 | .mod = .{ .rm = .{ |
| ... | @@ -136212,8 +141472,8 @@ const Select = struct { | ... | @@ -136212,8 +141472,8 @@ const Select = struct { |
| 136212 | .index = switch (op.flags.index.ref.valueOf(s)) { | 141472 | .index = switch (op.flags.index.ref.valueOf(s)) { |
| 136213 | else => unreachable, | 141473 | else => unreachable, |
| 136214 | .none => .none, | 141474 | .none => .none, |
| 136215 | .register => |index_reg| registerAlias(index_reg, @divExact(s.cg.target.ptrBitWidth(), 8)), | 141475 | .register => |index_reg| index_reg.toSize(.ptr, s.cg.target), |
| 136216 | .register_offset => |index_reg_off| registerAlias(index_reg_off.reg, @divExact(s.cg.target.ptrBitWidth(), 8)), | 141476 | .register_offset => |index_reg_off| index_reg_off.reg.toSize(.ptr, s.cg.target), |
| 136217 | }, | 141477 | }, |
| 136218 | .scale = op.flags.index.scale, | 141478 | .scale = op.flags.index.scale, |
| 136219 | .disp = op.adjustedImm(i32, s) + switch (op.flags.base.ref.valueOf(s)) { | 141479 | .disp = op.adjustedImm(i32, s) + switch (op.flags.base.ref.valueOf(s)) { |
| ... | @@ -136234,7 +141494,7 @@ const Select = struct { | ... | @@ -136234,7 +141494,7 @@ const Select = struct { |
| 136234 | .index = switch (op.flags.index.ref.valueOf(s)) { | 141494 | .index = switch (op.flags.index.ref.valueOf(s)) { |
| 136235 | else => unreachable, | 141495 | else => unreachable, |
| 136236 | .none => .none, | 141496 | .none => .none, |
| 136237 | .register => |index_reg| registerAlias(index_reg, @divExact(s.cg.target.ptrBitWidth(), 8)), | 141497 | .register => |index_reg| index_reg.toSize(.ptr, s.cg.target), |
| 136238 | }, | 141498 | }, |
| 136239 | .scale = op.flags.index.scale, | 141499 | .scale = op.flags.index.scale, |
| 136240 | .disp = op.adjustedImm(i32, s), | 141500 | .disp = op.adjustedImm(i32, s), |