| ... | @@ -2389,7 +2389,7 @@ fn genBodyBlock(self: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -2389,7 +2389,7 @@ fn genBodyBlock(self: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 2389 | } | 2389 | } |
| 2390 | | 2390 | |
| 2391 | fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | 2391 | fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 2392 | @setEvalBranchQuota(27_800); | 2392 | @setEvalBranchQuota(28_600); |
| 2393 | const pt = cg.pt; | 2393 | const pt = cg.pt; |
| 2394 | const zcu = pt.zcu; | 2394 | const zcu = pt.zcu; |
| 2395 | const ip = &zcu.intern_pool; | 2395 | const ip = &zcu.intern_pool; |
| ... | @@ -117436,15 +117436,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -117436,15 +117436,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 117436 | }; | 117436 | }; |
| 117437 | try res[0].finish(inst, &.{ty_op.operand}, &ops, cg); | 117437 | try res[0].finish(inst, &.{ty_op.operand}, &ops, cg); |
| 117438 | }, | 117438 | }, |
| 117439 | .reduce => |air_tag| if (use_old) try cg.airReduce(inst) else fallback: { | 117439 | .reduce => |air_tag| if (use_old) try cg.airReduce(inst) else { |
| 117440 | const nan = std.math.nan(f16); | 117440 | const nan = std.math.nan(f16); |
| 117441 | const reduce = air_datas[@intFromEnum(inst)].reduce; | 117441 | const reduce = air_datas[@intFromEnum(inst)].reduce; |
| 117442 | const res_ty = cg.typeOfIndex(inst); | 117442 | const res_ty = cg.typeOfIndex(inst); |
| 117443 | switch (reduce.operation) { | | |
| 117444 | .And, .Or, .Xor, .Min => {}, | | |
| 117445 | .Max => if (cg.floatBits(res_ty)) |_| break :fallback try cg.airReduce(inst), | | |
| 117446 | .Add, .Mul => {}, | | |
| 117447 | } | | |
| 117448 | var ops = try cg.tempsFromOperands(inst, .{reduce.operand}); | 117443 | var ops = try cg.tempsFromOperands(inst, .{reduce.operand}); |
| 117449 | var res: [1]Temp = undefined; | 117444 | var res: [1]Temp = undefined; |
| 117450 | cg.select(&res, &.{res_ty}, &ops, switch (reduce.operation) { | 117445 | cg.select(&res, &.{res_ty}, &ops, switch (reduce.operation) { |
| ... | @@ -132294,7 +132289,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -132294,7 +132289,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 132294 | }, | 132289 | }, |
| 132295 | .extra_temps = .{ | 132290 | .extra_temps = .{ |
| 132296 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, | 132291 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132297 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, | 132292 | .{ .type = .vector_2_f64, .kind = .{ .reg = .xmm0 } }, |
| 132298 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, | 132293 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132299 | .unused, | 132294 | .unused, |
| 132300 | .unused, | 132295 | .unused, |
| ... | @@ -132472,7 +132467,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -132472,7 +132467,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 132472 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, | 132467 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132473 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, | 132468 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 132474 | .{ .type = .vector_2_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, | 132469 | .{ .type = .vector_2_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 132475 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, | 132470 | .{ .type = .vector_2_f64, .kind = .{ .reg = .xmm0 } }, |
| 132476 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, | 132471 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132477 | .unused, | 132472 | .unused, |
| 132478 | .unused, | 132473 | .unused, |
| ... | @@ -132620,7 +132615,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -132620,7 +132615,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 132620 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, | 132615 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 132621 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, | 132616 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| 132622 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, | 132617 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 132623 | .{ ._, .f_, .st, .tmp1t, ._, ._, ._ }, | 132618 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| 132624 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, | 132619 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 132625 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, | 132620 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 132626 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, | 132621 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| ... | @@ -132660,7 +132655,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -132660,7 +132655,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 132660 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, | 132655 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 132661 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, | 132656 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| 132662 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, | 132657 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 132663 | .{ ._, .f_, .st, .tmp1t, ._, ._, ._ }, | 132658 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| 132664 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, | 132659 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 132665 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, | 132660 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 132666 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, | 132661 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| ... | @@ -132735,7 +132730,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -132735,7 +132730,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 132735 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, | 132730 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 132736 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, | 132731 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| 132737 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, | 132732 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 132738 | .{ ._, .f_, .st, .tmp1t, ._, ._, ._ }, | 132733 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| 132739 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, | 132734 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 132740 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, | 132735 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132741 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, | 132736 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| ... | @@ -132775,7 +132770,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -132775,7 +132770,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 132775 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, | 132770 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 132776 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, | 132771 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| 132777 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, | 132772 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 132778 | .{ ._, .f_, .st, .tmp1t, ._, ._, ._ }, | 132773 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| 132779 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, | 132774 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 132780 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, | 132775 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132781 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, | 132776 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| ... | @@ -140689,6 +140684,2319 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { | ... | @@ -140689,6 +140684,2319 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 140689 | .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ }, | 140684 | .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| 140690 | .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ }, | 140685 | .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ }, |
| 140691 | } }, | 140686 | } }, |
| | 140687 | }, .{ |
| | 140688 | .required_features = .{ .f16c, null, null, null }, |
| | 140689 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 140690 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .dword, .is = .word } }, .any, .any }, |
| | 140691 | .patterns = &.{ |
| | 140692 | .{ .src = .{ .mem, .none, .none } }, |
| | 140693 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 140694 | }, |
| | 140695 | .extra_temps = .{ |
| | 140696 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 140697 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 140698 | .unused, |
| | 140699 | .unused, |
| | 140700 | .unused, |
| | 140701 | .unused, |
| | 140702 | .unused, |
| | 140703 | .unused, |
| | 140704 | .unused, |
| | 140705 | .unused, |
| | 140706 | .unused, |
| | 140707 | }, |
| | 140708 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 140709 | .each = .{ .once = &.{ |
| | 140710 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| | 140711 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| | 140712 | .{ ._, .v_ss, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 140713 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 140714 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 140715 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 140716 | } }, |
| | 140717 | }, .{ |
| | 140718 | .required_features = .{ .f16c, null, null, null }, |
| | 140719 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 140720 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| | 140721 | .patterns = &.{ |
| | 140722 | .{ .src = .{ .mem, .none, .none } }, |
| | 140723 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 140724 | }, |
| | 140725 | .extra_temps = .{ |
| | 140726 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 140727 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 140728 | .unused, |
| | 140729 | .unused, |
| | 140730 | .unused, |
| | 140731 | .unused, |
| | 140732 | .unused, |
| | 140733 | .unused, |
| | 140734 | .unused, |
| | 140735 | .unused, |
| | 140736 | .unused, |
| | 140737 | }, |
| | 140738 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 140739 | .each = .{ .once = &.{ |
| | 140740 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| | 140741 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| | 140742 | .{ ._, .v_ss, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 140743 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 140744 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 140745 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| | 140746 | .{ ._, .v_ss, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 140747 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 140748 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 140749 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 140750 | } }, |
| | 140751 | }, .{ |
| | 140752 | .required_features = .{ .f16c, null, null, null }, |
| | 140753 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 140754 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| | 140755 | .patterns = &.{ |
| | 140756 | .{ .src = .{ .mem, .none, .none } }, |
| | 140757 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 140758 | }, |
| | 140759 | .extra_temps = .{ |
| | 140760 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 140761 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 140762 | .unused, |
| | 140763 | .unused, |
| | 140764 | .unused, |
| | 140765 | .unused, |
| | 140766 | .unused, |
| | 140767 | .unused, |
| | 140768 | .unused, |
| | 140769 | .unused, |
| | 140770 | .unused, |
| | 140771 | }, |
| | 140772 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 140773 | .each = .{ .once = &.{ |
| | 140774 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| | 140775 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| | 140776 | .{ ._, .v_ps, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 140777 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 140778 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 140779 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| | 140780 | .{ ._, .v_ss, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 140781 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 140782 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 140783 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 140784 | } }, |
| | 140785 | }, .{ |
| | 140786 | .required_features = .{ .f16c, null, null, null }, |
| | 140787 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 140788 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| | 140789 | .patterns = &.{ |
| | 140790 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 140791 | }, |
| | 140792 | .extra_temps = .{ |
| | 140793 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| | 140794 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 140795 | .{ .type = .vector_8_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 140796 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 140797 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 140798 | .unused, |
| | 140799 | .unused, |
| | 140800 | .unused, |
| | 140801 | .unused, |
| | 140802 | .unused, |
| | 140803 | .unused, |
| | 140804 | }, |
| | 140805 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 140806 | .each = .{ .once = &.{ |
| | 140807 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 140808 | .{ ._, .v_ps, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| | 140809 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 140810 | .{ ._, .v_ps, .@"or", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| | 140811 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| | 140812 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 140813 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 140814 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 140815 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 140816 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| | 140817 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 140818 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 140819 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 140820 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| | 140821 | .{ ._, .v_ss, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 140822 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 140823 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 140824 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 140825 | } }, |
| | 140826 | }, .{ |
| | 140827 | .required_features = .{ .f16c, null, null, null }, |
| | 140828 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 140829 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| | 140830 | .patterns = &.{ |
| | 140831 | .{ .src = .{ .mem, .none, .none } }, |
| | 140832 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 140833 | }, |
| | 140834 | .extra_temps = .{ |
| | 140835 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 140836 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 140837 | .unused, |
| | 140838 | .unused, |
| | 140839 | .unused, |
| | 140840 | .unused, |
| | 140841 | .unused, |
| | 140842 | .unused, |
| | 140843 | .unused, |
| | 140844 | .unused, |
| | 140845 | .unused, |
| | 140846 | }, |
| | 140847 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 140848 | .each = .{ .once = &.{ |
| | 140849 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| | 140850 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| | 140851 | .{ ._, .v_ps, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 140852 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 140853 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 140854 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| | 140855 | .{ ._, .v_ps, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 140856 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 140857 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 140858 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| | 140859 | .{ ._, .v_ss, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 140860 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 140861 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 140862 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 140863 | } }, |
| | 140864 | }, .{ |
| | 140865 | .required_features = .{ .f16c, null, null, null }, |
| | 140866 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 140867 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| | 140868 | .patterns = &.{ |
| | 140869 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 140870 | }, |
| | 140871 | .extra_temps = .{ |
| | 140872 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| | 140873 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 140874 | .{ .type = .vector_16_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 140875 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 140876 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 140877 | .unused, |
| | 140878 | .unused, |
| | 140879 | .unused, |
| | 140880 | .unused, |
| | 140881 | .unused, |
| | 140882 | .unused, |
| | 140883 | }, |
| | 140884 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 140885 | .each = .{ .once = &.{ |
| | 140886 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 140887 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| | 140888 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 140889 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| | 140890 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 140891 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| | 140892 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| | 140893 | .{ ._, .v_ps, .max, .tmp4y, .dst0y, .tmp3y, ._ }, |
| | 140894 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| | 140895 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| | 140896 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 140897 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 140898 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 140899 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 140900 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| | 140901 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 140902 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 140903 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 140904 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| | 140905 | .{ ._, .v_ss, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 140906 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 140907 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 140908 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 140909 | } }, |
| | 140910 | }, .{ |
| | 140911 | .required_features = .{ .f16c, null, null, null }, |
| | 140912 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 140913 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| | 140914 | .patterns = &.{ |
| | 140915 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 140916 | }, |
| | 140917 | .extra_temps = .{ |
| | 140918 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 140919 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 140920 | .unused, |
| | 140921 | .unused, |
| | 140922 | .unused, |
| | 140923 | .unused, |
| | 140924 | .unused, |
| | 140925 | .unused, |
| | 140926 | .unused, |
| | 140927 | .unused, |
| | 140928 | .unused, |
| | 140929 | }, |
| | 140930 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 140931 | .each = .{ .once = &.{ |
| | 140932 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| | 140933 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| | 140934 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| | 140935 | .{ ._, .v_ps, .max, .tmp1y, .dst0y, .tmp0y, ._ }, |
| | 140936 | .{ ._, .v_ps, .cmp, .tmp0y, .tmp0y, .tmp0y, .vp(.ord) }, |
| | 140937 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp1y, .tmp0y }, |
| | 140938 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| | 140939 | .{ ._, .v_ps, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 140940 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 140941 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 140942 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| | 140943 | .{ ._, .v_ps, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 140944 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 140945 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 140946 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| | 140947 | .{ ._, .v_ss, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 140948 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 140949 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 140950 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 140951 | } }, |
| | 140952 | }, .{ |
| | 140953 | .required_features = .{ .avx512f, null, null, null }, |
| | 140954 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 140955 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| | 140956 | .patterns = &.{ |
| | 140957 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 140958 | }, |
| | 140959 | .extra_temps = .{ |
| | 140960 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| | 140961 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 140962 | .{ .type = .vector_32_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 140963 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 140964 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 140965 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 140966 | .unused, |
| | 140967 | .unused, |
| | 140968 | .unused, |
| | 140969 | .unused, |
| | 140970 | .unused, |
| | 140971 | }, |
| | 140972 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 140973 | .each = .{ .once = &.{ |
| | 140974 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 140975 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| | 140976 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| | 140977 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 140978 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| | 140979 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| | 140980 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| | 140981 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| | 140982 | .{ ._, .v_f128, .extract, .tmp4x, .tmp3y, .ui(1), ._ }, |
| | 140983 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| | 140984 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| | 140985 | .{ ._, .v_ps, .max, .tmp5y, .tmp3y, .tmp4y, ._ }, |
| | 140986 | .{ ._, .v_ps, .cmp, .tmp4y, .tmp4y, .tmp4y, .vp(.ord) }, |
| | 140987 | .{ ._, .v_ps, .blendv, .tmp3y, .tmp3y, .tmp5y, .tmp4y }, |
| | 140988 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| | 140989 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| | 140990 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| | 140991 | .{ ._, .v_ps, .max, .tmp5y, .dst0y, .tmp4y, ._ }, |
| | 140992 | .{ ._, .v_ps, .cmp, .tmp4y, .tmp4y, .tmp4y, .vp(.ord) }, |
| | 140993 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp5y, .tmp4y }, |
| | 140994 | .{ ._, .v_ps, .max, .tmp4y, .dst0y, .tmp3y, ._ }, |
| | 140995 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| | 140996 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| | 140997 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 140998 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 140999 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141000 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141001 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| | 141002 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141003 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141004 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141005 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| | 141006 | .{ ._, .v_ss, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141007 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141008 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141009 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 141010 | } }, |
| | 141011 | }, .{ |
| | 141012 | .required_features = .{ .avx512f, null, null, null }, |
| | 141013 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 141014 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| | 141015 | .patterns = &.{ |
| | 141016 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141017 | }, |
| | 141018 | .extra_temps = .{ |
| | 141019 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141020 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141021 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141022 | .unused, |
| | 141023 | .unused, |
| | 141024 | .unused, |
| | 141025 | .unused, |
| | 141026 | .unused, |
| | 141027 | .unused, |
| | 141028 | .unused, |
| | 141029 | .unused, |
| | 141030 | }, |
| | 141031 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 141032 | .each = .{ .once = &.{ |
| | 141033 | .{ ._, .v_ps, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| | 141034 | .{ ._, .v_ps, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| | 141035 | .{ ._, .v_f128, .extract, .tmp1x, .tmp0y, .ui(1), ._ }, |
| | 141036 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| | 141037 | .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ }, |
| | 141038 | .{ ._, .v_ps, .max, .tmp2y, .tmp0y, .tmp1y, ._ }, |
| | 141039 | .{ ._, .v_ps, .cmp, .tmp1y, .tmp1y, .tmp1y, .vp(.ord) }, |
| | 141040 | .{ ._, .v_ps, .blendv, .tmp0y, .tmp0y, .tmp2y, .tmp1y }, |
| | 141041 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| | 141042 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| | 141043 | .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ }, |
| | 141044 | .{ ._, .v_ps, .max, .tmp2y, .dst0y, .tmp1y, ._ }, |
| | 141045 | .{ ._, .v_ps, .cmp, .tmp1y, .tmp1y, .tmp1y, .vp(.ord) }, |
| | 141046 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp2y, .tmp1y }, |
| | 141047 | .{ ._, .v_ps, .max, .tmp1y, .dst0y, .tmp0y, ._ }, |
| | 141048 | .{ ._, .v_ps, .cmp, .tmp0y, .tmp0y, .tmp0y, .vp(.ord) }, |
| | 141049 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp1y, .tmp0y }, |
| | 141050 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| | 141051 | .{ ._, .v_ps, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 141052 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141053 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 141054 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| | 141055 | .{ ._, .v_ps, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 141056 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141057 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 141058 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| | 141059 | .{ ._, .v_ss, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 141060 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141061 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 141062 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 141063 | } }, |
| | 141064 | }, .{ |
| | 141065 | .required_features = .{ .f16c, null, null, null }, |
| | 141066 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 141067 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| | 141068 | .patterns = &.{ |
| | 141069 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141070 | }, |
| | 141071 | .extra_temps = .{ |
| | 141072 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 141073 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141074 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141075 | .unused, |
| | 141076 | .unused, |
| | 141077 | .unused, |
| | 141078 | .unused, |
| | 141079 | .unused, |
| | 141080 | .unused, |
| | 141081 | .unused, |
| | 141082 | .unused, |
| | 141083 | }, |
| | 141084 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 141085 | .clobbers = .{ .eflags = true }, |
| | 141086 | .each = .{ .once = &.{ |
| | 141087 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| | 141088 | .{ ._, .v_ps, .cvtph2, .dst0y, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| | 141089 | .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| | 141090 | .{ ._, .v_ps, .max, .tmp2y, .dst0y, .tmp1y, ._ }, |
| | 141091 | .{ ._, .v_ps, .cmp, .tmp1y, .tmp1y, .tmp1y, .vp(.ord) }, |
| | 141092 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp2y, .tmp1y }, |
| | 141093 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 141094 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 141095 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| | 141096 | .{ ._, .v_ps, .max, .tmp2x, .dst0x, .tmp1x, ._ }, |
| | 141097 | .{ ._, .v_ps, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| | 141098 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| | 141099 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b11_10) }, |
| | 141100 | .{ ._, .v_ps, .max, .tmp2x, .dst0x, .tmp1x, ._ }, |
| | 141101 | .{ ._, .v_ps, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| | 141102 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| | 141103 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| | 141104 | .{ ._, .v_ss, .max, .tmp2x, .dst0x, .tmp1x, ._ }, |
| | 141105 | .{ ._, .v_ss, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| | 141106 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| | 141107 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 141108 | } }, |
| | 141109 | }, .{ |
| | 141110 | .required_features = .{ .avx512f, null, null, null }, |
| | 141111 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 141112 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| | 141113 | .patterns = &.{ |
| | 141114 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141115 | }, |
| | 141116 | .extra_temps = .{ |
| | 141117 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 141118 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 141119 | .{ .type = .vector_32_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 141120 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141121 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141122 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141123 | .unused, |
| | 141124 | .unused, |
| | 141125 | .unused, |
| | 141126 | .unused, |
| | 141127 | .unused, |
| | 141128 | }, |
| | 141129 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 141130 | .clobbers = .{ .eflags = true }, |
| | 141131 | .each = .{ .once = &.{ |
| | 141132 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 141133 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| | 141134 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| | 141135 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 141136 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| | 141137 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| | 141138 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| | 141139 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| | 141140 | .{ ._, ._, .mov, .tmp0d, .sia(-80, .src0, .add_size), ._, ._ }, |
| | 141141 | .{ ._, .v_f128, .extract, .tmp4x, .tmp3y, .ui(1), ._ }, |
| | 141142 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| | 141143 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| | 141144 | .{ ._, .v_ps, .max, .tmp5y, .tmp3y, .tmp4y, ._ }, |
| | 141145 | .{ ._, .v_ps, .cmp, .tmp4y, .tmp4y, .tmp4y, .vp(.ord) }, |
| | 141146 | .{ ._, .v_ps, .blendv, .tmp3y, .tmp3y, .tmp5y, .tmp4y }, |
| | 141147 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| | 141148 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| | 141149 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| | 141150 | .{ ._, .v_ps, .max, .tmp5y, .dst0y, .tmp4y, ._ }, |
| | 141151 | .{ ._, .v_ps, .cmp, .tmp4y, .tmp4y, .tmp4y, .vp(.ord) }, |
| | 141152 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp5y, .tmp4y }, |
| | 141153 | .{ ._, .v_ps, .max, .tmp4y, .dst0y, .tmp3y, ._ }, |
| | 141154 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| | 141155 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| | 141156 | .{ .@"0:", .v_ps, .cvtph2, .tmp3y, .memi(.src0x, .tmp0), ._, ._ }, |
| | 141157 | .{ ._, .v_ps, .max, .tmp4y, .dst0y, .tmp3y, ._ }, |
| | 141158 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| | 141159 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| | 141160 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 141161 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 141162 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 141163 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141164 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141165 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141166 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| | 141167 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141168 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141169 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141170 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| | 141171 | .{ ._, .v_ss, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141172 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141173 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141174 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 141175 | } }, |
| | 141176 | }, .{ |
| | 141177 | .required_features = .{ .f16c, null, null, null }, |
| | 141178 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 141179 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| | 141180 | .patterns = &.{ |
| | 141181 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141182 | }, |
| | 141183 | .extra_temps = .{ |
| | 141184 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 141185 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 141186 | .{ .type = .vector_16_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 141187 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141188 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141189 | .unused, |
| | 141190 | .unused, |
| | 141191 | .unused, |
| | 141192 | .unused, |
| | 141193 | .unused, |
| | 141194 | .unused, |
| | 141195 | }, |
| | 141196 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 141197 | .clobbers = .{ .eflags = true }, |
| | 141198 | .each = .{ .once = &.{ |
| | 141199 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 141200 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| | 141201 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 141202 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| | 141203 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| | 141204 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| | 141205 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 141206 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| | 141207 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| | 141208 | .{ ._, .v_ps, .max, .tmp4y, .dst0y, .tmp3y, ._ }, |
| | 141209 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| | 141210 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| | 141211 | .{ .@"0:", .v_ps, .cvtph2, .tmp3y, .memi(.src0x, .tmp0), ._, ._ }, |
| | 141212 | .{ ._, .v_ps, .max, .tmp4y, .dst0y, .tmp3y, ._ }, |
| | 141213 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| | 141214 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| | 141215 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 141216 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 141217 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 141218 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141219 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141220 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141221 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| | 141222 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141223 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141224 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141225 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| | 141226 | .{ ._, .v_ss, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141227 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141228 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141229 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| | 141230 | } }, |
| | 141231 | }, .{ |
| | 141232 | .required_features = .{ .avx, null, null, null }, |
| | 141233 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 141234 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| | 141235 | .patterns = &.{ |
| | 141236 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141237 | }, |
| | 141238 | .call_frame = .{ .alignment = .@"16" }, |
| | 141239 | .extra_temps = .{ |
| | 141240 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 141241 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| | 141242 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } }, |
| | 141243 | .unused, |
| | 141244 | .unused, |
| | 141245 | .unused, |
| | 141246 | .unused, |
| | 141247 | .unused, |
| | 141248 | .unused, |
| | 141249 | .unused, |
| | 141250 | .unused, |
| | 141251 | }, |
| | 141252 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| | 141253 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 141254 | .each = .{ .once = &.{ |
| | 141255 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .dst0x, ._ }, |
| | 141256 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| | 141257 | .{ ._, .vp_w, .insr, .dst0x, .dst0x, .memad(.src0w, .add_unaligned_size, -2), .ui(0) }, |
| | 141258 | .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| | 141259 | .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memi(.src0w, .tmp0), .ui(0) }, |
| | 141260 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| | 141261 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| | 141262 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 141263 | } }, |
| | 141264 | }, .{ |
| | 141265 | .required_features = .{ .sse2, null, null, null }, |
| | 141266 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 141267 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| | 141268 | .patterns = &.{ |
| | 141269 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141270 | }, |
| | 141271 | .call_frame = .{ .alignment = .@"16" }, |
| | 141272 | .extra_temps = .{ |
| | 141273 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 141274 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| | 141275 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } }, |
| | 141276 | .unused, |
| | 141277 | .unused, |
| | 141278 | .unused, |
| | 141279 | .unused, |
| | 141280 | .unused, |
| | 141281 | .unused, |
| | 141282 | .unused, |
| | 141283 | .unused, |
| | 141284 | }, |
| | 141285 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| | 141286 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 141287 | .each = .{ .once = &.{ |
| | 141288 | .{ ._, .p_, .xor, .dst0x, .dst0x, ._, ._ }, |
| | 141289 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| | 141290 | .{ ._, .p_w, .insr, .dst0x, .memad(.src0w, .add_unaligned_size, -2), .ui(0), ._ }, |
| | 141291 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| | 141292 | .{ ._, .p_w, .insr, .tmp1x, .memi(.src0w, .tmp0), .ui(0), ._ }, |
| | 141293 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| | 141294 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| | 141295 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 141296 | } }, |
| | 141297 | }, .{ |
| | 141298 | .required_features = .{ .sse, null, null, null }, |
| | 141299 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| | 141300 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| | 141301 | .patterns = &.{ |
| | 141302 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141303 | }, |
| | 141304 | .call_frame = .{ .alignment = .@"16" }, |
| | 141305 | .extra_temps = .{ |
| | 141306 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 141307 | .{ .type = .f16, .kind = .{ .reg = .ax } }, |
| | 141308 | .{ .type = .f32, .kind = .mem }, |
| | 141309 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| | 141310 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } }, |
| | 141311 | .unused, |
| | 141312 | .unused, |
| | 141313 | .unused, |
| | 141314 | .unused, |
| | 141315 | .unused, |
| | 141316 | .unused, |
| | 141317 | }, |
| | 141318 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| | 141319 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 141320 | .each = .{ .once = &.{ |
| | 141321 | .{ ._, ._ps, .xor, .dst0x, .dst0x, ._, ._ }, |
| | 141322 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| | 141323 | .{ ._, ._, .movzx, .tmp1d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| | 141324 | .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ }, |
| | 141325 | .{ ._, ._ss, .mov, .dst0x, .mem(.tmp2d), ._, ._ }, |
| | 141326 | .{ .@"0:", ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| | 141327 | .{ ._, ._ss, .mov, .tmp3x, .memi(.src0d, .tmp0), ._, ._ }, |
| | 141328 | .{ ._, ._, .call, .tmp4d, ._, ._, ._ }, |
| | 141329 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| | 141330 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 141331 | } }, |
| | 141332 | }, .{ |
| | 141333 | .required_features = .{ .avx, null, null, null }, |
| | 141334 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141335 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| | 141336 | .patterns = &.{ |
| | 141337 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 141338 | }, |
| | 141339 | .extra_temps = .{ |
| | 141340 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141341 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141342 | .unused, |
| | 141343 | .unused, |
| | 141344 | .unused, |
| | 141345 | .unused, |
| | 141346 | .unused, |
| | 141347 | .unused, |
| | 141348 | .unused, |
| | 141349 | .unused, |
| | 141350 | .unused, |
| | 141351 | }, |
| | 141352 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 141353 | .each = .{ .once = &.{ |
| | 141354 | .{ ._, .v_ps, .shuf, .tmp0x, .src0x, .src0x, .ui(0b01) }, |
| | 141355 | .{ ._, .v_ss, .max, .tmp1x, .src0x, .tmp0x, ._ }, |
| | 141356 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141357 | .{ ._, .v_ps, .blendv, .dst0x, .src0x, .tmp1x, .tmp0x }, |
| | 141358 | } }, |
| | 141359 | }, .{ |
| | 141360 | .required_features = .{ .sse4_1, null, null, null }, |
| | 141361 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141362 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| | 141363 | .patterns = &.{ |
| | 141364 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| | 141365 | }, |
| | 141366 | .extra_temps = .{ |
| | 141367 | .{ .type = .vector_4_f32, .kind = .{ .reg = .xmm0 } }, |
| | 141368 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141369 | .unused, |
| | 141370 | .unused, |
| | 141371 | .unused, |
| | 141372 | .unused, |
| | 141373 | .unused, |
| | 141374 | .unused, |
| | 141375 | .unused, |
| | 141376 | .unused, |
| | 141377 | .unused, |
| | 141378 | }, |
| | 141379 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 141380 | .each = .{ .once = &.{ |
| | 141381 | .{ ._, ._ps, .mova, .tmp0x, .src0x, ._, ._ }, |
| | 141382 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| | 141383 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| | 141384 | .{ ._, ._ss, .max, .tmp1x, .tmp0x, ._, ._ }, |
| | 141385 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.ord), ._ }, |
| | 141386 | .{ ._, ._ps, .blendv, .dst0x, .tmp1x, .tmp0x, ._ }, |
| | 141387 | } }, |
| | 141388 | }, .{ |
| | 141389 | .required_features = .{ .sse, null, null, null }, |
| | 141390 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141391 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| | 141392 | .patterns = &.{ |
| | 141393 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| | 141394 | }, |
| | 141395 | .extra_temps = .{ |
| | 141396 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141397 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141398 | .unused, |
| | 141399 | .unused, |
| | 141400 | .unused, |
| | 141401 | .unused, |
| | 141402 | .unused, |
| | 141403 | .unused, |
| | 141404 | .unused, |
| | 141405 | .unused, |
| | 141406 | .unused, |
| | 141407 | }, |
| | 141408 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 141409 | .each = .{ .once = &.{ |
| | 141410 | .{ ._, ._ps, .mova, .tmp0x, .src0x, ._, ._ }, |
| | 141411 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| | 141412 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| | 141413 | .{ ._, ._ss, .max, .tmp1x, .tmp0x, ._, ._ }, |
| | 141414 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.unord), ._ }, |
| | 141415 | .{ ._, ._ps, .@"and", .dst0x, .tmp0x, ._, ._ }, |
| | 141416 | .{ ._, ._ps, .andn, .tmp0x, .tmp1x, ._, ._ }, |
| | 141417 | .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ }, |
| | 141418 | } }, |
| | 141419 | }, .{ |
| | 141420 | .required_features = .{ .avx, null, null, null }, |
| | 141421 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141422 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| | 141423 | .patterns = &.{ |
| | 141424 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 141425 | }, |
| | 141426 | .extra_temps = .{ |
| | 141427 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141428 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141429 | .unused, |
| | 141430 | .unused, |
| | 141431 | .unused, |
| | 141432 | .unused, |
| | 141433 | .unused, |
| | 141434 | .unused, |
| | 141435 | .unused, |
| | 141436 | .unused, |
| | 141437 | .unused, |
| | 141438 | }, |
| | 141439 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 141440 | .each = .{ .once = &.{ |
| | 141441 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| | 141442 | .{ ._, .v_ss, .max, .tmp1x, .src0x, .tmp0x, ._ }, |
| | 141443 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141444 | .{ ._, .v_ps, .blendv, .tmp0x, .src0x, .tmp1x, .tmp0x }, |
| | 141445 | .{ ._, .v_ps, .shuf, .dst0x, .src0x, .src0x, .ui(0b01) }, |
| | 141446 | .{ ._, .v_ss, .max, .tmp1x, .tmp0x, .dst0x, ._ }, |
| | 141447 | .{ ._, .v_ss, .cmp, .dst0x, .dst0x, .dst0x, .vp(.ord) }, |
| | 141448 | .{ ._, .v_ps, .blendv, .dst0x, .tmp0x, .tmp1x, .dst0x }, |
| | 141449 | } }, |
| | 141450 | }, .{ |
| | 141451 | .required_features = .{ .sse4_1, null, null, null }, |
| | 141452 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141453 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| | 141454 | .patterns = &.{ |
| | 141455 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| | 141456 | }, |
| | 141457 | .extra_temps = .{ |
| | 141458 | .{ .type = .vector_4_f32, .kind = .{ .reg = .xmm0 } }, |
| | 141459 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141460 | .unused, |
| | 141461 | .unused, |
| | 141462 | .unused, |
| | 141463 | .unused, |
| | 141464 | .unused, |
| | 141465 | .unused, |
| | 141466 | .unused, |
| | 141467 | .unused, |
| | 141468 | .unused, |
| | 141469 | }, |
| | 141470 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 141471 | .each = .{ .once = &.{ |
| | 141472 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| | 141473 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| | 141474 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| | 141475 | .{ ._, ._ss, .max, .tmp1x, .tmp0x, ._, ._ }, |
| | 141476 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.unord), ._ }, |
| | 141477 | .{ ._, ._ps, .blendv, .tmp1x, .src0x, .tmp0x, ._ }, |
| | 141478 | .{ ._, ._ps, .shuf, .dst0x, .src0x, .ui(0b01), ._ }, |
| | 141479 | .{ ._, ._ps, .mova, .tmp0x, .tmp1x, ._, ._ }, |
| | 141480 | .{ ._, ._ps, .mova, .tmp1x, .dst0x, ._, ._ }, |
| | 141481 | .{ ._, ._ss, .max, .tmp1x, .tmp0x, ._, ._ }, |
| | 141482 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.ord), ._ }, |
| | 141483 | .{ ._, ._ps, .blendv, .dst0x, .tmp1x, .tmp0x, ._ }, |
| | 141484 | } }, |
| | 141485 | }, .{ |
| | 141486 | .required_features = .{ .sse, null, null, null }, |
| | 141487 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141488 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| | 141489 | .patterns = &.{ |
| | 141490 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| | 141491 | }, |
| | 141492 | .extra_temps = .{ |
| | 141493 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141494 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141495 | .unused, |
| | 141496 | .unused, |
| | 141497 | .unused, |
| | 141498 | .unused, |
| | 141499 | .unused, |
| | 141500 | .unused, |
| | 141501 | .unused, |
| | 141502 | .unused, |
| | 141503 | .unused, |
| | 141504 | }, |
| | 141505 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 141506 | .each = .{ .once = &.{ |
| | 141507 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| | 141508 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| | 141509 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| | 141510 | .{ ._, ._ss, .max, .tmp1x, .tmp0x, ._, ._ }, |
| | 141511 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.ord), ._ }, |
| | 141512 | .{ ._, ._ps, .@"and", .tmp1x, .tmp0x, ._, ._ }, |
| | 141513 | .{ ._, ._ps, .andn, .tmp0x, .dst0x, ._, ._ }, |
| | 141514 | .{ ._, ._ps, .@"or", .tmp0x, .tmp1x, ._, ._ }, |
| | 141515 | .{ ._, ._ps, .shuf, .dst0x, .src0x, .ui(0b01), ._ }, |
| | 141516 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| | 141517 | .{ ._, ._ss, .max, .tmp1x, .tmp0x, ._, ._ }, |
| | 141518 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.unord), ._ }, |
| | 141519 | .{ ._, ._ps, .@"and", .dst0x, .tmp0x, ._, ._ }, |
| | 141520 | .{ ._, ._ps, .andn, .tmp0x, .tmp1x, ._, ._ }, |
| | 141521 | .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ }, |
| | 141522 | } }, |
| | 141523 | }, .{ |
| | 141524 | .required_features = .{ .avx, null, null, null }, |
| | 141525 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141526 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| | 141527 | .patterns = &.{ |
| | 141528 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 141529 | }, |
| | 141530 | .extra_temps = .{ |
| | 141531 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141532 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141533 | .unused, |
| | 141534 | .unused, |
| | 141535 | .unused, |
| | 141536 | .unused, |
| | 141537 | .unused, |
| | 141538 | .unused, |
| | 141539 | .unused, |
| | 141540 | .unused, |
| | 141541 | .unused, |
| | 141542 | }, |
| | 141543 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 141544 | .each = .{ .once = &.{ |
| | 141545 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| | 141546 | .{ ._, .v_ps, .max, .tmp1x, .src0x, .tmp0x, ._ }, |
| | 141547 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141548 | .{ ._, .v_ps, .blendv, .dst0x, .src0x, .tmp1x, .tmp0x }, |
| | 141549 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| | 141550 | .{ ._, .v_ss, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 141551 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141552 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 141553 | } }, |
| | 141554 | }, .{ |
| | 141555 | .required_features = .{ .sse4_1, null, null, null }, |
| | 141556 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141557 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| | 141558 | .patterns = &.{ |
| | 141559 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| | 141560 | }, |
| | 141561 | .extra_temps = .{ |
| | 141562 | .{ .type = .vector_4_f32, .kind = .{ .reg = .xmm0 } }, |
| | 141563 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141564 | .unused, |
| | 141565 | .unused, |
| | 141566 | .unused, |
| | 141567 | .unused, |
| | 141568 | .unused, |
| | 141569 | .unused, |
| | 141570 | .unused, |
| | 141571 | .unused, |
| | 141572 | .unused, |
| | 141573 | }, |
| | 141574 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 141575 | .each = .{ .once = &.{ |
| | 141576 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| | 141577 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| | 141578 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| | 141579 | .{ ._, ._ps, .max, .tmp1x, .tmp0x, ._, ._ }, |
| | 141580 | .{ ._, ._ps, .cmp, .tmp0x, .tmp0x, .sp(.ord), ._ }, |
| | 141581 | .{ ._, ._ps, .blendv, .dst0x, .tmp1x, .tmp0x, ._ }, |
| | 141582 | .{ ._, ._ps, .mova, .tmp0x, .dst0x, ._, ._ }, |
| | 141583 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| | 141584 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| | 141585 | .{ ._, ._ss, .max, .tmp1x, .tmp0x, ._, ._ }, |
| | 141586 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.ord), ._ }, |
| | 141587 | .{ ._, ._ps, .blendv, .dst0x, .tmp1x, .tmp0x, ._ }, |
| | 141588 | } }, |
| | 141589 | }, .{ |
| | 141590 | .required_features = .{ .sse, null, null, null }, |
| | 141591 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141592 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| | 141593 | .patterns = &.{ |
| | 141594 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| | 141595 | }, |
| | 141596 | .extra_temps = .{ |
| | 141597 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141598 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141599 | .unused, |
| | 141600 | .unused, |
| | 141601 | .unused, |
| | 141602 | .unused, |
| | 141603 | .unused, |
| | 141604 | .unused, |
| | 141605 | .unused, |
| | 141606 | .unused, |
| | 141607 | .unused, |
| | 141608 | }, |
| | 141609 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 141610 | .each = .{ .once = &.{ |
| | 141611 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| | 141612 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| | 141613 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| | 141614 | .{ ._, ._ps, .max, .tmp1x, .tmp0x, ._, ._ }, |
| | 141615 | .{ ._, ._ps, .cmp, .tmp0x, .tmp0x, .sp(.unord), ._ }, |
| | 141616 | .{ ._, ._ps, .@"and", .dst0x, .tmp0x, ._, ._ }, |
| | 141617 | .{ ._, ._ps, .andn, .tmp0x, .tmp1x, ._, ._ }, |
| | 141618 | .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ }, |
| | 141619 | .{ ._, ._ps, .mova, .tmp0x, .dst0x, ._, ._ }, |
| | 141620 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| | 141621 | .{ ._, ._ps, .mova, .tmp1x, .dst0x, ._, ._ }, |
| | 141622 | .{ ._, ._ss, .max, .tmp1x, .tmp0x, ._, ._ }, |
| | 141623 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.unord), ._ }, |
| | 141624 | .{ ._, ._ps, .@"and", .dst0x, .tmp0x, ._, ._ }, |
| | 141625 | .{ ._, ._ps, .andn, .tmp0x, .tmp1x, ._, ._ }, |
| | 141626 | .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ }, |
| | 141627 | } }, |
| | 141628 | }, .{ |
| | 141629 | .required_features = .{ .avx, null, null, null }, |
| | 141630 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141631 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| | 141632 | .patterns = &.{ |
| | 141633 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 141634 | }, |
| | 141635 | .extra_temps = .{ |
| | 141636 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| | 141637 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 141638 | .{ .type = .vector_8_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 141639 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141640 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141641 | .unused, |
| | 141642 | .unused, |
| | 141643 | .unused, |
| | 141644 | .unused, |
| | 141645 | .unused, |
| | 141646 | .unused, |
| | 141647 | }, |
| | 141648 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 141649 | .each = .{ .once = &.{ |
| | 141650 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 141651 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| | 141652 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 141653 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| | 141654 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 141655 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141656 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141657 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141658 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| | 141659 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141660 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141661 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141662 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| | 141663 | .{ ._, .v_ss, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141664 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141665 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141666 | } }, |
| | 141667 | }, .{ |
| | 141668 | .required_features = .{ .avx, null, null, null }, |
| | 141669 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141670 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| | 141671 | .patterns = &.{ |
| | 141672 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 141673 | }, |
| | 141674 | .extra_temps = .{ |
| | 141675 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141676 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141677 | .unused, |
| | 141678 | .unused, |
| | 141679 | .unused, |
| | 141680 | .unused, |
| | 141681 | .unused, |
| | 141682 | .unused, |
| | 141683 | .unused, |
| | 141684 | .unused, |
| | 141685 | .unused, |
| | 141686 | }, |
| | 141687 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 141688 | .each = .{ .once = &.{ |
| | 141689 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| | 141690 | .{ ._, .v_ps, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 141691 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141692 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 141693 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| | 141694 | .{ ._, .v_ps, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 141695 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141696 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 141697 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| | 141698 | .{ ._, .v_ss, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 141699 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141700 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 141701 | } }, |
| | 141702 | }, .{ |
| | 141703 | .required_features = .{ .avx512f, null, null, null }, |
| | 141704 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141705 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| | 141706 | .patterns = &.{ |
| | 141707 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141708 | }, |
| | 141709 | .extra_temps = .{ |
| | 141710 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| | 141711 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 141712 | .{ .type = .vector_16_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 141713 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141714 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141715 | .unused, |
| | 141716 | .unused, |
| | 141717 | .unused, |
| | 141718 | .unused, |
| | 141719 | .unused, |
| | 141720 | .unused, |
| | 141721 | }, |
| | 141722 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 141723 | .each = .{ .once = &.{ |
| | 141724 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 141725 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| | 141726 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| | 141727 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 141728 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| | 141729 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| | 141730 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| | 141731 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| | 141732 | .{ ._, .v_ps, .max, .tmp4y, .dst0y, .tmp3y, ._ }, |
| | 141733 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| | 141734 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| | 141735 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 141736 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141737 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141738 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141739 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| | 141740 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141741 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141742 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141743 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| | 141744 | .{ ._, .v_ss, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141745 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141746 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141747 | } }, |
| | 141748 | }, .{ |
| | 141749 | .required_features = .{ .avx512f, null, null, null }, |
| | 141750 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141751 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| | 141752 | .patterns = &.{ |
| | 141753 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141754 | }, |
| | 141755 | .extra_temps = .{ |
| | 141756 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141757 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141758 | .unused, |
| | 141759 | .unused, |
| | 141760 | .unused, |
| | 141761 | .unused, |
| | 141762 | .unused, |
| | 141763 | .unused, |
| | 141764 | .unused, |
| | 141765 | .unused, |
| | 141766 | .unused, |
| | 141767 | }, |
| | 141768 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 141769 | .each = .{ .once = &.{ |
| | 141770 | .{ ._, .v_ps, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| | 141771 | .{ ._, .v_ps, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| | 141772 | .{ ._, .v_ps, .max, .tmp1y, .dst0y, .tmp0y, ._ }, |
| | 141773 | .{ ._, .v_ps, .cmp, .tmp0y, .tmp0y, .tmp0y, .vp(.ord) }, |
| | 141774 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp1y, .tmp0y }, |
| | 141775 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| | 141776 | .{ ._, .v_ps, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 141777 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141778 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 141779 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| | 141780 | .{ ._, .v_ps, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 141781 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141782 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 141783 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| | 141784 | .{ ._, .v_ss, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 141785 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 141786 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 141787 | } }, |
| | 141788 | }, .{ |
| | 141789 | .required_features = .{ .avx, null, null, null }, |
| | 141790 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141791 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| | 141792 | .patterns = &.{ |
| | 141793 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141794 | }, |
| | 141795 | .extra_temps = .{ |
| | 141796 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 141797 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141798 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141799 | .unused, |
| | 141800 | .unused, |
| | 141801 | .unused, |
| | 141802 | .unused, |
| | 141803 | .unused, |
| | 141804 | .unused, |
| | 141805 | .unused, |
| | 141806 | .unused, |
| | 141807 | }, |
| | 141808 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 141809 | .clobbers = .{ .eflags = true }, |
| | 141810 | .each = .{ .once = &.{ |
| | 141811 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| | 141812 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| | 141813 | .{ .@"0:", .v_ps, .mova, .tmp1y, .memi(.src0y, .tmp0), ._, ._ }, |
| | 141814 | .{ ._, .v_ps, .max, .tmp2y, .dst0y, .tmp1y, ._ }, |
| | 141815 | .{ ._, .v_ps, .cmp, .tmp1y, .tmp1y, .tmp1y, .vp(.ord) }, |
| | 141816 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp2y, .tmp1y }, |
| | 141817 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| | 141818 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 141819 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| | 141820 | .{ ._, .v_ps, .max, .tmp2x, .dst0x, .tmp1x, ._ }, |
| | 141821 | .{ ._, .v_ps, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| | 141822 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| | 141823 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| | 141824 | .{ ._, .v_ps, .max, .tmp2x, .dst0x, .tmp1x, ._ }, |
| | 141825 | .{ ._, .v_ps, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| | 141826 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| | 141827 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| | 141828 | .{ ._, .v_ss, .max, .tmp2x, .dst0x, .tmp1x, ._ }, |
| | 141829 | .{ ._, .v_ss, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| | 141830 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| | 141831 | } }, |
| | 141832 | }, .{ |
| | 141833 | .required_features = .{ .sse4_1, null, null, null }, |
| | 141834 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141835 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| | 141836 | .patterns = &.{ |
| | 141837 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141838 | }, |
| | 141839 | .extra_temps = .{ |
| | 141840 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 141841 | .{ .type = .vector_4_f32, .kind = .{ .reg = .xmm0 } }, |
| | 141842 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141843 | .unused, |
| | 141844 | .unused, |
| | 141845 | .unused, |
| | 141846 | .unused, |
| | 141847 | .unused, |
| | 141848 | .unused, |
| | 141849 | .unused, |
| | 141850 | .unused, |
| | 141851 | }, |
| | 141852 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 141853 | .clobbers = .{ .eflags = true }, |
| | 141854 | .each = .{ .once = &.{ |
| | 141855 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| | 141856 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| | 141857 | .{ .@"0:", ._ps, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 141858 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| | 141859 | .{ ._, ._ps, .max, .tmp2x, .tmp1x, ._, ._ }, |
| | 141860 | .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ }, |
| | 141861 | .{ ._, ._ps, .blendv, .dst0x, .tmp2x, .tmp1x, ._ }, |
| | 141862 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 141863 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 141864 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| | 141865 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| | 141866 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| | 141867 | .{ ._, ._ps, .max, .tmp2x, .tmp1x, ._, ._ }, |
| | 141868 | .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ }, |
| | 141869 | .{ ._, ._ps, .blendv, .dst0x, .tmp2x, .tmp1x, ._ }, |
| | 141870 | .{ ._, ._ps, .mova, .tmp1x, .dst0x, ._, ._ }, |
| | 141871 | .{ ._, ._ps, .shuf, .tmp1x, .tmp1x, .ui(0b01), ._ }, |
| | 141872 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| | 141873 | .{ ._, ._ss, .max, .tmp2x, .tmp1x, ._, ._ }, |
| | 141874 | .{ ._, ._ss, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ }, |
| | 141875 | .{ ._, ._ps, .blendv, .dst0x, .tmp2x, .tmp1x, ._ }, |
| | 141876 | } }, |
| | 141877 | }, .{ |
| | 141878 | .required_features = .{ .sse, null, null, null }, |
| | 141879 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141880 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| | 141881 | .patterns = &.{ |
| | 141882 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141883 | }, |
| | 141884 | .extra_temps = .{ |
| | 141885 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 141886 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141887 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141888 | .unused, |
| | 141889 | .unused, |
| | 141890 | .unused, |
| | 141891 | .unused, |
| | 141892 | .unused, |
| | 141893 | .unused, |
| | 141894 | .unused, |
| | 141895 | .unused, |
| | 141896 | }, |
| | 141897 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 141898 | .clobbers = .{ .eflags = true }, |
| | 141899 | .each = .{ .once = &.{ |
| | 141900 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| | 141901 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| | 141902 | .{ .@"0:", ._ps, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 141903 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| | 141904 | .{ ._, ._ps, .max, .tmp2x, .tmp1x, ._, ._ }, |
| | 141905 | .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ }, |
| | 141906 | .{ ._, ._ps, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| | 141907 | .{ ._, ._ps, .andn, .tmp1x, .tmp2x, ._, ._ }, |
| | 141908 | .{ ._, ._ps, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| | 141909 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 141910 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 141911 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| | 141912 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| | 141913 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| | 141914 | .{ ._, ._ps, .max, .tmp2x, .tmp1x, ._, ._ }, |
| | 141915 | .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ }, |
| | 141916 | .{ ._, ._ps, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| | 141917 | .{ ._, ._ps, .andn, .tmp1x, .tmp2x, ._, ._ }, |
| | 141918 | .{ ._, ._ps, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| | 141919 | .{ ._, ._ps, .mova, .tmp1x, .dst0x, ._, ._ }, |
| | 141920 | .{ ._, ._ps, .shuf, .tmp1x, .tmp1x, .ui(0b01), ._ }, |
| | 141921 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| | 141922 | .{ ._, ._ss, .max, .tmp2x, .tmp1x, ._, ._ }, |
| | 141923 | .{ ._, ._ss, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ }, |
| | 141924 | .{ ._, ._ps, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| | 141925 | .{ ._, ._ps, .andn, .tmp1x, .tmp2x, ._, ._ }, |
| | 141926 | .{ ._, ._ps, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| | 141927 | } }, |
| | 141928 | }, .{ |
| | 141929 | .required_features = .{ .avx512f, null, null, null }, |
| | 141930 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141931 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| | 141932 | .patterns = &.{ |
| | 141933 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141934 | }, |
| | 141935 | .extra_temps = .{ |
| | 141936 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 141937 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 141938 | .{ .type = .vector_16_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 141939 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141940 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| | 141941 | .unused, |
| | 141942 | .unused, |
| | 141943 | .unused, |
| | 141944 | .unused, |
| | 141945 | .unused, |
| | 141946 | .unused, |
| | 141947 | }, |
| | 141948 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 141949 | .clobbers = .{ .eflags = true }, |
| | 141950 | .each = .{ .once = &.{ |
| | 141951 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 141952 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| | 141953 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| | 141954 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 141955 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| | 141956 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| | 141957 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| | 141958 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| | 141959 | .{ ._, .v_ps, .max, .tmp4y, .dst0y, .tmp3y, ._ }, |
| | 141960 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| | 141961 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| | 141962 | .{ ._, ._, .mov, .tmp0d, .sia(-96, .src0, .add_size), ._, ._ }, |
| | 141963 | .{ .@"0:", .v_ps, .mova, .tmp3y, .memi(.src0y, .tmp0), ._, ._ }, |
| | 141964 | .{ ._, .v_ps, .max, .tmp4y, .dst0y, .tmp3y, ._ }, |
| | 141965 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| | 141966 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| | 141967 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| | 141968 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 141969 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 141970 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141971 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141972 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141973 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| | 141974 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141975 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141976 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141977 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| | 141978 | .{ ._, .v_ss, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 141979 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 141980 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 141981 | } }, |
| | 141982 | }, .{ |
| | 141983 | .required_features = .{ .avx, null, null, null }, |
| | 141984 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 141985 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| | 141986 | .patterns = &.{ |
| | 141987 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 141988 | }, |
| | 141989 | .extra_temps = .{ |
| | 141990 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 141991 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 141992 | .{ .type = .vector_8_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 141993 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141994 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 141995 | .unused, |
| | 141996 | .unused, |
| | 141997 | .unused, |
| | 141998 | .unused, |
| | 141999 | .unused, |
| | 142000 | .unused, |
| | 142001 | }, |
| | 142002 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 142003 | .clobbers = .{ .eflags = true }, |
| | 142004 | .each = .{ .once = &.{ |
| | 142005 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 142006 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| | 142007 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 142008 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| | 142009 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| | 142010 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| | 142011 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 142012 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 142013 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 142014 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 142015 | .{ .@"0:", .v_ps, .mova, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 142016 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 142017 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 142018 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 142019 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142020 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142021 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| | 142022 | .{ ._, .v_ps, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 142023 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 142024 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 142025 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| | 142026 | .{ ._, .v_ss, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 142027 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 142028 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 142029 | } }, |
| | 142030 | }, .{ |
| | 142031 | .required_features = .{ .sse4_1, null, null, null }, |
| | 142032 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 142033 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| | 142034 | .patterns = &.{ |
| | 142035 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142036 | }, |
| | 142037 | .extra_temps = .{ |
| | 142038 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142039 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 142040 | .{ .type = .vector_4_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 142041 | .{ .type = .vector_4_f32, .kind = .{ .reg = .xmm0 } }, |
| | 142042 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 142043 | .unused, |
| | 142044 | .unused, |
| | 142045 | .unused, |
| | 142046 | .unused, |
| | 142047 | .unused, |
| | 142048 | .unused, |
| | 142049 | }, |
| | 142050 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 142051 | .clobbers = .{ .eflags = true }, |
| | 142052 | .each = .{ .once = &.{ |
| | 142053 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 142054 | .{ ._, ._ps, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| | 142055 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 142056 | .{ ._, ._ps, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| | 142057 | .{ ._, ._ps, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| | 142058 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| | 142059 | .{ .@"0:", ._ps, .mova, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 142060 | .{ ._, ._ps, .mova, .tmp4x, .dst0x, ._, ._ }, |
| | 142061 | .{ ._, ._ps, .max, .tmp4x, .tmp3x, ._, ._ }, |
| | 142062 | .{ ._, ._ps, .cmp, .tmp3x, .tmp3x, .sp(.ord), ._ }, |
| | 142063 | .{ ._, ._ps, .blendv, .dst0x, .tmp4x, .tmp3x, ._ }, |
| | 142064 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142065 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142066 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| | 142067 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| | 142068 | .{ ._, ._ps, .mova, .tmp4x, .dst0x, ._, ._ }, |
| | 142069 | .{ ._, ._ps, .max, .tmp4x, .tmp3x, ._, ._ }, |
| | 142070 | .{ ._, ._ps, .cmp, .tmp3x, .tmp3x, .sp(.ord), ._ }, |
| | 142071 | .{ ._, ._ps, .blendv, .dst0x, .tmp4x, .tmp3x, ._ }, |
| | 142072 | .{ ._, ._ps, .mova, .tmp3x, .dst0x, ._, ._ }, |
| | 142073 | .{ ._, ._ps, .shuf, .tmp3x, .tmp3x, .ui(0b01), ._ }, |
| | 142074 | .{ ._, ._ps, .mova, .tmp4x, .dst0x, ._, ._ }, |
| | 142075 | .{ ._, ._ss, .max, .tmp4x, .tmp3x, ._, ._ }, |
| | 142076 | .{ ._, ._ss, .cmp, .tmp3x, .tmp3x, .sp(.ord), ._ }, |
| | 142077 | .{ ._, ._ps, .blendv, .dst0x, .tmp4x, .tmp3x, ._ }, |
| | 142078 | } }, |
| | 142079 | }, .{ |
| | 142080 | .required_features = .{ .sse, null, null, null }, |
| | 142081 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| | 142082 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| | 142083 | .patterns = &.{ |
| | 142084 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142085 | }, |
| | 142086 | .extra_temps = .{ |
| | 142087 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142088 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 142089 | .{ .type = .vector_4_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 142090 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 142091 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| | 142092 | .unused, |
| | 142093 | .unused, |
| | 142094 | .unused, |
| | 142095 | .unused, |
| | 142096 | .unused, |
| | 142097 | .unused, |
| | 142098 | }, |
| | 142099 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 142100 | .clobbers = .{ .eflags = true }, |
| | 142101 | .each = .{ .once = &.{ |
| | 142102 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 142103 | .{ ._, ._ps, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| | 142104 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 142105 | .{ ._, ._ps, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| | 142106 | .{ ._, ._ps, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| | 142107 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| | 142108 | .{ .@"0:", ._ps, .mova, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 142109 | .{ ._, ._ps, .mova, .tmp4x, .dst0x, ._, ._ }, |
| | 142110 | .{ ._, ._ps, .max, .tmp4x, .tmp3x, ._, ._ }, |
| | 142111 | .{ ._, ._ps, .cmp, .tmp3x, .tmp3x, .sp(.unord), ._ }, |
| | 142112 | .{ ._, ._ps, .@"and", .dst0x, .tmp3x, ._, ._ }, |
| | 142113 | .{ ._, ._ps, .andn, .tmp3x, .tmp4x, ._, ._ }, |
| | 142114 | .{ ._, ._ps, .@"or", .dst0x, .tmp3x, ._, ._ }, |
| | 142115 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142116 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142117 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| | 142118 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| | 142119 | .{ ._, ._ps, .mova, .tmp4x, .dst0x, ._, ._ }, |
| | 142120 | .{ ._, ._ps, .max, .tmp4x, .tmp3x, ._, ._ }, |
| | 142121 | .{ ._, ._ps, .cmp, .tmp3x, .tmp3x, .sp(.unord), ._ }, |
| | 142122 | .{ ._, ._ps, .@"and", .dst0x, .tmp3x, ._, ._ }, |
| | 142123 | .{ ._, ._ps, .andn, .tmp3x, .tmp4x, ._, ._ }, |
| | 142124 | .{ ._, ._ps, .@"or", .dst0x, .tmp3x, ._, ._ }, |
| | 142125 | .{ ._, ._ps, .mova, .tmp3x, .dst0x, ._, ._ }, |
| | 142126 | .{ ._, ._ps, .shuf, .tmp3x, .tmp3x, .ui(0b01), ._ }, |
| | 142127 | .{ ._, ._ps, .mova, .tmp4x, .dst0x, ._, ._ }, |
| | 142128 | .{ ._, ._ss, .max, .tmp4x, .tmp3x, ._, ._ }, |
| | 142129 | .{ ._, ._ss, .cmp, .tmp3x, .tmp3x, .sp(.unord), ._ }, |
| | 142130 | .{ ._, ._ps, .@"and", .dst0x, .tmp3x, ._, ._ }, |
| | 142131 | .{ ._, ._ps, .andn, .tmp3x, .tmp4x, ._, ._ }, |
| | 142132 | .{ ._, ._ps, .@"or", .dst0x, .tmp3x, ._, ._ }, |
| | 142133 | } }, |
| | 142134 | }, .{ |
| | 142135 | .required_features = .{ .avx, null, null, null }, |
| | 142136 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142137 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| | 142138 | .patterns = &.{ |
| | 142139 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 142140 | }, |
| | 142141 | .extra_temps = .{ |
| | 142142 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142143 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142144 | .unused, |
| | 142145 | .unused, |
| | 142146 | .unused, |
| | 142147 | .unused, |
| | 142148 | .unused, |
| | 142149 | .unused, |
| | 142150 | .unused, |
| | 142151 | .unused, |
| | 142152 | .unused, |
| | 142153 | }, |
| | 142154 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 142155 | .each = .{ .once = &.{ |
| | 142156 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| | 142157 | .{ ._, .v_sd, .max, .tmp1x, .src0x, .tmp0x, ._ }, |
| | 142158 | .{ ._, .v_sd, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 142159 | .{ ._, .v_pd, .blendv, .dst0x, .src0x, .tmp1x, .tmp0x }, |
| | 142160 | } }, |
| | 142161 | }, .{ |
| | 142162 | .required_features = .{ .sse4_1, null, null, null }, |
| | 142163 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142164 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| | 142165 | .patterns = &.{ |
| | 142166 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| | 142167 | }, |
| | 142168 | .extra_temps = .{ |
| | 142169 | .{ .type = .vector_2_f64, .kind = .{ .reg = .xmm0 } }, |
| | 142170 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142171 | .unused, |
| | 142172 | .unused, |
| | 142173 | .unused, |
| | 142174 | .unused, |
| | 142175 | .unused, |
| | 142176 | .unused, |
| | 142177 | .unused, |
| | 142178 | .unused, |
| | 142179 | .unused, |
| | 142180 | }, |
| | 142181 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 142182 | .each = .{ .once = &.{ |
| | 142183 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| | 142184 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| | 142185 | .{ ._, ._pd, .mova, .tmp1x, .src0x, ._, ._ }, |
| | 142186 | .{ ._, ._sd, .max, .tmp1x, .tmp0x, ._, ._ }, |
| | 142187 | .{ ._, ._sd, .cmp, .tmp0x, .tmp0x, .sp(.ord), ._ }, |
| | 142188 | .{ ._, ._pd, .blendv, .dst0x, .tmp1x, .tmp0x, ._ }, |
| | 142189 | } }, |
| | 142190 | }, .{ |
| | 142191 | .required_features = .{ .sse2, null, null, null }, |
| | 142192 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142193 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| | 142194 | .patterns = &.{ |
| | 142195 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| | 142196 | }, |
| | 142197 | .extra_temps = .{ |
| | 142198 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142199 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142200 | .unused, |
| | 142201 | .unused, |
| | 142202 | .unused, |
| | 142203 | .unused, |
| | 142204 | .unused, |
| | 142205 | .unused, |
| | 142206 | .unused, |
| | 142207 | .unused, |
| | 142208 | .unused, |
| | 142209 | }, |
| | 142210 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| | 142211 | .each = .{ .once = &.{ |
| | 142212 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| | 142213 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| | 142214 | .{ ._, ._pd, .mova, .tmp1x, .src0x, ._, ._ }, |
| | 142215 | .{ ._, ._sd, .max, .tmp1x, .tmp0x, ._, ._ }, |
| | 142216 | .{ ._, ._sd, .cmp, .tmp0x, .tmp0x, .sp(.unord), ._ }, |
| | 142217 | .{ ._, ._pd, .@"and", .dst0x, .tmp0x, ._, ._ }, |
| | 142218 | .{ ._, ._pd, .andn, .tmp0x, .tmp1x, ._, ._ }, |
| | 142219 | .{ ._, ._pd, .@"or", .dst0x, .tmp0x, ._, ._ }, |
| | 142220 | } }, |
| | 142221 | }, .{ |
| | 142222 | .required_features = .{ .avx, null, null, null }, |
| | 142223 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142224 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| | 142225 | .patterns = &.{ |
| | 142226 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 142227 | }, |
| | 142228 | .extra_temps = .{ |
| | 142229 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142230 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142231 | .unused, |
| | 142232 | .unused, |
| | 142233 | .unused, |
| | 142234 | .unused, |
| | 142235 | .unused, |
| | 142236 | .unused, |
| | 142237 | .unused, |
| | 142238 | .unused, |
| | 142239 | .unused, |
| | 142240 | }, |
| | 142241 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 142242 | .each = .{ .once = &.{ |
| | 142243 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| | 142244 | .{ ._, .v_sd, .max, .tmp1x, .src0x, .tmp0x, ._ }, |
| | 142245 | .{ ._, .v_sd, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 142246 | .{ ._, .v_pd, .blendv, .tmp0x, .src0x, .tmp1x, .tmp0x }, |
| | 142247 | .{ ._, .v_ps, .movhl, .dst0x, .src0x, .src0x, ._ }, |
| | 142248 | .{ ._, .v_sd, .max, .tmp1x, .tmp0x, .dst0x, ._ }, |
| | 142249 | .{ ._, .v_sd, .cmp, .dst0x, .dst0x, .dst0x, .vp(.ord) }, |
| | 142250 | .{ ._, .v_pd, .blendv, .dst0x, .tmp0x, .tmp1x, .dst0x }, |
| | 142251 | } }, |
| | 142252 | }, .{ |
| | 142253 | .required_features = .{ .avx, null, null, null }, |
| | 142254 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142255 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| | 142256 | .patterns = &.{ |
| | 142257 | .{ .src = .{ .to_sse, .none, .none } }, |
| | 142258 | }, |
| | 142259 | .extra_temps = .{ |
| | 142260 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142261 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142262 | .unused, |
| | 142263 | .unused, |
| | 142264 | .unused, |
| | 142265 | .unused, |
| | 142266 | .unused, |
| | 142267 | .unused, |
| | 142268 | .unused, |
| | 142269 | .unused, |
| | 142270 | .unused, |
| | 142271 | }, |
| | 142272 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| | 142273 | .each = .{ .once = &.{ |
| | 142274 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| | 142275 | .{ ._, .v_pd, .max, .tmp1x, .src0x, .tmp0x, ._ }, |
| | 142276 | .{ ._, .v_pd, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 142277 | .{ ._, .v_pd, .blendv, .dst0x, .src0x, .tmp1x, .tmp0x }, |
| | 142278 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| | 142279 | .{ ._, .v_sd, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 142280 | .{ ._, .v_sd, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 142281 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 142282 | } }, |
| | 142283 | }, .{ |
| | 142284 | .required_features = .{ .avx512f, null, null, null }, |
| | 142285 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142286 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| | 142287 | .patterns = &.{ |
| | 142288 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142289 | }, |
| | 142290 | .extra_temps = .{ |
| | 142291 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| | 142292 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 142293 | .{ .type = .vector_8_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 142294 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| | 142295 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| | 142296 | .unused, |
| | 142297 | .unused, |
| | 142298 | .unused, |
| | 142299 | .unused, |
| | 142300 | .unused, |
| | 142301 | .unused, |
| | 142302 | }, |
| | 142303 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 142304 | .each = .{ .once = &.{ |
| | 142305 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 142306 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| | 142307 | .{ ._, .v_pd, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| | 142308 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 142309 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| | 142310 | .{ ._, .v_pd, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| | 142311 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| | 142312 | .{ ._, .v_pd, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| | 142313 | .{ ._, .v_pd, .max, .tmp4y, .dst0y, .tmp3y, ._ }, |
| | 142314 | .{ ._, .v_pd, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| | 142315 | .{ ._, .v_pd, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| | 142316 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 142317 | .{ ._, .v_pd, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 142318 | .{ ._, .v_pd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 142319 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 142320 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| | 142321 | .{ ._, .v_sd, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 142322 | .{ ._, .v_sd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 142323 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 142324 | } }, |
| | 142325 | }, .{ |
| | 142326 | .required_features = .{ .avx512f, null, null, null }, |
| | 142327 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142328 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| | 142329 | .patterns = &.{ |
| | 142330 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142331 | }, |
| | 142332 | .extra_temps = .{ |
| | 142333 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142334 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142335 | .unused, |
| | 142336 | .unused, |
| | 142337 | .unused, |
| | 142338 | .unused, |
| | 142339 | .unused, |
| | 142340 | .unused, |
| | 142341 | .unused, |
| | 142342 | .unused, |
| | 142343 | .unused, |
| | 142344 | }, |
| | 142345 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 142346 | .each = .{ .once = &.{ |
| | 142347 | .{ ._, .v_pd, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| | 142348 | .{ ._, .v_pd, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| | 142349 | .{ ._, .v_pd, .max, .tmp1y, .dst0y, .tmp0y, ._ }, |
| | 142350 | .{ ._, .v_pd, .cmp, .tmp0y, .tmp0y, .tmp0y, .vp(.ord) }, |
| | 142351 | .{ ._, .v_pd, .blendv, .dst0y, .dst0y, .tmp1y, .tmp0y }, |
| | 142352 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| | 142353 | .{ ._, .v_pd, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 142354 | .{ ._, .v_pd, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 142355 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 142356 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| | 142357 | .{ ._, .v_sd, .max, .tmp1x, .dst0x, .tmp0x, ._ }, |
| | 142358 | .{ ._, .v_sd, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| | 142359 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| | 142360 | } }, |
| | 142361 | }, .{ |
| | 142362 | .required_features = .{ .avx, null, null, null }, |
| | 142363 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142364 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| | 142365 | .patterns = &.{ |
| | 142366 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142367 | }, |
| | 142368 | .extra_temps = .{ |
| | 142369 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142370 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142371 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142372 | .unused, |
| | 142373 | .unused, |
| | 142374 | .unused, |
| | 142375 | .unused, |
| | 142376 | .unused, |
| | 142377 | .unused, |
| | 142378 | .unused, |
| | 142379 | .unused, |
| | 142380 | }, |
| | 142381 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 142382 | .clobbers = .{ .eflags = true }, |
| | 142383 | .each = .{ .once = &.{ |
| | 142384 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| | 142385 | .{ ._, .v_pd, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| | 142386 | .{ .@"0:", .v_pd, .mova, .tmp1y, .memi(.src0y, .tmp0), ._, ._ }, |
| | 142387 | .{ ._, .v_pd, .max, .tmp2y, .dst0y, .tmp1y, ._ }, |
| | 142388 | .{ ._, .v_pd, .cmp, .tmp1y, .tmp1y, .tmp1y, .vp(.ord) }, |
| | 142389 | .{ ._, .v_pd, .blendv, .dst0y, .dst0y, .tmp2y, .tmp1y }, |
| | 142390 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| | 142391 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142392 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| | 142393 | .{ ._, .v_pd, .max, .tmp2x, .dst0x, .tmp1x, ._ }, |
| | 142394 | .{ ._, .v_pd, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| | 142395 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| | 142396 | .{ ._, .v_pd, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| | 142397 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| | 142398 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| | 142399 | .{ ._, .v_sd, .max, .tmp2x, .dst0x, .tmp1x, ._ }, |
| | 142400 | .{ ._, .v_sd, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| | 142401 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| | 142402 | } }, |
| | 142403 | }, .{ |
| | 142404 | .required_features = .{ .sse4_1, null, null, null }, |
| | 142405 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142406 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| | 142407 | .patterns = &.{ |
| | 142408 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142409 | }, |
| | 142410 | .extra_temps = .{ |
| | 142411 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142412 | .{ .type = .vector_2_f64, .kind = .{ .reg = .xmm0 } }, |
| | 142413 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142414 | .unused, |
| | 142415 | .unused, |
| | 142416 | .unused, |
| | 142417 | .unused, |
| | 142418 | .unused, |
| | 142419 | .unused, |
| | 142420 | .unused, |
| | 142421 | .unused, |
| | 142422 | }, |
| | 142423 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 142424 | .clobbers = .{ .eflags = true }, |
| | 142425 | .each = .{ .once = &.{ |
| | 142426 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| | 142427 | .{ ._, ._pd, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| | 142428 | .{ .@"0:", ._pd, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 142429 | .{ ._, ._pd, .mova, .tmp2x, .dst0x, ._, ._ }, |
| | 142430 | .{ ._, ._pd, .max, .tmp2x, .tmp1x, ._, ._ }, |
| | 142431 | .{ ._, ._pd, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ }, |
| | 142432 | .{ ._, ._pd, .blendv, .dst0x, .tmp2x, .tmp1x, ._ }, |
| | 142433 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142434 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142435 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| | 142436 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| | 142437 | .{ ._, ._pd, .mova, .tmp2x, .dst0x, ._, ._ }, |
| | 142438 | .{ ._, ._sd, .max, .tmp2x, .tmp1x, ._, ._ }, |
| | 142439 | .{ ._, ._sd, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ }, |
| | 142440 | .{ ._, ._pd, .blendv, .dst0x, .tmp2x, .tmp1x, ._ }, |
| | 142441 | } }, |
| | 142442 | }, .{ |
| | 142443 | .required_features = .{ .sse2, null, null, null }, |
| | 142444 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142445 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| | 142446 | .patterns = &.{ |
| | 142447 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142448 | }, |
| | 142449 | .extra_temps = .{ |
| | 142450 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142451 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142452 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142453 | .unused, |
| | 142454 | .unused, |
| | 142455 | .unused, |
| | 142456 | .unused, |
| | 142457 | .unused, |
| | 142458 | .unused, |
| | 142459 | .unused, |
| | 142460 | .unused, |
| | 142461 | }, |
| | 142462 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 142463 | .clobbers = .{ .eflags = true }, |
| | 142464 | .each = .{ .once = &.{ |
| | 142465 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| | 142466 | .{ ._, ._pd, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| | 142467 | .{ .@"0:", ._pd, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 142468 | .{ ._, ._pd, .mova, .tmp2x, .dst0x, ._, ._ }, |
| | 142469 | .{ ._, ._pd, .max, .tmp2x, .tmp1x, ._, ._ }, |
| | 142470 | .{ ._, ._pd, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ }, |
| | 142471 | .{ ._, ._pd, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| | 142472 | .{ ._, ._pd, .andn, .tmp1x, .tmp2x, ._, ._ }, |
| | 142473 | .{ ._, ._pd, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| | 142474 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142475 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142476 | .{ ._, ._pd, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| | 142477 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| | 142478 | .{ ._, ._pd, .mova, .tmp2x, .dst0x, ._, ._ }, |
| | 142479 | .{ ._, ._sd, .max, .tmp2x, .tmp1x, ._, ._ }, |
| | 142480 | .{ ._, ._sd, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ }, |
| | 142481 | .{ ._, ._pd, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| | 142482 | .{ ._, ._pd, .andn, .tmp1x, .tmp2x, ._, ._ }, |
| | 142483 | .{ ._, ._pd, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| | 142484 | } }, |
| | 142485 | }, .{ |
| | 142486 | .required_features = .{ .avx512f, null, null, null }, |
| | 142487 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142488 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| | 142489 | .patterns = &.{ |
| | 142490 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142491 | }, |
| | 142492 | .extra_temps = .{ |
| | 142493 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142494 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 142495 | .{ .type = .vector_8_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 142496 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| | 142497 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| | 142498 | .unused, |
| | 142499 | .unused, |
| | 142500 | .unused, |
| | 142501 | .unused, |
| | 142502 | .unused, |
| | 142503 | .unused, |
| | 142504 | }, |
| | 142505 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 142506 | .clobbers = .{ .eflags = true }, |
| | 142507 | .each = .{ .once = &.{ |
| | 142508 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 142509 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| | 142510 | .{ ._, .v_pd, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| | 142511 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 142512 | .{ ._, .v_pd, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| | 142513 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| | 142514 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| | 142515 | .{ ._, .v_pd, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| | 142516 | .{ ._, .v_pd, .max, .tmp4y, .dst0y, .tmp3y, ._ }, |
| | 142517 | .{ ._, .v_pd, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| | 142518 | .{ ._, .v_pd, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| | 142519 | .{ ._, ._, .mov, .tmp0d, .sia(-96, .src0, .add_size), ._, ._ }, |
| | 142520 | .{ .@"0:", .v_pd, .mova, .tmp3y, .memi(.src0y, .tmp0), ._, ._ }, |
| | 142521 | .{ ._, .v_pd, .max, .tmp4y, .dst0y, .tmp3y, ._ }, |
| | 142522 | .{ ._, .v_pd, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| | 142523 | .{ ._, .v_pd, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| | 142524 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| | 142525 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142526 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 142527 | .{ ._, .v_pd, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 142528 | .{ ._, .v_pd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 142529 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 142530 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| | 142531 | .{ ._, .v_sd, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 142532 | .{ ._, .v_sd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 142533 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 142534 | } }, |
| | 142535 | }, .{ |
| | 142536 | .required_features = .{ .avx, null, null, null }, |
| | 142537 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142538 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| | 142539 | .patterns = &.{ |
| | 142540 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142541 | }, |
| | 142542 | .extra_temps = .{ |
| | 142543 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142544 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 142545 | .{ .type = .vector_4_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 142546 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142547 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142548 | .unused, |
| | 142549 | .unused, |
| | 142550 | .unused, |
| | 142551 | .unused, |
| | 142552 | .unused, |
| | 142553 | .unused, |
| | 142554 | }, |
| | 142555 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 142556 | .clobbers = .{ .eflags = true }, |
| | 142557 | .each = .{ .once = &.{ |
| | 142558 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 142559 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| | 142560 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 142561 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| | 142562 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| | 142563 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| | 142564 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| | 142565 | .{ ._, .v_pd, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 142566 | .{ ._, .v_pd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 142567 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 142568 | .{ .@"0:", .v_pd, .mova, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 142569 | .{ ._, .v_pd, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 142570 | .{ ._, .v_pd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 142571 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 142572 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142573 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142574 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| | 142575 | .{ ._, .v_sd, .max, .tmp4x, .dst0x, .tmp3x, ._ }, |
| | 142576 | .{ ._, .v_sd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| | 142577 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| | 142578 | } }, |
| | 142579 | }, .{ |
| | 142580 | .required_features = .{ .sse4_1, null, null, null }, |
| | 142581 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142582 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| | 142583 | .patterns = &.{ |
| | 142584 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142585 | }, |
| | 142586 | .extra_temps = .{ |
| | 142587 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142588 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 142589 | .{ .type = .vector_2_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 142590 | .{ .type = .vector_2_f64, .kind = .{ .reg = .xmm0 } }, |
| | 142591 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142592 | .unused, |
| | 142593 | .unused, |
| | 142594 | .unused, |
| | 142595 | .unused, |
| | 142596 | .unused, |
| | 142597 | .unused, |
| | 142598 | }, |
| | 142599 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 142600 | .clobbers = .{ .eflags = true }, |
| | 142601 | .each = .{ .once = &.{ |
| | 142602 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 142603 | .{ ._, ._pd, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| | 142604 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 142605 | .{ ._, ._pd, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| | 142606 | .{ ._, ._pd, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| | 142607 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| | 142608 | .{ .@"0:", ._pd, .mova, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 142609 | .{ ._, ._pd, .mova, .tmp4x, .dst0x, ._, ._ }, |
| | 142610 | .{ ._, ._pd, .max, .tmp4x, .tmp3x, ._, ._ }, |
| | 142611 | .{ ._, ._pd, .cmp, .tmp3x, .tmp3x, .sp(.ord), ._ }, |
| | 142612 | .{ ._, ._pd, .blendv, .dst0x, .tmp4x, .tmp3x, ._ }, |
| | 142613 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142614 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142615 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| | 142616 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| | 142617 | .{ ._, ._pd, .mova, .tmp4x, .dst0x, ._, ._ }, |
| | 142618 | .{ ._, ._sd, .max, .tmp4x, .tmp3x, ._, ._ }, |
| | 142619 | .{ ._, ._sd, .cmp, .tmp3x, .tmp3x, .sp(.ord), ._ }, |
| | 142620 | .{ ._, ._pd, .blendv, .dst0x, .tmp4x, .tmp3x, ._ }, |
| | 142621 | } }, |
| | 142622 | }, .{ |
| | 142623 | .required_features = .{ .sse2, null, null, null }, |
| | 142624 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142625 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| | 142626 | .patterns = &.{ |
| | 142627 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142628 | }, |
| | 142629 | .extra_temps = .{ |
| | 142630 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142631 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| | 142632 | .{ .type = .vector_2_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -nan } } }, |
| | 142633 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142634 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| | 142635 | .unused, |
| | 142636 | .unused, |
| | 142637 | .unused, |
| | 142638 | .unused, |
| | 142639 | .unused, |
| | 142640 | .unused, |
| | 142641 | }, |
| | 142642 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| | 142643 | .clobbers = .{ .eflags = true }, |
| | 142644 | .each = .{ .once = &.{ |
| | 142645 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| | 142646 | .{ ._, ._pd, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| | 142647 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| | 142648 | .{ ._, ._pd, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| | 142649 | .{ ._, ._pd, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| | 142650 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| | 142651 | .{ .@"0:", ._pd, .mova, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 142652 | .{ ._, ._pd, .mova, .tmp4x, .dst0x, ._, ._ }, |
| | 142653 | .{ ._, ._pd, .max, .tmp4x, .tmp3x, ._, ._ }, |
| | 142654 | .{ ._, ._pd, .cmp, .tmp3x, .tmp3x, .sp(.unord), ._ }, |
| | 142655 | .{ ._, ._pd, .@"and", .dst0x, .tmp3x, ._, ._ }, |
| | 142656 | .{ ._, ._pd, .andn, .tmp3x, .tmp4x, ._, ._ }, |
| | 142657 | .{ ._, ._pd, .@"or", .dst0x, .tmp3x, ._, ._ }, |
| | 142658 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142659 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142660 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| | 142661 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| | 142662 | .{ ._, ._pd, .mova, .tmp4x, .dst0x, ._, ._ }, |
| | 142663 | .{ ._, ._sd, .max, .tmp4x, .tmp3x, ._, ._ }, |
| | 142664 | .{ ._, ._sd, .cmp, .tmp3x, .tmp3x, .sp(.unord), ._ }, |
| | 142665 | .{ ._, ._pd, .@"and", .dst0x, .tmp3x, ._, ._ }, |
| | 142666 | .{ ._, ._pd, .andn, .tmp3x, .tmp4x, ._, ._ }, |
| | 142667 | .{ ._, ._pd, .@"or", .dst0x, .tmp3x, ._, ._ }, |
| | 142668 | } }, |
| | 142669 | }, .{ |
| | 142670 | .required_features = .{ .x87, .cmov, null, null }, |
| | 142671 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142672 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| | 142673 | .patterns = &.{ |
| | 142674 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142675 | }, |
| | 142676 | .extra_temps = .{ |
| | 142677 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142678 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| | 142679 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| | 142680 | .unused, |
| | 142681 | .unused, |
| | 142682 | .unused, |
| | 142683 | .unused, |
| | 142684 | .unused, |
| | 142685 | .unused, |
| | 142686 | .unused, |
| | 142687 | .unused, |
| | 142688 | }, |
| | 142689 | .dst_temps = .{ .mem, .unused }, |
| | 142690 | .clobbers = .{ .eflags = true }, |
| | 142691 | .each = .{ .once = &.{ |
| | 142692 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| | 142693 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| | 142694 | .{ .@"0:", .f_, .ld, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| | 142695 | .{ ._, .f_, .ucomi, .tmp2t, .tmp2t, ._, ._ }, |
| | 142696 | .{ ._, .f_u, .cmov, .tmp2t, .tmp1t, ._, ._ }, |
| | 142697 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| | 142698 | .{ ._, .f_, .ucomi, .tmp2t, .tmp1t, ._, ._ }, |
| | 142699 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| | 142700 | .{ ._, .f_nb, .cmov, .tmp2t, .tmp1t, ._, ._ }, |
| | 142701 | .{ ._, .f_p, .st, .tmp1t, ._, ._, ._ }, |
| | 142702 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| | 142703 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142704 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| | 142705 | } }, |
| | 142706 | }, .{ |
| | 142707 | .required_features = .{ .sahf, .x87, null, null }, |
| | 142708 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142709 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| | 142710 | .patterns = &.{ |
| | 142711 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142712 | }, |
| | 142713 | .extra_temps = .{ |
| | 142714 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142715 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| | 142716 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| | 142717 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| | 142718 | .unused, |
| | 142719 | .unused, |
| | 142720 | .unused, |
| | 142721 | .unused, |
| | 142722 | .unused, |
| | 142723 | .unused, |
| | 142724 | .unused, |
| | 142725 | }, |
| | 142726 | .dst_temps = .{ .mem, .unused }, |
| | 142727 | .clobbers = .{ .eflags = true }, |
| | 142728 | .each = .{ .once = &.{ |
| | 142729 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| | 142730 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| | 142731 | .{ .@"0:", .f_, .ld, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| | 142732 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| | 142733 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| | 142734 | .{ ._, ._, .sahf, ._, ._, ._, ._ }, |
| | 142735 | .{ ._, ._nb, .j, .@"1f", ._, ._, ._ }, |
| | 142736 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| | 142737 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, |
| | 142738 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| | 142739 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| | 142740 | .{ ._, ._nz, .j, .@"1f", ._, ._, ._ }, |
| | 142741 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| | 142742 | .{ .@"1:", .f_p, .st, .tmp1t, ._, ._, ._ }, |
| | 142743 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| | 142744 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142745 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| | 142746 | } }, |
| | 142747 | }, .{ |
| | 142748 | .required_features = .{ .x87, null, null, null }, |
| | 142749 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| | 142750 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| | 142751 | .patterns = &.{ |
| | 142752 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142753 | }, |
| | 142754 | .extra_temps = .{ |
| | 142755 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142756 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| | 142757 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| | 142758 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| | 142759 | .unused, |
| | 142760 | .unused, |
| | 142761 | .unused, |
| | 142762 | .unused, |
| | 142763 | .unused, |
| | 142764 | .unused, |
| | 142765 | .unused, |
| | 142766 | }, |
| | 142767 | .dst_temps = .{ .mem, .unused }, |
| | 142768 | .clobbers = .{ .eflags = true }, |
| | 142769 | .each = .{ .once = &.{ |
| | 142770 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| | 142771 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| | 142772 | .{ .@"0:", .f_, .ld, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| | 142773 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| | 142774 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| | 142775 | .{ ._, ._, .@"test", .tmp3h, .si(0b0_000_001), ._, ._ }, |
| | 142776 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 142777 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| | 142778 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, |
| | 142779 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| | 142780 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| | 142781 | .{ ._, ._nz, .j, .@"1f", ._, ._, ._ }, |
| | 142782 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| | 142783 | .{ .@"1:", .f_p, .st, .tmp1t, ._, ._, ._ }, |
| | 142784 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| | 142785 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142786 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| | 142787 | } }, |
| | 142788 | }, .{ |
| | 142789 | .required_features = .{ .x87, .cmov, null, null }, |
| | 142790 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| | 142791 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| | 142792 | .patterns = &.{ |
| | 142793 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142794 | }, |
| | 142795 | .extra_temps = .{ |
| | 142796 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142797 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| | 142798 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| | 142799 | .unused, |
| | 142800 | .unused, |
| | 142801 | .unused, |
| | 142802 | .unused, |
| | 142803 | .unused, |
| | 142804 | .unused, |
| | 142805 | .unused, |
| | 142806 | .unused, |
| | 142807 | }, |
| | 142808 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| | 142809 | .clobbers = .{ .eflags = true }, |
| | 142810 | .each = .{ .once = &.{ |
| | 142811 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| | 142812 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| | 142813 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| | 142814 | .{ ._, .f_, .ucomi, .tmp2t, .tmp2t, ._, ._ }, |
| | 142815 | .{ ._, .f_u, .cmov, .tmp2t, .tmp1t, ._, ._ }, |
| | 142816 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| | 142817 | .{ ._, .f_, .ucomi, .tmp2t, .tmp1t, ._, ._ }, |
| | 142818 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| | 142819 | .{ ._, .f_nb, .cmov, .tmp2t, .tmp1t, ._, ._ }, |
| | 142820 | .{ ._, .f_p, .st, .tmp1t, ._, ._, ._ }, |
| | 142821 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142822 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142823 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| | 142824 | } }, |
| | 142825 | }, .{ |
| | 142826 | .required_features = .{ .sahf, .x87, null, null }, |
| | 142827 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| | 142828 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| | 142829 | .patterns = &.{ |
| | 142830 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142831 | }, |
| | 142832 | .extra_temps = .{ |
| | 142833 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142834 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| | 142835 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| | 142836 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| | 142837 | .unused, |
| | 142838 | .unused, |
| | 142839 | .unused, |
| | 142840 | .unused, |
| | 142841 | .unused, |
| | 142842 | .unused, |
| | 142843 | .unused, |
| | 142844 | }, |
| | 142845 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| | 142846 | .clobbers = .{ .eflags = true }, |
| | 142847 | .each = .{ .once = &.{ |
| | 142848 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| | 142849 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| | 142850 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| | 142851 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| | 142852 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| | 142853 | .{ ._, ._, .sahf, ._, ._, ._, ._ }, |
| | 142854 | .{ ._, ._nb, .j, .@"1f", ._, ._, ._ }, |
| | 142855 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| | 142856 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, |
| | 142857 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| | 142858 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| | 142859 | .{ ._, ._nz, .j, .@"1f", ._, ._, ._ }, |
| | 142860 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| | 142861 | .{ .@"1:", .f_p, .st, .tmp1t, ._, ._, ._ }, |
| | 142862 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142863 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142864 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| | 142865 | } }, |
| | 142866 | }, .{ |
| | 142867 | .required_features = .{ .x87, null, null, null }, |
| | 142868 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| | 142869 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| | 142870 | .patterns = &.{ |
| | 142871 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142872 | }, |
| | 142873 | .extra_temps = .{ |
| | 142874 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142875 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| | 142876 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| | 142877 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| | 142878 | .unused, |
| | 142879 | .unused, |
| | 142880 | .unused, |
| | 142881 | .unused, |
| | 142882 | .unused, |
| | 142883 | .unused, |
| | 142884 | .unused, |
| | 142885 | }, |
| | 142886 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| | 142887 | .clobbers = .{ .eflags = true }, |
| | 142888 | .each = .{ .once = &.{ |
| | 142889 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| | 142890 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| | 142891 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| | 142892 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| | 142893 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| | 142894 | .{ ._, ._, .@"test", .tmp3h, .si(0b0_000_001), ._, ._ }, |
| | 142895 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| | 142896 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| | 142897 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, |
| | 142898 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| | 142899 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| | 142900 | .{ ._, ._nz, .j, .@"1f", ._, ._, ._ }, |
| | 142901 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| | 142902 | .{ .@"1:", .f_p, .st, .tmp1t, ._, ._, ._ }, |
| | 142903 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142904 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142905 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| | 142906 | } }, |
| | 142907 | }, .{ |
| | 142908 | .required_features = .{ .avx, null, null, null }, |
| | 142909 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| | 142910 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| | 142911 | .patterns = &.{ |
| | 142912 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142913 | }, |
| | 142914 | .call_frame = .{ .alignment = .@"16" }, |
| | 142915 | .extra_temps = .{ |
| | 142916 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142917 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| | 142918 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } }, |
| | 142919 | .unused, |
| | 142920 | .unused, |
| | 142921 | .unused, |
| | 142922 | .unused, |
| | 142923 | .unused, |
| | 142924 | .unused, |
| | 142925 | .unused, |
| | 142926 | .unused, |
| | 142927 | }, |
| | 142928 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| | 142929 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 142930 | .each = .{ .once = &.{ |
| | 142931 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| | 142932 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| | 142933 | .{ .@"0:", .v_dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 142934 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| | 142935 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142936 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142937 | } }, |
| | 142938 | }, .{ |
| | 142939 | .required_features = .{ .sse2, null, null, null }, |
| | 142940 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| | 142941 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| | 142942 | .patterns = &.{ |
| | 142943 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142944 | }, |
| | 142945 | .call_frame = .{ .alignment = .@"16" }, |
| | 142946 | .extra_temps = .{ |
| | 142947 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142948 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| | 142949 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } }, |
| | 142950 | .unused, |
| | 142951 | .unused, |
| | 142952 | .unused, |
| | 142953 | .unused, |
| | 142954 | .unused, |
| | 142955 | .unused, |
| | 142956 | .unused, |
| | 142957 | .unused, |
| | 142958 | }, |
| | 142959 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| | 142960 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 142961 | .each = .{ .once = &.{ |
| | 142962 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| | 142963 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| | 142964 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 142965 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| | 142966 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142967 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142968 | } }, |
| | 142969 | }, .{ |
| | 142970 | .required_features = .{ .sse, null, null, null }, |
| | 142971 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| | 142972 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| | 142973 | .patterns = &.{ |
| | 142974 | .{ .src = .{ .to_mem, .none, .none } }, |
| | 142975 | }, |
| | 142976 | .call_frame = .{ .alignment = .@"16" }, |
| | 142977 | .extra_temps = .{ |
| | 142978 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| | 142979 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| | 142980 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } }, |
| | 142981 | .unused, |
| | 142982 | .unused, |
| | 142983 | .unused, |
| | 142984 | .unused, |
| | 142985 | .unused, |
| | 142986 | .unused, |
| | 142987 | .unused, |
| | 142988 | .unused, |
| | 142989 | }, |
| | 142990 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| | 142991 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| | 142992 | .each = .{ .once = &.{ |
| | 142993 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| | 142994 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| | 142995 | .{ .@"0:", ._ps, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| | 142996 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| | 142997 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| | 142998 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| | 142999 | } }, |
| 140692 | } }, | 143000 | } }, |
| 140693 | .Add => comptime &.{ .{ | 143001 | .Add => comptime &.{ .{ |
| 140694 | .required_features = .{ .avx, null, null, null }, | 143002 | .required_features = .{ .avx, null, null, null }, |