| ... | ... | @@ -148,8 +148,11 @@ const Owner = union(enum) { |
| 148 | 148 | } |
| 149 | 149 | }; |
| 150 | 150 | |
| 151 | | const MaskKind = enum(u1) { sign, all }; |
| 152 | | const MaskInfo = packed struct { kind: MaskKind, inverted: bool = false, scalar: Memory.Size }; |
| 151 | const MaskInfo = packed struct { |
| 152 | kind: enum(u1) { sign, all }, |
| 153 | inverted: bool = false, |
| 154 | scalar: Memory.Size, |
| 155 | }; |
| 153 | 156 | |
| 154 | 157 | pub const MCValue = union(enum) { |
| 155 | 158 | /// No runtime bits. `void` types, empty structs, u0, enums with 1 tag, etc. |
| ... | ... | @@ -2386,7 +2389,7 @@ fn genBodyBlock(self: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 2386 | 2389 | } |
| 2387 | 2390 | |
| 2388 | 2391 | fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 2389 | | @setEvalBranchQuota(20_200); |
| 2392 | @setEvalBranchQuota(28_600); |
| 2390 | 2393 | const pt = cg.pt; |
| 2391 | 2394 | const zcu = pt.zcu; |
| 2392 | 2395 | const ip = &zcu.intern_pool; |
| ... | ... | @@ -2424,8 +2427,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 2424 | 2427 | // zig fmt: off |
| 2425 | 2428 | .select => try cg.airSelect(inst), |
| 2426 | 2429 | .shuffle => try cg.airShuffle(inst), |
| 2427 | | .reduce => try cg.airReduce(inst), |
| 2428 | | .reduce_optimized => try cg.airReduce(inst), |
| 2429 | 2430 | // zig fmt: on |
| 2430 | 2431 | |
| 2431 | 2432 | .arg => if (cg.debug_output != .none) { |
| ... | ... | @@ -4326,10 +4327,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 4326 | 4327 | else => unreachable, |
| 4327 | 4328 | .add, .add_optimized => {}, |
| 4328 | 4329 | .add_wrap => res[0].wrapInt(cg) catch |err| switch (err) { |
| 4329 | | error.SelectFailed => return cg.fail("failed to select wrap {} {} {}", .{ |
| 4330 | error.SelectFailed => return cg.fail("failed to select {s} wrap {} {}", .{ |
| 4331 | @tagName(air_tag), |
| 4330 | 4332 | cg.typeOf(bin_op.lhs).fmt(pt), |
| 4331 | | ops[0].tracking(cg), |
| 4332 | | ops[1].tracking(cg), |
| 4333 | res[0].tracking(cg), |
| 4333 | 4334 | }), |
| 4334 | 4335 | else => |e| return e, |
| 4335 | 4336 | }, |
| ... | ... | @@ -14775,10 +14776,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 14775 | 14776 | else => unreachable, |
| 14776 | 14777 | .sub, .sub_optimized => {}, |
| 14777 | 14778 | .sub_wrap => res[0].wrapInt(cg) catch |err| switch (err) { |
| 14778 | | error.SelectFailed => return cg.fail("failed to select wrap {} {} {}", .{ |
| 14779 | error.SelectFailed => return cg.fail("failed to select {s} wrap {} {}", .{ |
| 14780 | @tagName(air_tag), |
| 14779 | 14781 | cg.typeOf(bin_op.lhs).fmt(pt), |
| 14780 | | ops[0].tracking(cg), |
| 14781 | | ops[1].tracking(cg), |
| 14782 | res[0].tracking(cg), |
| 14782 | 14783 | }), |
| 14783 | 14784 | else => |e| return e, |
| 14784 | 14785 | }, |
| ... | ... | @@ -26977,10 +26978,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 26977 | 26978 | else => |e| return e, |
| 26978 | 26979 | }; |
| 26979 | 26980 | res[0].wrapInt(cg) catch |err| switch (err) { |
| 26980 | | error.SelectFailed => return cg.fail("failed to select wrap {} {} {}", .{ |
| 26981 | error.SelectFailed => return cg.fail("failed to select {s} wrap {} {}", .{ |
| 26982 | @tagName(air_tag), |
| 26981 | 26983 | cg.typeOf(bin_op.lhs).fmt(pt), |
| 26982 | | ops[0].tracking(cg), |
| 26983 | | ops[1].tracking(cg), |
| 26984 | res[0].tracking(cg), |
| 26984 | 26985 | }), |
| 26985 | 26986 | else => |e| return e, |
| 26986 | 26987 | }; |
| ... | ... | @@ -58662,11 +58663,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 58662 | 58663 | switch (air_tag) { |
| 58663 | 58664 | else => unreachable, |
| 58664 | 58665 | .shl => res[0].wrapInt(cg) catch |err| switch (err) { |
| 58665 | | error.SelectFailed => return cg.fail("failed to select wrap {} {} {} {}", .{ |
| 58666 | error.SelectFailed => return cg.fail("failed to select {s} wrap {} {}", .{ |
| 58667 | @tagName(air_tag), |
| 58666 | 58668 | cg.typeOf(bin_op.lhs).fmt(pt), |
| 58667 | | cg.typeOf(bin_op.rhs).fmt(pt), |
| 58668 | | ops[0].tracking(cg), |
| 58669 | | ops[1].tracking(cg), |
| 58669 | res[0].tracking(cg), |
| 58670 | 58670 | }), |
| 58671 | 58671 | else => |e| return e, |
| 58672 | 58672 | }, |
| ... | ... | @@ -58839,10 +58839,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 58839 | 58839 | else => |e| return e, |
| 58840 | 58840 | }, |
| 58841 | 58841 | } |
| 58842 | | if (ops[1].index != res[0].index) { |
| 58843 | | try ops[1].die(cg); |
| 58844 | | ops[1] = res[0]; |
| 58845 | | } else cg.temp_type[@intFromEnum(res[0].unwrap(cg).temp)] = .i32; |
| 58842 | if (ops[1].index != res[0].index) try ops[1].die(cg); |
| 58843 | ops[1] = res[0]; |
| 58846 | 58844 | cg.select(&res, &.{lhs_ty}, &ops, comptime &.{ .{ |
| 58847 | 58845 | .required_features = .{ .cmov, null, null, null }, |
| 58848 | 58846 | .src_constraints = .{ .{ .signed_int = .byte }, .{ .exact_signed_int = 32 }, .any }, |
| ... | ... | @@ -63335,20 +63333,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 63335 | 63333 | .bitcast => try cg.airBitCast(inst), |
| 63336 | 63334 | .block => { |
| 63337 | 63335 | const ty_pl = air_datas[@intFromEnum(inst)].ty_pl; |
| 63338 | | const extra = cg.air.extraData(Air.Block, ty_pl.payload); |
| 63336 | const block = cg.air.extraData(Air.Block, ty_pl.payload); |
| 63339 | 63337 | if (cg.debug_output != .none) try cg.asmPseudo(.pseudo_dbg_enter_block_none); |
| 63340 | | try cg.lowerBlock(inst, @ptrCast(cg.air.extra[extra.end..][0..extra.data.body_len])); |
| 63338 | try cg.lowerBlock(inst, @ptrCast(cg.air.extra[block.end..][0..block.data.body_len])); |
| 63341 | 63339 | if (cg.debug_output != .none) try cg.asmPseudo(.pseudo_dbg_leave_block_none); |
| 63342 | 63340 | }, |
| 63343 | 63341 | .loop => if (use_old) try cg.airLoop(inst) else { |
| 63344 | 63342 | const ty_pl = air_datas[@intFromEnum(inst)].ty_pl; |
| 63345 | | const extra = cg.air.extraData(Air.Block, ty_pl.payload); |
| 63343 | const block = cg.air.extraData(Air.Block, ty_pl.payload); |
| 63346 | 63344 | try cg.loops.putNoClobber(cg.gpa, inst, .{ |
| 63347 | 63345 | .state = try cg.saveState(), |
| 63348 | 63346 | .target = @intCast(cg.mir_instructions.len), |
| 63349 | 63347 | }); |
| 63350 | 63348 | defer assert(cg.loops.remove(inst)); |
| 63351 | | try cg.genBodyBlock(@ptrCast(cg.air.extra[extra.end..][0..extra.data.body_len])); |
| 63349 | try cg.genBodyBlock(@ptrCast(cg.air.extra[block.end..][0..block.data.body_len])); |
| 63352 | 63350 | }, |
| 63353 | 63351 | .repeat => if (use_old) try cg.airRepeat(inst) else { |
| 63354 | 63352 | const repeat = air_datas[@intFromEnum(inst)].repeat; |
| ... | ... | @@ -67796,7 +67794,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67796 | 67794 | .clobbers = .{ .eflags = true }, |
| 67797 | 67795 | .each = .{ .once = &.{ |
| 67798 | 67796 | .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ }, |
| 67799 | | .{ ._, ._, .movbe, .dst0w, .src0w, ._, ._ }, |
| 67797 | .{ ._, ._be, .mov, .dst0w, .src0w, ._, ._ }, |
| 67800 | 67798 | } }, |
| 67801 | 67799 | }, .{ |
| 67802 | 67800 | .src_constraints = .{ .{ .exact_int = 16 }, .any, .any }, |
| ... | ... | @@ -67816,7 +67814,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67816 | 67814 | }, |
| 67817 | 67815 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 67818 | 67816 | .each = .{ .once = &.{ |
| 67819 | | .{ ._, ._, .movbe, .dst0d, .src0d, ._, ._ }, |
| 67817 | .{ ._, ._be, .mov, .dst0d, .src0d, ._, ._ }, |
| 67820 | 67818 | } }, |
| 67821 | 67819 | }, .{ |
| 67822 | 67820 | .src_constraints = .{ .{ .exact_int = 32 }, .any, .any }, |
| ... | ... | @@ -67825,7 +67823,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67825 | 67823 | }, |
| 67826 | 67824 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 67827 | 67825 | .each = .{ .once = &.{ |
| 67828 | | .{ ._, ._, .bswap, .dst0d, ._, ._, ._ }, |
| 67826 | .{ ._, .b_, .swap, .dst0d, ._, ._, ._ }, |
| 67829 | 67827 | } }, |
| 67830 | 67828 | }, .{ |
| 67831 | 67829 | .required_features = .{ .movbe, null, null, null }, |
| ... | ... | @@ -67836,7 +67834,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67836 | 67834 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 67837 | 67835 | .clobbers = .{ .eflags = true }, |
| 67838 | 67836 | .each = .{ .once = &.{ |
| 67839 | | .{ ._, ._, .movbe, .dst0d, .src0d, ._, ._ }, |
| 67837 | .{ ._, ._be, .mov, .dst0d, .src0d, ._, ._ }, |
| 67840 | 67838 | .{ ._, ._r, .sa, .dst0d, .uia(32, .src0, .sub_bit_size), ._, ._ }, |
| 67841 | 67839 | } }, |
| 67842 | 67840 | }, .{ |
| ... | ... | @@ -67847,7 +67845,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67847 | 67845 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 67848 | 67846 | .clobbers = .{ .eflags = true }, |
| 67849 | 67847 | .each = .{ .once = &.{ |
| 67850 | | .{ ._, ._, .bswap, .dst0d, ._, ._, ._ }, |
| 67848 | .{ ._, .b_, .swap, .dst0d, ._, ._, ._ }, |
| 67851 | 67849 | .{ ._, ._r, .sa, .dst0d, .uia(32, .src0, .sub_bit_size), ._, ._ }, |
| 67852 | 67850 | } }, |
| 67853 | 67851 | }, .{ |
| ... | ... | @@ -67859,7 +67857,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67859 | 67857 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 67860 | 67858 | .clobbers = .{ .eflags = true }, |
| 67861 | 67859 | .each = .{ .once = &.{ |
| 67862 | | .{ ._, ._, .movbe, .dst0d, .src0d, ._, ._ }, |
| 67860 | .{ ._, ._be, .mov, .dst0d, .src0d, ._, ._ }, |
| 67863 | 67861 | .{ ._, ._r, .sh, .dst0d, .uia(32, .src0, .sub_bit_size), ._, ._ }, |
| 67864 | 67862 | } }, |
| 67865 | 67863 | }, .{ |
| ... | ... | @@ -67870,7 +67868,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67870 | 67868 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 67871 | 67869 | .clobbers = .{ .eflags = true }, |
| 67872 | 67870 | .each = .{ .once = &.{ |
| 67873 | | .{ ._, ._, .bswap, .dst0d, ._, ._, ._ }, |
| 67871 | .{ ._, .b_, .swap, .dst0d, ._, ._, ._ }, |
| 67874 | 67872 | .{ ._, ._r, .sh, .dst0d, .uia(32, .src0, .sub_bit_size), ._, ._ }, |
| 67875 | 67873 | } }, |
| 67876 | 67874 | }, .{ |
| ... | ... | @@ -67881,7 +67879,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67881 | 67879 | }, |
| 67882 | 67880 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 67883 | 67881 | .each = .{ .once = &.{ |
| 67884 | | .{ ._, ._, .movbe, .dst0q, .src0q, ._, ._ }, |
| 67882 | .{ ._, ._be, .mov, .dst0q, .src0q, ._, ._ }, |
| 67885 | 67883 | } }, |
| 67886 | 67884 | }, .{ |
| 67887 | 67885 | .src_constraints = .{ .{ .exact_int = 64 }, .any, .any }, |
| ... | ... | @@ -67890,7 +67888,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67890 | 67888 | }, |
| 67891 | 67889 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 67892 | 67890 | .each = .{ .once = &.{ |
| 67893 | | .{ ._, ._, .bswap, .dst0q, ._, ._, ._ }, |
| 67891 | .{ ._, .b_, .swap, .dst0q, ._, ._, ._ }, |
| 67894 | 67892 | } }, |
| 67895 | 67893 | }, .{ |
| 67896 | 67894 | .required_features = .{ .movbe, null, null, null }, |
| ... | ... | @@ -67901,7 +67899,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67901 | 67899 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 67902 | 67900 | .clobbers = .{ .eflags = true }, |
| 67903 | 67901 | .each = .{ .once = &.{ |
| 67904 | | .{ ._, ._, .movbe, .dst0q, .src0q, ._, ._ }, |
| 67902 | .{ ._, ._be, .mov, .dst0q, .src0q, ._, ._ }, |
| 67905 | 67903 | .{ ._, ._r, .sa, .dst0q, .uia(64, .src0, .sub_bit_size), ._, ._ }, |
| 67906 | 67904 | } }, |
| 67907 | 67905 | }, .{ |
| ... | ... | @@ -67912,7 +67910,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67912 | 67910 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 67913 | 67911 | .clobbers = .{ .eflags = true }, |
| 67914 | 67912 | .each = .{ .once = &.{ |
| 67915 | | .{ ._, ._, .bswap, .dst0q, ._, ._, ._ }, |
| 67913 | .{ ._, .b_, .swap, .dst0q, ._, ._, ._ }, |
| 67916 | 67914 | .{ ._, ._r, .sa, .dst0q, .uia(64, .src0, .sub_bit_size), ._, ._ }, |
| 67917 | 67915 | } }, |
| 67918 | 67916 | }, .{ |
| ... | ... | @@ -67924,7 +67922,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67924 | 67922 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 67925 | 67923 | .clobbers = .{ .eflags = true }, |
| 67926 | 67924 | .each = .{ .once = &.{ |
| 67927 | | .{ ._, ._, .movbe, .dst0q, .src0q, ._, ._ }, |
| 67925 | .{ ._, ._be, .mov, .dst0q, .src0q, ._, ._ }, |
| 67928 | 67926 | .{ ._, ._r, .sh, .dst0q, .uia(64, .src0, .sub_bit_size), ._, ._ }, |
| 67929 | 67927 | } }, |
| 67930 | 67928 | }, .{ |
| ... | ... | @@ -67935,7 +67933,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67935 | 67933 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 67936 | 67934 | .clobbers = .{ .eflags = true }, |
| 67937 | 67935 | .each = .{ .once = &.{ |
| 67938 | | .{ ._, ._, .bswap, .dst0q, ._, ._, ._ }, |
| 67936 | .{ ._, .b_, .swap, .dst0q, ._, ._, ._ }, |
| 67939 | 67937 | .{ ._, ._r, .sh, .dst0q, .uia(64, .src0, .sub_bit_size), ._, ._ }, |
| 67940 | 67938 | } }, |
| 67941 | 67939 | }, .{ |
| ... | ... | @@ -67963,7 +67961,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67963 | 67961 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .dst0, .add_size), ._, ._ }, |
| 67964 | 67962 | .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ }, |
| 67965 | 67963 | .{ .@"0:", ._, .mov, .tmp2q, .lea(.tmp1q), ._, ._ }, |
| 67966 | | .{ ._, ._, .movbe, .memi(.dst0q, .tmp0), .tmp2q, ._, ._ }, |
| 67964 | .{ ._, ._be, .mov, .memi(.dst0q, .tmp0), .tmp2q, ._, ._ }, |
| 67967 | 67965 | .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| 67968 | 67966 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 67969 | 67967 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| ... | ... | @@ -67993,7 +67991,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 67993 | 67991 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .dst0, .add_size), ._, ._ }, |
| 67994 | 67992 | .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ }, |
| 67995 | 67993 | .{ .@"0:", ._, .mov, .tmp2q, .lea(.tmp1q), ._, ._ }, |
| 67996 | | .{ ._, ._, .bswap, .tmp2q, ._, ._, ._ }, |
| 67994 | .{ ._, .b_, .swap, .tmp2q, ._, ._, ._ }, |
| 67997 | 67995 | .{ ._, ._, .mov, .memi(.dst0q, .tmp0), .tmp2q, ._, ._ }, |
| 67998 | 67996 | .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| 67999 | 67997 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| ... | ... | @@ -68027,7 +68025,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68027 | 68025 | .{ ._, ._r, .sa, .tmp2q, .ui(63), ._, ._ }, |
| 68028 | 68026 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp2q, ._, ._ }, |
| 68029 | 68027 | .{ .@"0:", ._, .mov, .tmp2q, .lea(.tmp1q), ._, ._ }, |
| 68030 | | .{ ._, ._, .movbe, .memi(.dst0q, .tmp0), .tmp2q, ._, ._ }, |
| 68028 | .{ ._, ._be, .mov, .memi(.dst0q, .tmp0), .tmp2q, ._, ._ }, |
| 68031 | 68029 | .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| 68032 | 68030 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 68033 | 68031 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| ... | ... | @@ -68060,7 +68058,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68060 | 68058 | .{ ._, ._r, .sa, .tmp2q, .ui(63), ._, ._ }, |
| 68061 | 68059 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp2q, ._, ._ }, |
| 68062 | 68060 | .{ .@"0:", ._, .mov, .tmp2q, .lea(.tmp1q), ._, ._ }, |
| 68063 | | .{ ._, ._, .bswap, .tmp2q, ._, ._, ._ }, |
| 68061 | .{ ._, .b_, .swap, .tmp2q, ._, ._, ._ }, |
| 68064 | 68062 | .{ ._, ._, .mov, .memi(.dst0q, .tmp0), .tmp2q, ._, ._ }, |
| 68065 | 68063 | .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| 68066 | 68064 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| ... | ... | @@ -68092,7 +68090,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68092 | 68090 | .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ }, |
| 68093 | 68091 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .si(0), ._, ._ }, |
| 68094 | 68092 | .{ .@"0:", ._, .mov, .tmp2q, .lea(.tmp1q), ._, ._ }, |
| 68095 | | .{ ._, ._, .movbe, .memi(.dst0q, .tmp0), .tmp2q, ._, ._ }, |
| 68093 | .{ ._, ._be, .mov, .memi(.dst0q, .tmp0), .tmp2q, ._, ._ }, |
| 68096 | 68094 | .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| 68097 | 68095 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 68098 | 68096 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| ... | ... | @@ -68123,7 +68121,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68123 | 68121 | .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ }, |
| 68124 | 68122 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .si(0), ._, ._ }, |
| 68125 | 68123 | .{ .@"0:", ._, .mov, .tmp2q, .lea(.tmp1q), ._, ._ }, |
| 68126 | | .{ ._, ._, .bswap, .tmp2q, ._, ._, ._ }, |
| 68124 | .{ ._, .b_, .swap, .tmp2q, ._, ._, ._ }, |
| 68127 | 68125 | .{ ._, ._, .mov, .memi(.dst0q, .tmp0), .tmp2q, ._, ._ }, |
| 68128 | 68126 | .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| 68129 | 68127 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| ... | ... | @@ -68156,7 +68154,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68156 | 68154 | .{ ._, ._, .movsx, .tmp2q, .mem(.src0b), ._, ._ }, |
| 68157 | 68155 | .{ ._, ._r, .sa, .tmp2q, .ui(63), ._, ._ }, |
| 68158 | 68156 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp2q, ._, ._ }, |
| 68159 | | .{ .@"0:", ._, .movbe, .tmp3q, .lea(.tmp1q), ._, ._ }, |
| 68157 | .{ .@"0:", ._be, .mov, .tmp3q, .lea(.tmp1q), ._, ._ }, |
| 68160 | 68158 | .{ ._, ._, .mov, .tmp4q, .tmp3q, ._, ._ }, |
| 68161 | 68159 | .{ ._, ._rd, .sh, .tmp3q, .tmp2q, .uia(64, .src0, .sub_bit_size_rem_64), ._ }, |
| 68162 | 68160 | .{ ._, ._, .mov, .tmp2q, .tmp4q, ._, ._ }, |
| ... | ... | @@ -68193,7 +68191,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68193 | 68191 | .{ ._, ._r, .sa, .tmp2q, .ui(63), ._, ._ }, |
| 68194 | 68192 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp2q, ._, ._ }, |
| 68195 | 68193 | .{ .@"0:", ._, .mov, .tmp3q, .lea(.tmp1q), ._, ._ }, |
| 68196 | | .{ ._, ._, .bswap, .tmp3q, ._, ._, ._ }, |
| 68194 | .{ ._, .b_, .swap, .tmp3q, ._, ._, ._ }, |
| 68197 | 68195 | .{ ._, ._, .mov, .tmp4q, .tmp3q, ._, ._ }, |
| 68198 | 68196 | .{ ._, ._rd, .sh, .tmp3q, .tmp2q, .uia(64, .src0, .sub_bit_size_rem_64), ._ }, |
| 68199 | 68197 | .{ ._, ._, .mov, .tmp2q, .tmp4q, ._, ._ }, |
| ... | ... | @@ -68228,7 +68226,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68228 | 68226 | .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ }, |
| 68229 | 68227 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| 68230 | 68228 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp2q, ._, ._ }, |
| 68231 | | .{ .@"0:", ._, .movbe, .tmp3q, .lea(.tmp1q), ._, ._ }, |
| 68229 | .{ .@"0:", ._be, .mov, .tmp3q, .lea(.tmp1q), ._, ._ }, |
| 68232 | 68230 | .{ ._, ._, .mov, .tmp4q, .tmp3q, ._, ._ }, |
| 68233 | 68231 | .{ ._, ._rd, .sh, .tmp3q, .tmp2q, .uia(64, .src0, .sub_bit_size_rem_64), ._ }, |
| 68234 | 68232 | .{ ._, ._, .mov, .tmp2q, .tmp4q, ._, ._ }, |
| ... | ... | @@ -68264,7 +68262,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68264 | 68262 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| 68265 | 68263 | .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp2q, ._, ._ }, |
| 68266 | 68264 | .{ .@"0:", ._, .mov, .tmp3q, .lea(.tmp1q), ._, ._ }, |
| 68267 | | .{ ._, ._, .bswap, .tmp3q, ._, ._, ._ }, |
| 68265 | .{ ._, .b_, .swap, .tmp3q, ._, ._, ._ }, |
| 68268 | 68266 | .{ ._, ._, .mov, .tmp4q, .tmp3q, ._, ._ }, |
| 68269 | 68267 | .{ ._, ._rd, .sh, .tmp3q, .tmp2q, .uia(64, .src0, .sub_bit_size_rem_64), ._ }, |
| 68270 | 68268 | .{ ._, ._, .mov, .tmp2q, .tmp4q, ._, ._ }, |
| ... | ... | @@ -68299,7 +68297,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68299 | 68297 | .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ }, |
| 68300 | 68298 | .{ ._, ._, .movsx, .tmp2q, .mem(.src0b), ._, ._ }, |
| 68301 | 68299 | .{ ._, ._r, .sa, .tmp2q, .ui(63), ._, ._ }, |
| 68302 | | .{ .@"0:", ._, .movbe, .tmp3q, .lea(.tmp1q), ._, ._ }, |
| 68300 | .{ .@"0:", ._be, .mov, .tmp3q, .lea(.tmp1q), ._, ._ }, |
| 68303 | 68301 | .{ ._, ._, .mov, .tmp4q, .tmp3q, ._, ._ }, |
| 68304 | 68302 | .{ ._, ._rd, .sh, .tmp3q, .tmp2q, .uia(64, .src0, .sub_bit_size_rem_64), ._ }, |
| 68305 | 68303 | .{ ._, ._, .mov, .tmp2q, .tmp4q, ._, ._ }, |
| ... | ... | @@ -68335,7 +68333,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68335 | 68333 | .{ ._, ._, .movsx, .tmp2q, .mem(.src0b), ._, ._ }, |
| 68336 | 68334 | .{ ._, ._r, .sa, .tmp2q, .ui(63), ._, ._ }, |
| 68337 | 68335 | .{ .@"0:", ._, .mov, .tmp3q, .lea(.tmp1q), ._, ._ }, |
| 68338 | | .{ ._, ._, .bswap, .tmp3q, ._, ._, ._ }, |
| 68336 | .{ ._, .b_, .swap, .tmp3q, ._, ._, ._ }, |
| 68339 | 68337 | .{ ._, ._, .mov, .tmp4q, .tmp3q, ._, ._ }, |
| 68340 | 68338 | .{ ._, ._rd, .sh, .tmp3q, .tmp2q, .uia(64, .src0, .sub_bit_size_rem_64), ._ }, |
| 68341 | 68339 | .{ ._, ._, .mov, .tmp2q, .tmp4q, ._, ._ }, |
| ... | ... | @@ -68369,7 +68367,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68369 | 68367 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .dst0, .add_size), ._, ._ }, |
| 68370 | 68368 | .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ }, |
| 68371 | 68369 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| 68372 | | .{ .@"0:", ._, .movbe, .tmp3q, .lea(.tmp1q), ._, ._ }, |
| 68370 | .{ .@"0:", ._be, .mov, .tmp3q, .lea(.tmp1q), ._, ._ }, |
| 68373 | 68371 | .{ ._, ._, .mov, .tmp4q, .tmp3q, ._, ._ }, |
| 68374 | 68372 | .{ ._, ._rd, .sh, .tmp3q, .tmp2q, .uia(64, .src0, .sub_bit_size_rem_64), ._ }, |
| 68375 | 68373 | .{ ._, ._, .mov, .tmp2q, .tmp4q, ._, ._ }, |
| ... | ... | @@ -68404,7 +68402,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68404 | 68402 | .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ }, |
| 68405 | 68403 | .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ }, |
| 68406 | 68404 | .{ .@"0:", ._, .mov, .tmp3q, .lea(.tmp1q), ._, ._ }, |
| 68407 | | .{ ._, ._, .bswap, .tmp3q, ._, ._, ._ }, |
| 68405 | .{ ._, .b_, .swap, .tmp3q, ._, ._, ._ }, |
| 68408 | 68406 | .{ ._, ._, .mov, .tmp4q, .tmp3q, ._, ._ }, |
| 68409 | 68407 | .{ ._, ._rd, .sh, .tmp3q, .tmp2q, .uia(64, .src0, .sub_bit_size_rem_64), ._ }, |
| 68410 | 68408 | .{ ._, ._, .mov, .tmp2q, .tmp4q, ._, ._ }, |
| ... | ... | @@ -68443,7 +68441,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68443 | 68441 | .{ .src = .{ .to_sse, .none, .none } }, |
| 68444 | 68442 | }, |
| 68445 | 68443 | .extra_temps = .{ |
| 68446 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 68444 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 68447 | 68445 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 68448 | 68446 | .unused, |
| 68449 | 68447 | .unused, |
| ... | ... | @@ -68467,7 +68465,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68467 | 68465 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 68468 | 68466 | }, |
| 68469 | 68467 | .extra_temps = .{ |
| 68470 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 68468 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 68471 | 68469 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 68472 | 68470 | .unused, |
| 68473 | 68471 | .unused, |
| ... | ... | @@ -68491,7 +68489,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68491 | 68489 | .{ .src = .{ .to_sse, .none, .none } }, |
| 68492 | 68490 | }, |
| 68493 | 68491 | .extra_temps = .{ |
| 68494 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 68492 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 68495 | 68493 | .{ .type = .vector_16_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 68496 | 68494 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 68497 | 68495 | .unused, |
| ... | ... | @@ -68519,7 +68517,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68519 | 68517 | .{ .src = .{ .to_sse, .none, .none } }, |
| 68520 | 68518 | }, |
| 68521 | 68519 | .extra_temps = .{ |
| 68522 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 68520 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 68523 | 68521 | .{ .type = .vector_16_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 68524 | 68522 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 68525 | 68523 | .unused, |
| ... | ... | @@ -68548,7 +68546,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68548 | 68546 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 68549 | 68547 | }, |
| 68550 | 68548 | .extra_temps = .{ |
| 68551 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 68549 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 68552 | 68550 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 68553 | 68551 | .unused, |
| 68554 | 68552 | .unused, |
| ... | ... | @@ -68577,7 +68575,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68577 | 68575 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 68578 | 68576 | }, |
| 68579 | 68577 | .extra_temps = .{ |
| 68580 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 68578 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 68581 | 68579 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 68582 | 68580 | .unused, |
| 68583 | 68581 | .unused, |
| ... | ... | @@ -68644,7 +68642,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68644 | 68642 | .{ .src = .{ .to_sse, .none, .none } }, |
| 68645 | 68643 | }, |
| 68646 | 68644 | .extra_temps = .{ |
| 68647 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 68645 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 68648 | 68646 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 68649 | 68647 | .unused, |
| 68650 | 68648 | .unused, |
| ... | ... | @@ -68670,7 +68668,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68670 | 68668 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 68671 | 68669 | }, |
| 68672 | 68670 | .extra_temps = .{ |
| 68673 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 68671 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 68674 | 68672 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 68675 | 68673 | .unused, |
| 68676 | 68674 | .unused, |
| ... | ... | @@ -68696,7 +68694,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68696 | 68694 | .{ .src = .{ .to_sse, .none, .none } }, |
| 68697 | 68695 | }, |
| 68698 | 68696 | .extra_temps = .{ |
| 68699 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 68697 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 68700 | 68698 | .{ .type = .vector_16_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 68701 | 68699 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 68702 | 68700 | .unused, |
| ... | ... | @@ -68726,7 +68724,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68726 | 68724 | .{ .src = .{ .to_sse, .none, .none } }, |
| 68727 | 68725 | }, |
| 68728 | 68726 | .extra_temps = .{ |
| 68729 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 68727 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 68730 | 68728 | .{ .type = .vector_16_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 68731 | 68729 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 68732 | 68730 | .unused, |
| ... | ... | @@ -68757,7 +68755,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68757 | 68755 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 68758 | 68756 | }, |
| 68759 | 68757 | .extra_temps = .{ |
| 68760 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 68758 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 68761 | 68759 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 68762 | 68760 | .unused, |
| 68763 | 68761 | .unused, |
| ... | ... | @@ -68788,7 +68786,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68788 | 68786 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 68789 | 68787 | }, |
| 68790 | 68788 | .extra_temps = .{ |
| 68791 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 68789 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 68792 | 68790 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 68793 | 68791 | .unused, |
| 68794 | 68792 | .unused, |
| ... | ... | @@ -68858,7 +68856,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68858 | 68856 | .{ .src = .{ .to_sse, .none, .none } }, |
| 68859 | 68857 | }, |
| 68860 | 68858 | .extra_temps = .{ |
| 68861 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 68859 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 68862 | 68860 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 68863 | 68861 | .unused, |
| 68864 | 68862 | .unused, |
| ... | ... | @@ -68884,7 +68882,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68884 | 68882 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 68885 | 68883 | }, |
| 68886 | 68884 | .extra_temps = .{ |
| 68887 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 68885 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 68888 | 68886 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 68889 | 68887 | .unused, |
| 68890 | 68888 | .unused, |
| ... | ... | @@ -68910,7 +68908,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68910 | 68908 | .{ .src = .{ .to_sse, .none, .none } }, |
| 68911 | 68909 | }, |
| 68912 | 68910 | .extra_temps = .{ |
| 68913 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 68911 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 68914 | 68912 | .{ .type = .vector_16_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 68915 | 68913 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 68916 | 68914 | .unused, |
| ... | ... | @@ -68940,7 +68938,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68940 | 68938 | .{ .src = .{ .to_sse, .none, .none } }, |
| 68941 | 68939 | }, |
| 68942 | 68940 | .extra_temps = .{ |
| 68943 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 68941 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 68944 | 68942 | .{ .type = .vector_16_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 68945 | 68943 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 68946 | 68944 | .unused, |
| ... | ... | @@ -68971,7 +68969,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 68971 | 68969 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 68972 | 68970 | }, |
| 68973 | 68971 | .extra_temps = .{ |
| 68974 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 68972 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 68975 | 68973 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 68976 | 68974 | .unused, |
| 68977 | 68975 | .unused, |
| ... | ... | @@ -69002,7 +69000,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69002 | 69000 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69003 | 69001 | }, |
| 69004 | 69002 | .extra_temps = .{ |
| 69005 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 69003 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 69006 | 69004 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 69007 | 69005 | .unused, |
| 69008 | 69006 | .unused, |
| ... | ... | @@ -69072,7 +69070,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69072 | 69070 | .{ .src = .{ .to_sse, .none, .none } }, |
| 69073 | 69071 | }, |
| 69074 | 69072 | .extra_temps = .{ |
| 69075 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69073 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69076 | 69074 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .word } } }, |
| 69077 | 69075 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69078 | 69076 | .unused, |
| ... | ... | @@ -69098,7 +69096,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69098 | 69096 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69099 | 69097 | }, |
| 69100 | 69098 | .extra_temps = .{ |
| 69101 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69099 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69102 | 69100 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .word } } }, |
| 69103 | 69101 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69104 | 69102 | .unused, |
| ... | ... | @@ -69124,7 +69122,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69124 | 69122 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69125 | 69123 | }, |
| 69126 | 69124 | .extra_temps = .{ |
| 69127 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69125 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69128 | 69126 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69129 | 69127 | .unused, |
| 69130 | 69128 | .unused, |
| ... | ... | @@ -69151,7 +69149,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69151 | 69149 | }, |
| 69152 | 69150 | .extra_temps = .{ |
| 69153 | 69151 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .word, .smear = 8 } } }, |
| 69154 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 69152 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 69155 | 69153 | .{ .type = .vector_16_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 69156 | 69154 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 69157 | 69155 | .unused, |
| ... | ... | @@ -69180,7 +69178,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69180 | 69178 | }, |
| 69181 | 69179 | .extra_temps = .{ |
| 69182 | 69180 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .word, .smear = 8 } } }, |
| 69183 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 69181 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 69184 | 69182 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 69185 | 69183 | .unused, |
| 69186 | 69184 | .unused, |
| ... | ... | @@ -69249,7 +69247,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69249 | 69247 | .{ .src = .{ .to_sse, .none, .none } }, |
| 69250 | 69248 | }, |
| 69251 | 69249 | .extra_temps = .{ |
| 69252 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69250 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69253 | 69251 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .word } } }, |
| 69254 | 69252 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69255 | 69253 | .unused, |
| ... | ... | @@ -69276,7 +69274,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69276 | 69274 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69277 | 69275 | }, |
| 69278 | 69276 | .extra_temps = .{ |
| 69279 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69277 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69280 | 69278 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .word } } }, |
| 69281 | 69279 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69282 | 69280 | .unused, |
| ... | ... | @@ -69303,7 +69301,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69303 | 69301 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69304 | 69302 | }, |
| 69305 | 69303 | .extra_temps = .{ |
| 69306 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69304 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69307 | 69305 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69308 | 69306 | .unused, |
| 69309 | 69307 | .unused, |
| ... | ... | @@ -69331,7 +69329,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69331 | 69329 | }, |
| 69332 | 69330 | .extra_temps = .{ |
| 69333 | 69331 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .word, .smear = 8 } } }, |
| 69334 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 69332 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 69335 | 69333 | .{ .type = .vector_16_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 69336 | 69334 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 69337 | 69335 | .unused, |
| ... | ... | @@ -69362,7 +69360,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69362 | 69360 | }, |
| 69363 | 69361 | .extra_temps = .{ |
| 69364 | 69362 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .word, .smear = 8 } } }, |
| 69365 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 69363 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 69366 | 69364 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 69367 | 69365 | .unused, |
| 69368 | 69366 | .unused, |
| ... | ... | @@ -69434,7 +69432,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69434 | 69432 | .{ .src = .{ .to_sse, .none, .none } }, |
| 69435 | 69433 | }, |
| 69436 | 69434 | .extra_temps = .{ |
| 69437 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69435 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69438 | 69436 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .word } } }, |
| 69439 | 69437 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69440 | 69438 | .unused, |
| ... | ... | @@ -69461,7 +69459,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69461 | 69459 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69462 | 69460 | }, |
| 69463 | 69461 | .extra_temps = .{ |
| 69464 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69462 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69465 | 69463 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .word } } }, |
| 69466 | 69464 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69467 | 69465 | .unused, |
| ... | ... | @@ -69488,7 +69486,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69488 | 69486 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69489 | 69487 | }, |
| 69490 | 69488 | .extra_temps = .{ |
| 69491 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69489 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69492 | 69490 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69493 | 69491 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 69494 | 69492 | .unused, |
| ... | ... | @@ -69517,7 +69515,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69517 | 69515 | }, |
| 69518 | 69516 | .extra_temps = .{ |
| 69519 | 69517 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .word, .smear = 8 } } }, |
| 69520 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 69518 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 69521 | 69519 | .{ .type = .vector_16_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 69522 | 69520 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 69523 | 69521 | .unused, |
| ... | ... | @@ -69548,7 +69546,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69548 | 69546 | }, |
| 69549 | 69547 | .extra_temps = .{ |
| 69550 | 69548 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .word, .smear = 8 } } }, |
| 69551 | | .{ .type = .vector_16_u8, .kind = .reverse_bits_mem }, |
| 69549 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .reverse } }, |
| 69552 | 69550 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 69553 | 69551 | .unused, |
| 69554 | 69552 | .unused, |
| ... | ... | @@ -69620,7 +69618,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69620 | 69618 | .{ .src = .{ .to_sse, .none, .none } }, |
| 69621 | 69619 | }, |
| 69622 | 69620 | .extra_temps = .{ |
| 69623 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69621 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69624 | 69622 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .dword } } }, |
| 69625 | 69623 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69626 | 69624 | .unused, |
| ... | ... | @@ -69646,7 +69644,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69646 | 69644 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69647 | 69645 | }, |
| 69648 | 69646 | .extra_temps = .{ |
| 69649 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69647 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69650 | 69648 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .dword } } }, |
| 69651 | 69649 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69652 | 69650 | .unused, |
| ... | ... | @@ -69672,7 +69670,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69672 | 69670 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69673 | 69671 | }, |
| 69674 | 69672 | .extra_temps = .{ |
| 69675 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69673 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69676 | 69674 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69677 | 69675 | .unused, |
| 69678 | 69676 | .unused, |
| ... | ... | @@ -69700,7 +69698,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69700 | 69698 | }, |
| 69701 | 69699 | .extra_temps = .{ |
| 69702 | 69700 | .{ .type = .vector_32_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .dword, .smear = 8 } } }, |
| 69703 | | .{ .type = .vector_32_u8, .kind = .reverse_bits_mem }, |
| 69701 | .{ .type = .vector_32_u8, .kind = .{ .bits_mem = .reverse } }, |
| 69704 | 69702 | .{ .type = .vector_32_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 69705 | 69703 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 69706 | 69704 | .unused, |
| ... | ... | @@ -69743,7 +69741,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69743 | 69741 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 69744 | 69742 | .clobbers = .{ .eflags = true }, |
| 69745 | 69743 | .each = .{ .once = &.{ |
| 69746 | | .{ ._, ._, .bswap, .src0d, ._, ._, ._ }, |
| 69744 | .{ ._, .b_, .swap, .src0d, ._, ._, ._ }, |
| 69747 | 69745 | .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ }, |
| 69748 | 69746 | .{ ._, ._r, .sh, .src0d, .ui(4), ._, ._ }, |
| 69749 | 69747 | .{ ._, ._l, .sh, .tmp0d, .ui(4), ._, ._ }, |
| ... | ... | @@ -69770,7 +69768,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69770 | 69768 | .{ .src = .{ .to_sse, .none, .none } }, |
| 69771 | 69769 | }, |
| 69772 | 69770 | .extra_temps = .{ |
| 69773 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69771 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69774 | 69772 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .dword } } }, |
| 69775 | 69773 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69776 | 69774 | .unused, |
| ... | ... | @@ -69797,7 +69795,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69797 | 69795 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69798 | 69796 | }, |
| 69799 | 69797 | .extra_temps = .{ |
| 69800 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69798 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69801 | 69799 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .dword } } }, |
| 69802 | 69800 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69803 | 69801 | .unused, |
| ... | ... | @@ -69824,7 +69822,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69824 | 69822 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69825 | 69823 | }, |
| 69826 | 69824 | .extra_temps = .{ |
| 69827 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69825 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69828 | 69826 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69829 | 69827 | .unused, |
| 69830 | 69828 | .unused, |
| ... | ... | @@ -69853,7 +69851,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69853 | 69851 | }, |
| 69854 | 69852 | .extra_temps = .{ |
| 69855 | 69853 | .{ .type = .vector_32_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .dword, .smear = 8 } } }, |
| 69856 | | .{ .type = .vector_32_u8, .kind = .reverse_bits_mem }, |
| 69854 | .{ .type = .vector_32_u8, .kind = .{ .bits_mem = .reverse } }, |
| 69857 | 69855 | .{ .type = .vector_32_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 69858 | 69856 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 69859 | 69857 | .unused, |
| ... | ... | @@ -69898,7 +69896,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69898 | 69896 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 69899 | 69897 | .clobbers = .{ .eflags = true }, |
| 69900 | 69898 | .each = .{ .once = &.{ |
| 69901 | | .{ ._, ._, .bswap, .src0d, ._, ._, ._ }, |
| 69899 | .{ ._, .b_, .swap, .src0d, ._, ._, ._ }, |
| 69902 | 69900 | .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ }, |
| 69903 | 69901 | .{ ._, ._r, .sh, .src0d, .ui(4), ._, ._ }, |
| 69904 | 69902 | .{ ._, ._l, .sh, .tmp0d, .ui(4), ._, ._ }, |
| ... | ... | @@ -69926,7 +69924,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69926 | 69924 | .{ .src = .{ .to_sse, .none, .none } }, |
| 69927 | 69925 | }, |
| 69928 | 69926 | .extra_temps = .{ |
| 69929 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69927 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69930 | 69928 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .dword } } }, |
| 69931 | 69929 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69932 | 69930 | .unused, |
| ... | ... | @@ -69953,7 +69951,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69953 | 69951 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69954 | 69952 | }, |
| 69955 | 69953 | .extra_temps = .{ |
| 69956 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69954 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69957 | 69955 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .dword } } }, |
| 69958 | 69956 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69959 | 69957 | .unused, |
| ... | ... | @@ -69980,7 +69978,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 69980 | 69978 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 69981 | 69979 | }, |
| 69982 | 69980 | .extra_temps = .{ |
| 69983 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 69981 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 69984 | 69982 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 69985 | 69983 | .unused, |
| 69986 | 69984 | .unused, |
| ... | ... | @@ -70009,7 +70007,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70009 | 70007 | }, |
| 70010 | 70008 | .extra_temps = .{ |
| 70011 | 70009 | .{ .type = .vector_32_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .dword, .smear = 8 } } }, |
| 70012 | | .{ .type = .vector_32_u8, .kind = .reverse_bits_mem }, |
| 70010 | .{ .type = .vector_32_u8, .kind = .{ .bits_mem = .reverse } }, |
| 70013 | 70011 | .{ .type = .vector_32_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 70014 | 70012 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 70015 | 70013 | .unused, |
| ... | ... | @@ -70054,7 +70052,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70054 | 70052 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 70055 | 70053 | .clobbers = .{ .eflags = true }, |
| 70056 | 70054 | .each = .{ .once = &.{ |
| 70057 | | .{ ._, ._, .bswap, .src0d, ._, ._, ._ }, |
| 70055 | .{ ._, .b_, .swap, .src0d, ._, ._, ._ }, |
| 70058 | 70056 | .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ }, |
| 70059 | 70057 | .{ ._, ._r, .sh, .src0d, .ui(4), ._, ._ }, |
| 70060 | 70058 | .{ ._, ._l, .sh, .tmp0d, .ui(4), ._, ._ }, |
| ... | ... | @@ -70082,7 +70080,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70082 | 70080 | .{ .src = .{ .to_sse, .none, .none } }, |
| 70083 | 70081 | }, |
| 70084 | 70082 | .extra_temps = .{ |
| 70085 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70083 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70086 | 70084 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .qword } } }, |
| 70087 | 70085 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70088 | 70086 | .unused, |
| ... | ... | @@ -70108,7 +70106,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70108 | 70106 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 70109 | 70107 | }, |
| 70110 | 70108 | .extra_temps = .{ |
| 70111 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70109 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70112 | 70110 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .qword } } }, |
| 70113 | 70111 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70114 | 70112 | .unused, |
| ... | ... | @@ -70134,7 +70132,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70134 | 70132 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 70135 | 70133 | }, |
| 70136 | 70134 | .extra_temps = .{ |
| 70137 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70135 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70138 | 70136 | .unused, |
| 70139 | 70137 | .unused, |
| 70140 | 70138 | .unused, |
| ... | ... | @@ -70151,7 +70149,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70151 | 70149 | .{ ._, ._, .lea, .dst0p, .mem(.tmp0), ._, ._ }, |
| 70152 | 70150 | .{ ._, ._b, .gf2p8affineq, .src0x, .lea(.dst0x), .ui(0), ._ }, |
| 70153 | 70151 | .{ ._, ._q, .mov, .dst0q, .src0x, ._, ._ }, |
| 70154 | | .{ ._, ._, .bswap, .dst0q, ._, ._, ._ }, |
| 70152 | .{ ._, .b_, .swap, .dst0q, ._, ._, ._ }, |
| 70155 | 70153 | } }, |
| 70156 | 70154 | }, .{ |
| 70157 | 70155 | .required_features = .{ .@"64bit", null, null, null }, |
| ... | ... | @@ -70175,7 +70173,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70175 | 70173 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 70176 | 70174 | .clobbers = .{ .eflags = true }, |
| 70177 | 70175 | .each = .{ .once = &.{ |
| 70178 | | .{ ._, ._, .bswap, .src0q, ._, ._, ._ }, |
| 70176 | .{ ._, .b_, .swap, .src0q, ._, ._, ._ }, |
| 70179 | 70177 | .{ ._, ._, .mov, .tmp0q, .src0q, ._, ._ }, |
| 70180 | 70178 | .{ ._, ._, .mov, .tmp1q, .uia(0b00001111000011110000111100001111, .none, .repeat), ._, ._ }, |
| 70181 | 70179 | .{ ._, ._, .@"and", .tmp0q, .tmp1q, ._, ._ }, |
| ... | ... | @@ -70205,7 +70203,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70205 | 70203 | .{ .src = .{ .to_sse, .none, .none } }, |
| 70206 | 70204 | }, |
| 70207 | 70205 | .extra_temps = .{ |
| 70208 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70206 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70209 | 70207 | .{ .type = .vector_16_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| 70210 | 70208 | .unused, |
| 70211 | 70209 | .unused, |
| ... | ... | @@ -70223,7 +70221,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70223 | 70221 | .{ ._, ._, .lea, .dst0p, .mem(.tmp0), ._, ._ }, |
| 70224 | 70222 | .{ ._, .v_b, .gf2p8affineq, .tmp1x, .src0x, .lea(.dst0x), .ui(0) }, |
| 70225 | 70223 | .{ ._, .v_q, .mov, .dst0q, .tmp1x, ._, ._ }, |
| 70226 | | .{ ._, ._, .bswap, .dst0q, ._, ._, ._ }, |
| 70224 | .{ ._, .b_, .swap, .dst0q, ._, ._, ._ }, |
| 70227 | 70225 | .{ ._, ._r, .sa, .dst0q, .uia(64, .dst0, .sub_bit_size), ._, ._ }, |
| 70228 | 70226 | } }, |
| 70229 | 70227 | }, .{ |
| ... | ... | @@ -70233,7 +70231,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70233 | 70231 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 70234 | 70232 | }, |
| 70235 | 70233 | .extra_temps = .{ |
| 70236 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70234 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70237 | 70235 | .unused, |
| 70238 | 70236 | .unused, |
| 70239 | 70237 | .unused, |
| ... | ... | @@ -70251,7 +70249,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70251 | 70249 | .{ ._, ._, .lea, .dst0p, .mem(.tmp0), ._, ._ }, |
| 70252 | 70250 | .{ ._, ._b, .gf2p8affineq, .src0x, .lea(.dst0x), .ui(0), ._ }, |
| 70253 | 70251 | .{ ._, ._q, .mov, .dst0q, .src0x, ._, ._ }, |
| 70254 | | .{ ._, ._, .bswap, .dst0q, ._, ._, ._ }, |
| 70252 | .{ ._, .b_, .swap, .dst0q, ._, ._, ._ }, |
| 70255 | 70253 | .{ ._, ._r, .sa, .dst0q, .uia(64, .dst0, .sub_bit_size), ._, ._ }, |
| 70256 | 70254 | } }, |
| 70257 | 70255 | }, .{ |
| ... | ... | @@ -70276,7 +70274,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70276 | 70274 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 70277 | 70275 | .clobbers = .{ .eflags = true }, |
| 70278 | 70276 | .each = .{ .once = &.{ |
| 70279 | | .{ ._, ._, .bswap, .src0q, ._, ._, ._ }, |
| 70277 | .{ ._, .b_, .swap, .src0q, ._, ._, ._ }, |
| 70280 | 70278 | .{ ._, ._, .mov, .tmp0q, .src0q, ._, ._ }, |
| 70281 | 70279 | .{ ._, ._, .mov, .tmp1q, .uia(0b00001111000011110000111100001111, .none, .repeat), ._, ._ }, |
| 70282 | 70280 | .{ ._, ._, .@"and", .tmp0q, .tmp1q, ._, ._ }, |
| ... | ... | @@ -70307,7 +70305,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70307 | 70305 | .{ .src = .{ .to_sse, .none, .none } }, |
| 70308 | 70306 | }, |
| 70309 | 70307 | .extra_temps = .{ |
| 70310 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70308 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70311 | 70309 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .qword } } }, |
| 70312 | 70310 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70313 | 70311 | .unused, |
| ... | ... | @@ -70334,7 +70332,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70334 | 70332 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 70335 | 70333 | }, |
| 70336 | 70334 | .extra_temps = .{ |
| 70337 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70335 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70338 | 70336 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .qword } } }, |
| 70339 | 70337 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70340 | 70338 | .unused, |
| ... | ... | @@ -70361,7 +70359,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70361 | 70359 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 70362 | 70360 | }, |
| 70363 | 70361 | .extra_temps = .{ |
| 70364 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70362 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70365 | 70363 | .unused, |
| 70366 | 70364 | .unused, |
| 70367 | 70365 | .unused, |
| ... | ... | @@ -70379,7 +70377,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70379 | 70377 | .{ ._, ._, .lea, .dst0p, .mem(.tmp0), ._, ._ }, |
| 70380 | 70378 | .{ ._, ._b, .gf2p8affineq, .src0x, .lea(.dst0x), .ui(0), ._ }, |
| 70381 | 70379 | .{ ._, ._q, .mov, .dst0q, .src0x, ._, ._ }, |
| 70382 | | .{ ._, ._, .bswap, .dst0q, ._, ._, ._ }, |
| 70380 | .{ ._, .b_, .swap, .dst0q, ._, ._, ._ }, |
| 70383 | 70381 | .{ ._, ._r, .sh, .dst0q, .uia(64, .dst0, .sub_bit_size), ._, ._ }, |
| 70384 | 70382 | } }, |
| 70385 | 70383 | }, .{ |
| ... | ... | @@ -70404,7 +70402,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70404 | 70402 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 70405 | 70403 | .clobbers = .{ .eflags = true }, |
| 70406 | 70404 | .each = .{ .once = &.{ |
| 70407 | | .{ ._, ._, .bswap, .src0q, ._, ._, ._ }, |
| 70405 | .{ ._, .b_, .swap, .src0q, ._, ._, ._ }, |
| 70408 | 70406 | .{ ._, ._, .mov, .tmp0q, .src0q, ._, ._ }, |
| 70409 | 70407 | .{ ._, ._, .mov, .tmp1q, .uia(0b00001111000011110000111100001111, .none, .repeat), ._, ._ }, |
| 70410 | 70408 | .{ ._, ._, .@"and", .tmp0q, .tmp1q, ._, ._ }, |
| ... | ... | @@ -70435,7 +70433,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70435 | 70433 | .{ .src = .{ .to_sse, .none, .none } }, |
| 70436 | 70434 | }, |
| 70437 | 70435 | .extra_temps = .{ |
| 70438 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70436 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70439 | 70437 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .xword } } }, |
| 70440 | 70438 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70441 | 70439 | .unused, |
| ... | ... | @@ -70461,7 +70459,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70461 | 70459 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 70462 | 70460 | }, |
| 70463 | 70461 | .extra_temps = .{ |
| 70464 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70462 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70465 | 70463 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .xword } } }, |
| 70466 | 70464 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70467 | 70465 | .unused, |
| ... | ... | @@ -70487,7 +70485,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70487 | 70485 | .{ .src = .{ .to_sse, .none, .none } }, |
| 70488 | 70486 | }, |
| 70489 | 70487 | .extra_temps = .{ |
| 70490 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70488 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70491 | 70489 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .xword } } }, |
| 70492 | 70490 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70493 | 70491 | .{ .type = .vector_16_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| ... | ... | @@ -70520,7 +70518,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70520 | 70518 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 70521 | 70519 | }, |
| 70522 | 70520 | .extra_temps = .{ |
| 70523 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70521 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70524 | 70522 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .xword } } }, |
| 70525 | 70523 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70526 | 70524 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| ... | ... | @@ -70553,7 +70551,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70553 | 70551 | .{ .src = .{ .to_sse, .none, .none } }, |
| 70554 | 70552 | }, |
| 70555 | 70553 | .extra_temps = .{ |
| 70556 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70554 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70557 | 70555 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .xword } } }, |
| 70558 | 70556 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70559 | 70557 | .{ .type = .vector_16_u8, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } }, |
| ... | ... | @@ -70586,7 +70584,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70586 | 70584 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 70587 | 70585 | }, |
| 70588 | 70586 | .extra_temps = .{ |
| 70589 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70587 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70590 | 70588 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .xword } } }, |
| 70591 | 70589 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70592 | 70590 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| ... | ... | @@ -70619,7 +70617,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70619 | 70617 | .{ .src = .{ .to_sse, .none, .none } }, |
| 70620 | 70618 | }, |
| 70621 | 70619 | .extra_temps = .{ |
| 70622 | | .{ .type = .vector_32_u8, .kind = .forward_bits_mem }, |
| 70620 | .{ .type = .vector_32_u8, .kind = .{ .bits_mem = .forward } }, |
| 70623 | 70621 | .{ .type = .vector_32_u8, .kind = .{ .pshufb_bswap_mem = .{ .repeat = 2, .size = .xword } } }, |
| 70624 | 70622 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70625 | 70623 | .unused, |
| ... | ... | @@ -70646,11 +70644,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70646 | 70644 | .{ .src = .{ .to_sse, .none, .none } }, |
| 70647 | 70645 | }, |
| 70648 | 70646 | .extra_temps = .{ |
| 70649 | | .{ .type = .vector_32_u8, .kind = .forward_bits_mem }, |
| 70650 | | .{ .type = .vector_32_u8, .kind = .{ .pshufb_bswap_mem = .{ .repeat = 2, .size = .xword } } }, |
| 70647 | .{ .type = .vector_32_u8, .kind = .{ .bits_mem = .forward } }, |
| 70648 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .xword } } }, |
| 70651 | 70649 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70652 | | .unused, |
| 70653 | | .unused, |
| 70650 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 70651 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 70654 | 70652 | .unused, |
| 70655 | 70653 | .unused, |
| 70656 | 70654 | .unused, |
| ... | ... | @@ -70662,9 +70660,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70662 | 70660 | .each = .{ .once = &.{ |
| 70663 | 70661 | .{ ._, ._, .lea, .tmp2p, .mem(.tmp0), ._, ._ }, |
| 70664 | 70662 | .{ ._, .v_b, .gf2p8affineq, .dst0y, .src0y, .lea(.tmp2y), .ui(0) }, |
| 70663 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 70665 | 70664 | .{ ._, ._, .lea, .tmp2p, .mem(.tmp1), ._, ._ }, |
| 70666 | | .{ ._, .vp_b, .shuf, .dst0y, .dst0y, .lea(.tmp2y), ._ }, |
| 70667 | | .{ ._, .v_pd, .perm, .dst0y, .dst0y, .ui(0b01_00_11_10), ._ }, |
| 70665 | .{ ._, .v_dqa, .mov, .tmp4x, .lea(.tmp2x), ._, ._ }, |
| 70666 | .{ ._, .vp_b, .shuf, .dst0x, .dst0x, .tmp4x, ._ }, |
| 70667 | .{ ._, .vp_b, .shuf, .tmp3x, .tmp3x, .tmp4x, ._ }, |
| 70668 | .{ ._, .v_f128, .insert, .dst0y, .tmp3y, .dst0x, .ui(1) }, |
| 70668 | 70669 | } }, |
| 70669 | 70670 | }, .{ |
| 70670 | 70671 | .required_features = .{ .avx2, .gfni, null, null }, |
| ... | ... | @@ -70675,7 +70676,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70675 | 70676 | .extra_temps = .{ |
| 70676 | 70677 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70677 | 70678 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 70678 | | .{ .type = .vector_32_u8, .kind = .forward_bits_mem }, |
| 70679 | .{ .type = .vector_32_u8, .kind = .{ .bits_mem = .forward } }, |
| 70679 | 70680 | .{ .type = .vector_32_u8, .kind = .{ .pshufb_bswap_mem = .{ .repeat = 2, .size = .xword } } }, |
| 70680 | 70681 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 70681 | 70682 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| ... | ... | @@ -70702,42 +70703,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70702 | 70703 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 70703 | 70704 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| 70704 | 70705 | } }, |
| 70705 | | }, .{ |
| 70706 | | .required_features = .{ .avx, .gfni, null, null }, |
| 70707 | | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .yword, .is = 256 } }, .any, .any }, |
| 70708 | | .patterns = &.{ |
| 70709 | | .{ .src = .{ .to_mem, .none, .none } }, |
| 70710 | | }, |
| 70711 | | .extra_temps = .{ |
| 70712 | | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70713 | | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 70714 | | .{ .type = .vector_32_u8, .kind = .forward_bits_mem }, |
| 70715 | | .{ .type = .vector_32_u8, .kind = .{ .pshufb_bswap_mem = .{ .repeat = 2, .size = .xword } } }, |
| 70716 | | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 70717 | | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 70718 | | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 70719 | | .unused, |
| 70720 | | .unused, |
| 70721 | | .unused, |
| 70722 | | .unused, |
| 70723 | | }, |
| 70724 | | .dst_temps = .{ .mem, .unused }, |
| 70725 | | .clobbers = .{ .eflags = true }, |
| 70726 | | .each = .{ .once = &.{ |
| 70727 | | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 70728 | | .{ ._, .v_dqa, .mov, .tmp4y, .lea(.tmp0y), ._, ._ }, |
| 70729 | | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 70730 | | .{ ._, .v_dqa, .mov, .tmp5y, .lea(.tmp0y), ._, ._ }, |
| 70731 | | .{ ._, ._, .mov, .tmp0d, .sia(-32, .dst0, .add_size), ._, ._ }, |
| 70732 | | .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ }, |
| 70733 | | .{ .@"0:", .v_pd, .perm, .tmp6y, .lea(.tmp1y), .ui(0b01_00_11_10), ._ }, |
| 70734 | | .{ ._, .v_b, .gf2p8affineq, .tmp6y, .tmp6y, .tmp4y, .ui(0) }, |
| 70735 | | .{ ._, .vp_b, .shuf, .tmp6y, .tmp6y, .tmp5y, ._ }, |
| 70736 | | .{ ._, .v_dqu, .mov, .memi(.dst0y, .tmp0), .tmp6y, ._, ._ }, |
| 70737 | | .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 32), ._, ._ }, |
| 70738 | | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 70739 | | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| 70740 | | } }, |
| 70741 | 70706 | }, .{ |
| 70742 | 70707 | .required_features = .{ .avx, .gfni, null, null }, |
| 70743 | 70708 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = 128 } }, .any, .any }, |
| ... | ... | @@ -70747,7 +70712,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70747 | 70712 | .extra_temps = .{ |
| 70748 | 70713 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 70749 | 70714 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 70750 | | .{ .type = .vector_16_u8, .kind = .forward_bits_mem }, |
| 70715 | .{ .type = .vector_16_u8, .kind = .{ .bits_mem = .forward } }, |
| 70751 | 70716 | .{ .type = .vector_16_u8, .kind = .{ .pshufb_bswap_mem = .{ .size = .xword } } }, |
| 70752 | 70717 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 70753 | 70718 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| ... | ... | @@ -70820,7 +70785,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70820 | 70785 | .{ ._, ._l, .sh, .tmp6q, .ui(1), ._, ._ }, |
| 70821 | 70786 | .{ ._, ._, .@"and", .tmp5q, .tmp4q, ._, ._ }, |
| 70822 | 70787 | .{ ._, ._, .@"or", .tmp5q, .tmp6q, ._, ._ }, |
| 70823 | | .{ ._, ._, .movbe, .memi(.dst0q, .tmp0), .tmp5q, ._, ._ }, |
| 70788 | .{ ._, ._be, .mov, .memi(.dst0q, .tmp0), .tmp5q, ._, ._ }, |
| 70824 | 70789 | .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| 70825 | 70790 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 70826 | 70791 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| ... | ... | @@ -70871,7 +70836,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70871 | 70836 | .{ ._, ._l, .sh, .tmp6q, .ui(1), ._, ._ }, |
| 70872 | 70837 | .{ ._, ._, .@"and", .tmp5q, .tmp4q, ._, ._ }, |
| 70873 | 70838 | .{ ._, ._, .@"or", .tmp5q, .tmp6q, ._, ._ }, |
| 70874 | | .{ ._, ._, .bswap, .tmp5q, ._, ._, ._ }, |
| 70839 | .{ ._, .b_, .swap, .tmp5q, ._, ._, ._ }, |
| 70875 | 70840 | .{ ._, ._, .mov, .memi(.dst0q, .tmp0), .tmp5q, ._, ._ }, |
| 70876 | 70841 | .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| 70877 | 70842 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| ... | ... | @@ -70927,7 +70892,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70927 | 70892 | .{ ._, ._l, .sh, .tmp6q, .ui(1), ._, ._ }, |
| 70928 | 70893 | .{ ._, ._, .@"and", .tmp5q, .tmp4q, ._, ._ }, |
| 70929 | 70894 | .{ ._, ._, .@"or", .tmp5q, .tmp6q, ._, ._ }, |
| 70930 | | .{ ._, ._, .movbe, .memi(.dst0q, .tmp0), .tmp5q, ._, ._ }, |
| 70895 | .{ ._, ._be, .mov, .memi(.dst0q, .tmp0), .tmp5q, ._, ._ }, |
| 70931 | 70896 | .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| 70932 | 70897 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 70933 | 70898 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| ... | ... | @@ -70982,7 +70947,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 70982 | 70947 | .{ ._, ._l, .sh, .tmp6q, .ui(1), ._, ._ }, |
| 70983 | 70948 | .{ ._, ._, .@"and", .tmp5q, .tmp4q, ._, ._ }, |
| 70984 | 70949 | .{ ._, ._, .@"or", .tmp5q, .tmp6q, ._, ._ }, |
| 70985 | | .{ ._, ._, .bswap, .tmp5q, ._, ._, ._ }, |
| 70950 | .{ ._, .b_, .swap, .tmp5q, ._, ._, ._ }, |
| 70986 | 70951 | .{ ._, ._, .mov, .memi(.dst0q, .tmp0), .tmp5q, ._, ._ }, |
| 70987 | 70952 | .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| 70988 | 70953 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| ... | ... | @@ -71035,7 +71000,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 71035 | 71000 | .{ ._, ._l, .sh, .tmp6q, .ui(1), ._, ._ }, |
| 71036 | 71001 | .{ ._, ._, .@"and", .tmp5q, .tmp4q, ._, ._ }, |
| 71037 | 71002 | .{ ._, ._, .@"or", .tmp5q, .tmp6q, ._, ._ }, |
| 71038 | | .{ ._, ._, .movbe, .memi(.dst0q, .tmp0), .tmp5q, ._, ._ }, |
| 71003 | .{ ._, ._be, .mov, .memi(.dst0q, .tmp0), .tmp5q, ._, ._ }, |
| 71039 | 71004 | .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 8), ._, ._ }, |
| 71040 | 71005 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 71041 | 71006 | .{ ._, ._ae, .j, .@"0b", ._, ._, ._ }, |
| ... | ... | @@ -71069,7 +71034,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 71069 | 71034 | .{ ._, ._, .mov, .tmp3q, .uia(0b00110011001100110011001100110011, .none, .repeat), ._, ._ }, |
| 71070 | 71035 | .{ ._, ._, .mov, .tmp4q, .uia(0b01010101010101010101010101010101, .none, .repeat), ._, ._ }, |
| 71071 | 71036 | .{ .@"0:", ._, .mov, .tmp5q, .lea(.tmp1q), ._, ._ }, |
| 71072 | | .{ ._, ._, .bswap, .tmp5q, ._, ._, ._ }, |
| 71037 | .{ ._, .b_, .swap, .tmp5q, ._, ._, ._ }, |
| 71073 | 71038 | .{ ._, ._, .mov, .tmp6q, .tmp5q, ._, ._ }, |
| 71074 | 71039 | .{ ._, ._, .@"and", .tmp6q, .tmp2q, ._, ._ }, |
| 71075 | 71040 | .{ ._, ._r, .sh, .tmp5q, .ui(4), ._, ._ }, |
| ... | ... | @@ -71124,7 +71089,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 71124 | 71089 | .{ ._, ._, .mov, .tmp3q, .uia(0b00001111000011110000111100001111, .none, .repeat), ._, ._ }, |
| 71125 | 71090 | .{ ._, ._, .mov, .tmp4q, .uia(0b00110011001100110011001100110011, .none, .repeat), ._, ._ }, |
| 71126 | 71091 | .{ ._, ._, .mov, .tmp5q, .uia(0b01010101010101010101010101010101, .none, .repeat), ._, ._ }, |
| 71127 | | .{ .@"0:", ._, .movbe, .tmp6q, .lea(.tmp1q), ._, ._ }, |
| 71092 | .{ .@"0:", ._be, .mov, .tmp6q, .lea(.tmp1q), ._, ._ }, |
| 71128 | 71093 | .{ ._, ._, .mov, .tmp7q, .tmp6q, ._, ._ }, |
| 71129 | 71094 | .{ ._, ._, .@"and", .tmp7q, .tmp3q, ._, ._ }, |
| 71130 | 71095 | .{ ._, ._r, .sh, .tmp6q, .ui(4), ._, ._ }, |
| ... | ... | @@ -71183,7 +71148,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 71183 | 71148 | .{ ._, ._, .mov, .tmp4q, .uia(0b00110011001100110011001100110011, .none, .repeat), ._, ._ }, |
| 71184 | 71149 | .{ ._, ._, .mov, .tmp5q, .uia(0b01010101010101010101010101010101, .none, .repeat), ._, ._ }, |
| 71185 | 71150 | .{ .@"0:", ._, .mov, .tmp6q, .lea(.tmp1q), ._, ._ }, |
| 71186 | | .{ ._, ._, .bswap, .tmp6q, ._, ._, ._ }, |
| 71151 | .{ ._, .b_, .swap, .tmp6q, ._, ._, ._ }, |
| 71187 | 71152 | .{ ._, ._, .mov, .tmp7q, .tmp6q, ._, ._ }, |
| 71188 | 71153 | .{ ._, ._, .@"and", .tmp7q, .tmp3q, ._, ._ }, |
| 71189 | 71154 | .{ ._, ._r, .sh, .tmp6q, .ui(4), ._, ._ }, |
| ... | ... | @@ -71239,7 +71204,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 71239 | 71204 | .{ ._, ._, .mov, .tmp3q, .uia(0b00001111000011110000111100001111, .none, .repeat), ._, ._ }, |
| 71240 | 71205 | .{ ._, ._, .mov, .tmp4q, .uia(0b00110011001100110011001100110011, .none, .repeat), ._, ._ }, |
| 71241 | 71206 | .{ ._, ._, .mov, .tmp5q, .uia(0b01010101010101010101010101010101, .none, .repeat), ._, ._ }, |
| 71242 | | .{ .@"0:", ._, .movbe, .tmp6q, .lea(.tmp1q), ._, ._ }, |
| 71207 | .{ .@"0:", ._be, .mov, .tmp6q, .lea(.tmp1q), ._, ._ }, |
| 71243 | 71208 | .{ ._, ._, .mov, .tmp7q, .tmp6q, ._, ._ }, |
| 71244 | 71209 | .{ ._, ._, .@"and", .tmp7q, .tmp3q, ._, ._ }, |
| 71245 | 71210 | .{ ._, ._r, .sh, .tmp6q, .ui(4), ._, ._ }, |
| ... | ... | @@ -71296,7 +71261,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 71296 | 71261 | .{ ._, ._, .mov, .tmp4q, .uia(0b00110011001100110011001100110011, .none, .repeat), ._, ._ }, |
| 71297 | 71262 | .{ ._, ._, .mov, .tmp5q, .uia(0b01010101010101010101010101010101, .none, .repeat), ._, ._ }, |
| 71298 | 71263 | .{ .@"0:", ._, .mov, .tmp6q, .lea(.tmp1q), ._, ._ }, |
| 71299 | | .{ ._, ._, .bswap, .tmp6q, ._, ._, ._ }, |
| 71264 | .{ ._, .b_, .swap, .tmp6q, ._, ._, ._ }, |
| 71300 | 71265 | .{ ._, ._, .mov, .tmp7q, .tmp6q, ._, ._ }, |
| 71301 | 71266 | .{ ._, ._, .@"and", .tmp7q, .tmp3q, ._, ._ }, |
| 71302 | 71267 | .{ ._, ._r, .sh, .tmp6q, .ui(4), ._, ._ }, |
| ... | ... | @@ -71353,7 +71318,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 71353 | 71318 | .{ ._, ._, .mov, .tmp3q, .uia(0b00001111000011110000111100001111, .none, .repeat), ._, ._ }, |
| 71354 | 71319 | .{ ._, ._, .mov, .tmp4q, .uia(0b00110011001100110011001100110011, .none, .repeat), ._, ._ }, |
| 71355 | 71320 | .{ ._, ._, .mov, .tmp5q, .uia(0b01010101010101010101010101010101, .none, .repeat), ._, ._ }, |
| 71356 | | .{ .@"0:", ._, .movbe, .tmp6q, .lea(.tmp1q), ._, ._ }, |
| 71321 | .{ .@"0:", ._be, .mov, .tmp6q, .lea(.tmp1q), ._, ._ }, |
| 71357 | 71322 | .{ ._, ._, .mov, .tmp7q, .tmp6q, ._, ._ }, |
| 71358 | 71323 | .{ ._, ._, .@"and", .tmp7q, .tmp3q, ._, ._ }, |
| 71359 | 71324 | .{ ._, ._r, .sh, .tmp6q, .ui(4), ._, ._ }, |
| ... | ... | @@ -71411,7 +71376,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 71411 | 71376 | .{ ._, ._, .mov, .tmp4q, .uia(0b00110011001100110011001100110011, .none, .repeat), ._, ._ }, |
| 71412 | 71377 | .{ ._, ._, .mov, .tmp5q, .uia(0b01010101010101010101010101010101, .none, .repeat), ._, ._ }, |
| 71413 | 71378 | .{ .@"0:", ._, .mov, .tmp6q, .lea(.tmp1q), ._, ._ }, |
| 71414 | | .{ ._, ._, .bswap, .tmp6q, ._, ._, ._ }, |
| 71379 | .{ ._, .b_, .swap, .tmp6q, ._, ._, ._ }, |
| 71415 | 71380 | .{ ._, ._, .mov, .tmp7q, .tmp6q, ._, ._ }, |
| 71416 | 71381 | .{ ._, ._, .@"and", .tmp7q, .tmp3q, ._, ._ }, |
| 71417 | 71382 | .{ ._, ._r, .sh, .tmp6q, .ui(4), ._, ._ }, |
| ... | ... | @@ -71466,7 +71431,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 71466 | 71431 | .{ ._, ._, .mov, .tmp3q, .uia(0b00001111000011110000111100001111, .none, .repeat), ._, ._ }, |
| 71467 | 71432 | .{ ._, ._, .mov, .tmp4q, .uia(0b00110011001100110011001100110011, .none, .repeat), ._, ._ }, |
| 71468 | 71433 | .{ ._, ._, .mov, .tmp5q, .uia(0b01010101010101010101010101010101, .none, .repeat), ._, ._ }, |
| 71469 | | .{ .@"0:", ._, .movbe, .tmp6q, .lea(.tmp1q), ._, ._ }, |
| 71434 | .{ .@"0:", ._be, .mov, .tmp6q, .lea(.tmp1q), ._, ._ }, |
| 71470 | 71435 | .{ ._, ._, .mov, .tmp7q, .tmp6q, ._, ._ }, |
| 71471 | 71436 | .{ ._, ._, .@"and", .tmp7q, .tmp3q, ._, ._ }, |
| 71472 | 71437 | .{ ._, ._r, .sh, .tmp6q, .ui(4), ._, ._ }, |
| ... | ... | @@ -71522,7 +71487,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 71522 | 71487 | .{ ._, ._, .mov, .tmp4q, .uia(0b00110011001100110011001100110011, .none, .repeat), ._, ._ }, |
| 71523 | 71488 | .{ ._, ._, .mov, .tmp5q, .uia(0b01010101010101010101010101010101, .none, .repeat), ._, ._ }, |
| 71524 | 71489 | .{ .@"0:", ._, .mov, .tmp6q, .lea(.tmp1q), ._, ._ }, |
| 71525 | | .{ ._, ._, .bswap, .tmp6q, ._, ._, ._ }, |
| 71490 | .{ ._, .b_, .swap, .tmp6q, ._, ._, ._ }, |
| 71526 | 71491 | .{ ._, ._, .mov, .tmp7q, .tmp6q, ._, ._ }, |
| 71527 | 71492 | .{ ._, ._, .@"and", .tmp7q, .tmp3q, ._, ._ }, |
| 71528 | 71493 | .{ ._, ._r, .sh, .tmp6q, .ui(4), ._, ._ }, |
| ... | ... | @@ -77295,15 +77260,15 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 77295 | 77260 | }, |
| 77296 | 77261 | .cmp_vector, .cmp_vector_optimized => |air_tag| if (use_old) try cg.airCmpVector(inst) else fallback: { |
| 77297 | 77262 | const ty_pl = air_datas[@intFromEnum(inst)].ty_pl; |
| 77298 | | const extra = cg.air.extraData(Air.VectorCmp, ty_pl.payload).data; |
| 77299 | | switch (extra.compareOperator()) { |
| 77263 | const vector_cmp = cg.air.extraData(Air.VectorCmp, ty_pl.payload).data; |
| 77264 | switch (vector_cmp.compareOperator()) { |
| 77300 | 77265 | .eq, .neq => {}, |
| 77301 | | .lt, .lte, .gte, .gt => if (cg.floatBits(cg.typeOf(extra.lhs).childType(zcu)) == null) |
| 77266 | .lt, .lte, .gte, .gt => if (cg.floatBits(cg.typeOf(vector_cmp.lhs).childType(zcu)) == null) |
| 77302 | 77267 | break :fallback try cg.airCmpVector(inst), |
| 77303 | 77268 | } |
| 77304 | | var ops = try cg.tempsFromOperands(inst, .{ extra.lhs, extra.rhs }); |
| 77269 | var ops = try cg.tempsFromOperands(inst, .{ vector_cmp.lhs, vector_cmp.rhs }); |
| 77305 | 77270 | var res: [1]Temp = undefined; |
| 77306 | | (err: switch (extra.compareOperator()) { |
| 77271 | (err: switch (vector_cmp.compareOperator()) { |
| 77307 | 77272 | .lt, .lte, .gte, .gt => |cmp_op| { |
| 77308 | 77273 | switch (cmp_op) { |
| 77309 | 77274 | else => unreachable, |
| ... | ... | @@ -84350,14 +84315,14 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 84350 | 84315 | }) catch |err| switch (err) { |
| 84351 | 84316 | error.SelectFailed => return cg.fail("failed to select {s} {s} {} {} {}", .{ |
| 84352 | 84317 | @tagName(air_tag), |
| 84353 | | @tagName(extra.compareOperator()), |
| 84354 | | cg.typeOf(extra.lhs).fmt(pt), |
| 84318 | @tagName(vector_cmp.compareOperator()), |
| 84319 | cg.typeOf(vector_cmp.lhs).fmt(pt), |
| 84355 | 84320 | ops[0].tracking(cg), |
| 84356 | 84321 | ops[1].tracking(cg), |
| 84357 | 84322 | }), |
| 84358 | 84323 | else => |e| return e, |
| 84359 | 84324 | }; |
| 84360 | | try res[0].finish(inst, &.{ extra.lhs, extra.rhs }, &ops, cg); |
| 84325 | try res[0].finish(inst, &.{ vector_cmp.lhs, vector_cmp.rhs }, &ops, cg); |
| 84361 | 84326 | }, |
| 84362 | 84327 | .cond_br => try cg.airCondBr(inst), |
| 84363 | 84328 | .switch_br => try cg.airSwitchBr(inst), |
| ... | ... | @@ -84386,16 +84351,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 84386 | 84351 | }, |
| 84387 | 84352 | .dbg_inline_block => { |
| 84388 | 84353 | const ty_pl = air_datas[@intFromEnum(inst)].ty_pl; |
| 84389 | | const extra = cg.air.extraData(Air.DbgInlineBlock, ty_pl.payload); |
| 84354 | const dbg_inline_block = cg.air.extraData(Air.DbgInlineBlock, ty_pl.payload); |
| 84390 | 84355 | const old_inline_func = cg.inline_func; |
| 84391 | 84356 | defer cg.inline_func = old_inline_func; |
| 84392 | | cg.inline_func = extra.data.func; |
| 84357 | cg.inline_func = dbg_inline_block.data.func; |
| 84393 | 84358 | if (cg.debug_output != .none) _ = try cg.addInst(.{ |
| 84394 | 84359 | .tag = .pseudo, |
| 84395 | 84360 | .ops = .pseudo_dbg_enter_inline_func, |
| 84396 | | .data = .{ .func = extra.data.func }, |
| 84361 | .data = .{ .func = dbg_inline_block.data.func }, |
| 84397 | 84362 | }); |
| 84398 | | try cg.lowerBlock(inst, @ptrCast(cg.air.extra[extra.end..][0..extra.data.body_len])); |
| 84363 | try cg.lowerBlock(inst, @ptrCast(cg.air.extra[dbg_inline_block.end..][0..dbg_inline_block.data.body_len])); |
| 84399 | 84364 | if (cg.debug_output != .none) _ = try cg.addInst(.{ |
| 84400 | 84365 | .tag = .pseudo, |
| 84401 | 84366 | .ops = .pseudo_dbg_leave_inline_func, |
| ... | ... | @@ -97931,14 +97896,14 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 97931 | 97896 | }, |
| 97932 | 97897 | .struct_field_ptr => if (use_old) try cg.airStructFieldPtr(inst) else { |
| 97933 | 97898 | const ty_pl = air_datas[@intFromEnum(inst)].ty_pl; |
| 97934 | | const extra = cg.air.extraData(Air.StructField, ty_pl.payload).data; |
| 97935 | | var ops = try cg.tempsFromOperands(inst, .{extra.struct_operand}); |
| 97899 | const struct_field = cg.air.extraData(Air.StructField, ty_pl.payload).data; |
| 97900 | var ops = try cg.tempsFromOperands(inst, .{struct_field.struct_operand}); |
| 97936 | 97901 | try ops[0].toOffset(cg.fieldOffset( |
| 97937 | | cg.typeOf(extra.struct_operand), |
| 97902 | cg.typeOf(struct_field.struct_operand), |
| 97938 | 97903 | ty_pl.ty.toType(), |
| 97939 | | extra.field_index, |
| 97904 | struct_field.field_index, |
| 97940 | 97905 | ), cg); |
| 97941 | | try ops[0].finish(inst, &.{extra.struct_operand}, &ops, cg); |
| 97906 | try ops[0].finish(inst, &.{struct_field.struct_operand}, &ops, cg); |
| 97942 | 97907 | }, |
| 97943 | 97908 | .struct_field_ptr_index_0, |
| 97944 | 97909 | .struct_field_ptr_index_1, |
| ... | ... | @@ -97968,19 +97933,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 97968 | 97933 | }, |
| 97969 | 97934 | .struct_field_val => if (use_old) try cg.airStructFieldVal(inst) else fallback: { |
| 97970 | 97935 | const ty_pl = air_datas[@intFromEnum(inst)].ty_pl; |
| 97971 | | const extra = cg.air.extraData(Air.StructField, ty_pl.payload).data; |
| 97972 | | const agg_ty = cg.typeOf(extra.struct_operand); |
| 97936 | const struct_field = cg.air.extraData(Air.StructField, ty_pl.payload).data; |
| 97937 | const agg_ty = cg.typeOf(struct_field.struct_operand); |
| 97973 | 97938 | const field_ty = ty_pl.ty.toType(); |
| 97974 | 97939 | const field_off: u31 = switch (agg_ty.containerLayout(zcu)) { |
| 97975 | | .auto, .@"extern" => @intCast(agg_ty.structFieldOffset(extra.field_index, zcu)), |
| 97940 | .auto, .@"extern" => @intCast(agg_ty.structFieldOffset(struct_field.field_index, zcu)), |
| 97976 | 97941 | .@"packed" => break :fallback try cg.airStructFieldVal(inst), |
| 97977 | 97942 | }; |
| 97978 | | var ops = try cg.tempsFromOperands(inst, .{extra.struct_operand}); |
| 97943 | var ops = try cg.tempsFromOperands(inst, .{struct_field.struct_operand}); |
| 97979 | 97944 | var res = if (!hack_around_sema_opv_bugs or field_ty.hasRuntimeBitsIgnoreComptime(zcu)) |
| 97980 | 97945 | try ops[0].read(field_ty, .{ .disp = field_off }, cg) |
| 97981 | 97946 | else |
| 97982 | 97947 | try cg.tempInit(field_ty, .none); |
| 97983 | | try res.finish(inst, &.{extra.struct_operand}, &ops, cg); |
| 97948 | try res.finish(inst, &.{struct_field.struct_operand}, &ops, cg); |
| 97984 | 97949 | }, |
| 97985 | 97950 | .set_union_tag => if (use_old) try cg.airSetUnionTag(inst) else { |
| 97986 | 97951 | const bin_op = air_datas[@intFromEnum(inst)].bin_op; |
| ... | ... | @@ -98881,9 +98846,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 98881 | 98846 | .unused, |
| 98882 | 98847 | }, |
| 98883 | 98848 | .dst_temps = .{ .mem, .unused }, |
| 98849 | .clobbers = .{ .eflags = true }, |
| 98884 | 98850 | .each = .{ .once = &.{ |
| 98885 | 98851 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 98886 | | .{ ._, .v_dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 98852 | .{ ._, .v_ps, .mova, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 98887 | 98853 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 98888 | 98854 | .{ .@"0:", .v_ps, .cvtph2, .tmp3x, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), ._, ._ }, |
| 98889 | 98855 | .{ ._, .v_, .cvttps2dq, .tmp3x, .tmp3x, ._, ._ }, |
| ... | ... | @@ -99135,6 +99101,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 99135 | 99101 | .unused, |
| 99136 | 99102 | }, |
| 99137 | 99103 | .dst_temps = .{ .mem, .unused }, |
| 99104 | .clobbers = .{ .eflags = true }, |
| 99138 | 99105 | .each = .{ .once = &.{ |
| 99139 | 99106 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 99140 | 99107 | .{ .@"0:", .v_ps, .cvtph2, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -99165,6 +99132,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 99165 | 99132 | .unused, |
| 99166 | 99133 | }, |
| 99167 | 99134 | .dst_temps = .{ .mem, .unused }, |
| 99135 | .clobbers = .{ .eflags = true }, |
| 99168 | 99136 | .each = .{ .once = &.{ |
| 99169 | 99137 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 99170 | 99138 | .{ .@"0:", .v_ps, .cvtph2, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -99292,6 +99260,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 99292 | 99260 | .unused, |
| 99293 | 99261 | }, |
| 99294 | 99262 | .dst_temps = .{ .mem, .unused }, |
| 99263 | .clobbers = .{ .eflags = true }, |
| 99295 | 99264 | .each = .{ .once = &.{ |
| 99296 | 99265 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 99297 | 99266 | .{ .@"0:", .v_ps, .cvtph2, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -99321,6 +99290,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 99321 | 99290 | .unused, |
| 99322 | 99291 | }, |
| 99323 | 99292 | .dst_temps = .{ .mem, .unused }, |
| 99293 | .clobbers = .{ .eflags = true }, |
| 99324 | 99294 | .each = .{ .once = &.{ |
| 99325 | 99295 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 99326 | 99296 | .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| ... | ... | @@ -99546,6 +99516,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 99546 | 99516 | .unused, |
| 99547 | 99517 | }, |
| 99548 | 99518 | .dst_temps = .{ .mem, .unused }, |
| 99519 | .clobbers = .{ .eflags = true }, |
| 99549 | 99520 | .each = .{ .once = &.{ |
| 99550 | 99521 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 99551 | 99522 | .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| ... | ... | @@ -100556,6 +100527,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 100556 | 100527 | .unused, |
| 100557 | 100528 | }, |
| 100558 | 100529 | .dst_temps = .{ .mem, .unused }, |
| 100530 | .clobbers = .{ .eflags = true }, |
| 100559 | 100531 | .each = .{ .once = &.{ |
| 100560 | 100532 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 100561 | 100533 | .{ ._, .v_dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| ... | ... | @@ -100587,6 +100559,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 100587 | 100559 | .unused, |
| 100588 | 100560 | }, |
| 100589 | 100561 | .dst_temps = .{ .mem, .unused }, |
| 100562 | .clobbers = .{ .eflags = true }, |
| 100590 | 100563 | .each = .{ .once = &.{ |
| 100591 | 100564 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 100592 | 100565 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| ... | ... | @@ -100618,6 +100591,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 100618 | 100591 | .unused, |
| 100619 | 100592 | }, |
| 100620 | 100593 | .dst_temps = .{ .mem, .unused }, |
| 100594 | .clobbers = .{ .eflags = true }, |
| 100621 | 100595 | .each = .{ .once = &.{ |
| 100622 | 100596 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 100623 | 100597 | .{ .@"0:", ._, .cvttss2si, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -100646,6 +100620,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 100646 | 100620 | .unused, |
| 100647 | 100621 | }, |
| 100648 | 100622 | .dst_temps = .{ .mem, .unused }, |
| 100623 | .clobbers = .{ .eflags = true }, |
| 100649 | 100624 | .each = .{ .once = &.{ |
| 100650 | 100625 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 100651 | 100626 | .{ .@"0:", ._, .cvttss2si, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -100850,6 +100825,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 100850 | 100825 | .unused, |
| 100851 | 100826 | }, |
| 100852 | 100827 | .dst_temps = .{ .mem, .unused }, |
| 100828 | .clobbers = .{ .eflags = true }, |
| 100853 | 100829 | .each = .{ .once = &.{ |
| 100854 | 100830 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 100855 | 100831 | .{ .@"0:", .v_, .cvttps2dq, .tmp1x, .memsia(.src0x, .@"2", .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -100879,6 +100855,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 100879 | 100855 | .unused, |
| 100880 | 100856 | }, |
| 100881 | 100857 | .dst_temps = .{ .mem, .unused }, |
| 100858 | .clobbers = .{ .eflags = true }, |
| 100882 | 100859 | .each = .{ .once = &.{ |
| 100883 | 100860 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 100884 | 100861 | .{ .@"0:", ._, .cvttps2dq, .tmp1x, .memsia(.src0x, .@"2", .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -100908,6 +100885,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 100908 | 100885 | .unused, |
| 100909 | 100886 | }, |
| 100910 | 100887 | .dst_temps = .{ .mem, .unused }, |
| 100888 | .clobbers = .{ .eflags = true }, |
| 100911 | 100889 | .each = .{ .once = &.{ |
| 100912 | 100890 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 100913 | 100891 | .{ .@"0:", .v_, .cvttps2dq, .tmp1x, .memsia(.src0x, .@"2", .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -100937,6 +100915,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 100937 | 100915 | .unused, |
| 100938 | 100916 | }, |
| 100939 | 100917 | .dst_temps = .{ .mem, .unused }, |
| 100918 | .clobbers = .{ .eflags = true }, |
| 100940 | 100919 | .each = .{ .once = &.{ |
| 100941 | 100920 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 100942 | 100921 | .{ .@"0:", ._, .cvttps2dq, .tmp1x, .memsia(.src0x, .@"2", .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -101052,6 +101031,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101052 | 101031 | .unused, |
| 101053 | 101032 | }, |
| 101054 | 101033 | .dst_temps = .{ .mem, .unused }, |
| 101034 | .clobbers = .{ .eflags = true }, |
| 101055 | 101035 | .each = .{ .once = &.{ |
| 101056 | 101036 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 101057 | 101037 | .{ .@"0:", .v_, .cvttps2dq, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -101080,6 +101060,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101080 | 101060 | .unused, |
| 101081 | 101061 | }, |
| 101082 | 101062 | .dst_temps = .{ .mem, .unused }, |
| 101063 | .clobbers = .{ .eflags = true }, |
| 101083 | 101064 | .each = .{ .once = &.{ |
| 101084 | 101065 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 101085 | 101066 | .{ .@"0:", ._, .cvttps2dq, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -101232,6 +101213,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101232 | 101213 | .unused, |
| 101233 | 101214 | }, |
| 101234 | 101215 | .dst_temps = .{ .mem, .unused }, |
| 101216 | .clobbers = .{ .eflags = true }, |
| 101235 | 101217 | .each = .{ .once = &.{ |
| 101236 | 101218 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 101237 | 101219 | .{ .@"0:", .v_, .cvttss2si, .tmp1q, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -101260,6 +101242,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101260 | 101242 | .unused, |
| 101261 | 101243 | }, |
| 101262 | 101244 | .dst_temps = .{ .mem, .unused }, |
| 101245 | .clobbers = .{ .eflags = true }, |
| 101263 | 101246 | .each = .{ .once = &.{ |
| 101264 | 101247 | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 101265 | 101248 | .{ .@"0:", ._, .cvttss2si, .tmp1q, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ }, |
| ... | ... | @@ -101688,6 +101671,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101688 | 101671 | }, |
| 101689 | 101672 | .extra_temps = .{ |
| 101690 | 101673 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 101674 | .{ .type = .u16, .kind = .mem }, |
| 101691 | 101675 | .{ .type = .i16, .kind = .mem }, |
| 101692 | 101676 | .unused, |
| 101693 | 101677 | .unused, |
| ... | ... | @@ -101697,13 +101681,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101697 | 101681 | .unused, |
| 101698 | 101682 | .unused, |
| 101699 | 101683 | .unused, |
| 101700 | | .unused, |
| 101701 | 101684 | }, |
| 101702 | 101685 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 101703 | 101686 | .each = .{ .once = &.{ |
| 101704 | 101687 | .{ ._, .f_, .ld, .src0q, ._, ._, ._ }, |
| 101705 | | .{ ._, .fi_p, .stt, .tmp1w, ._, ._, ._ }, |
| 101706 | | .{ ._, ._, .movsx, .dst0d, .tmp1b, ._, ._ }, |
| 101688 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 101689 | .{ ._, ._, .movzx, .dst0d, .memd(.tmp1b, 1), ._, ._ }, |
| 101690 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 101691 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 101692 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .dst0b, ._, ._ }, |
| 101693 | .{ ._, .fi_p, .st, .tmp2w, ._, ._, ._ }, |
| 101694 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 101695 | .{ ._, ._, .movsx, .dst0d, .tmp2b, ._, ._ }, |
| 101707 | 101696 | } }, |
| 101708 | 101697 | }, .{ |
| 101709 | 101698 | .required_features = .{ .x87, null, null, null }, |
| ... | ... | @@ -101714,6 +101703,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101714 | 101703 | }, |
| 101715 | 101704 | .extra_temps = .{ |
| 101716 | 101705 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 101706 | .{ .type = .u16, .kind = .mem }, |
| 101717 | 101707 | .{ .type = .i16, .kind = .mem }, |
| 101718 | 101708 | .unused, |
| 101719 | 101709 | .unused, |
| ... | ... | @@ -101723,13 +101713,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101723 | 101713 | .unused, |
| 101724 | 101714 | .unused, |
| 101725 | 101715 | .unused, |
| 101726 | | .unused, |
| 101727 | 101716 | }, |
| 101728 | 101717 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 101729 | 101718 | .each = .{ .once = &.{ |
| 101730 | 101719 | .{ ._, .f_, .ld, .src0q, ._, ._, ._ }, |
| 101731 | | .{ ._, .fi_p, .stt, .tmp1w, ._, ._, ._ }, |
| 101732 | | .{ ._, ._, .movzx, .dst0d, .tmp1b, ._, ._ }, |
| 101720 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 101721 | .{ ._, ._, .movzx, .dst0d, .memd(.tmp1b, 1), ._, ._ }, |
| 101722 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 101723 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 101724 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .dst0b, ._, ._ }, |
| 101725 | .{ ._, .fi_p, .st, .tmp2w, ._, ._, ._ }, |
| 101726 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 101727 | .{ ._, ._, .movzx, .dst0d, .tmp2b, ._, ._ }, |
| 101733 | 101728 | } }, |
| 101734 | 101729 | }, .{ |
| 101735 | 101730 | .required_features = .{ .x87, null, null, null }, |
| ... | ... | @@ -101740,8 +101735,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101740 | 101735 | }, |
| 101741 | 101736 | .extra_temps = .{ |
| 101742 | 101737 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 101743 | | .unused, |
| 101744 | | .unused, |
| 101738 | .{ .type = .u16, .kind = .mem }, |
| 101739 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 101745 | 101740 | .unused, |
| 101746 | 101741 | .unused, |
| 101747 | 101742 | .unused, |
| ... | ... | @@ -101754,7 +101749,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101754 | 101749 | .dst_temps = .{ .mem, .unused }, |
| 101755 | 101750 | .each = .{ .once = &.{ |
| 101756 | 101751 | .{ ._, .f_, .ld, .src0q, ._, ._, ._ }, |
| 101757 | | .{ ._, .fi_p, .stt, .dst0w, ._, ._, ._ }, |
| 101752 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 101753 | .{ ._, ._, .movzx, .tmp2d, .memd(.tmp1b, 1), ._, ._ }, |
| 101754 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 101755 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 101756 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp2b, ._, ._ }, |
| 101757 | .{ ._, .fi_p, .st, .dst0w, ._, ._, ._ }, |
| 101758 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 101758 | 101759 | } }, |
| 101759 | 101760 | }, .{ |
| 101760 | 101761 | .required_features = .{ .x87, null, null, null }, |
| ... | ... | @@ -101765,8 +101766,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101765 | 101766 | }, |
| 101766 | 101767 | .extra_temps = .{ |
| 101767 | 101768 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 101768 | | .unused, |
| 101769 | | .unused, |
| 101769 | .{ .type = .u16, .kind = .mem }, |
| 101770 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 101770 | 101771 | .unused, |
| 101771 | 101772 | .unused, |
| 101772 | 101773 | .unused, |
| ... | ... | @@ -101779,7 +101780,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101779 | 101780 | .dst_temps = .{ .mem, .unused }, |
| 101780 | 101781 | .each = .{ .once = &.{ |
| 101781 | 101782 | .{ ._, .f_, .ld, .src0q, ._, ._, ._ }, |
| 101782 | | .{ ._, .fi_p, .stt, .dst0d, ._, ._, ._ }, |
| 101783 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 101784 | .{ ._, ._, .movzx, .tmp2d, .memd(.tmp1b, 1), ._, ._ }, |
| 101785 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 101786 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 101787 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp2b, ._, ._ }, |
| 101788 | .{ ._, .fi_p, .st, .dst0d, ._, ._, ._ }, |
| 101789 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 101783 | 101790 | } }, |
| 101784 | 101791 | }, .{ |
| 101785 | 101792 | .required_features = .{ .@"64bit", .avx, null, null }, |
| ... | ... | @@ -101814,8 +101821,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101814 | 101821 | }, |
| 101815 | 101822 | .extra_temps = .{ |
| 101816 | 101823 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 101817 | | .unused, |
| 101818 | | .unused, |
| 101824 | .{ .type = .u16, .kind = .mem }, |
| 101825 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 101819 | 101826 | .unused, |
| 101820 | 101827 | .unused, |
| 101821 | 101828 | .unused, |
| ... | ... | @@ -101828,7 +101835,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101828 | 101835 | .dst_temps = .{ .mem, .unused }, |
| 101829 | 101836 | .each = .{ .once = &.{ |
| 101830 | 101837 | .{ ._, .f_, .ld, .src0q, ._, ._, ._ }, |
| 101831 | | .{ ._, .fi_p, .stt, .dst0q, ._, ._, ._ }, |
| 101838 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 101839 | .{ ._, ._, .movzx, .tmp2d, .memd(.tmp1b, 1), ._, ._ }, |
| 101840 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 101841 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 101842 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp2b, ._, ._ }, |
| 101843 | .{ ._, .fi_p, .st, .dst0q, ._, ._, ._ }, |
| 101844 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 101832 | 101845 | } }, |
| 101833 | 101846 | }, .{ |
| 101834 | 101847 | .required_features = .{ .@"64bit", .avx, null, null }, |
| ... | ... | @@ -101902,12 +101915,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101902 | 101915 | .{ .src = .{ .to_mem, .none, .none } }, |
| 101903 | 101916 | }, |
| 101904 | 101917 | .extra_temps = .{ |
| 101905 | | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 101906 | | .{ .type = .f32, .kind = .{ .@"0x1p63_mem" = .{} } }, |
| 101907 | | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 101908 | 101918 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 101919 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 101920 | .{ .type = .u16, .kind = .mem }, |
| 101921 | .{ .type = .f32, .kind = .{ .@"0x1p63_mem" = .{} } }, |
| 101909 | 101922 | .{ .type = .i64, .kind = .mem }, |
| 101910 | | .unused, |
| 101923 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 101911 | 101924 | .unused, |
| 101912 | 101925 | .unused, |
| 101913 | 101926 | .unused, |
| ... | ... | @@ -101918,16 +101931,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 101918 | 101931 | .clobbers = .{ .eflags = true }, |
| 101919 | 101932 | .each = .{ .once = &.{ |
| 101920 | 101933 | .{ ._, .f_, .ld, .src0q, ._, ._, ._ }, |
| 101921 | | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 101922 | | .{ ._, .f_, .ld, .tmp3t, ._, ._, ._ }, |
| 101923 | | .{ ._, .fi_p, .stt, .tmp4q, ._, ._, ._ }, |
| 101924 | | .{ ._, ._, .mov, .dst0q, .tmp4q, ._, ._ }, |
| 101925 | | .{ ._, .f_, .sub, .lea(.tmp0d), ._, ._, ._ }, |
| 101926 | | .{ ._, ._, .mov, .tmp0q, .dst0q, ._, ._ }, |
| 101927 | | .{ ._, .fi_p, .stt, .tmp4q, ._, ._, ._ }, |
| 101934 | .{ ._, .f_, .ld, .tmp0t, ._, ._, ._ }, |
| 101935 | .{ ._, .fn_cw, .st, .tmp2w, ._, ._, ._ }, |
| 101936 | .{ ._, ._, .movzx, .dst0d, .memd(.tmp2b, 1), ._, ._ }, |
| 101937 | .{ ._, ._, .@"or", .memd(.tmp2b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 101938 | .{ ._, .f_cw, .ld, .tmp2w, ._, ._, ._ }, |
| 101939 | .{ ._, ._, .mov, .memd(.tmp2b, 1), .dst0b, ._, ._ }, |
| 101940 | .{ ._, ._, .lea, .dst0q, .mem(.tmp3), ._, ._ }, |
| 101941 | .{ ._, .fi_p, .st, .tmp4q, ._, ._, ._ }, |
| 101942 | .{ ._, .f_, .sub, .lea(.dst0d), ._, ._, ._ }, |
| 101943 | .{ ._, ._, .mov, .tmp5q, .tmp4q, ._, ._ }, |
| 101944 | .{ ._, .fi_p, .st, .tmp4q, ._, ._, ._ }, |
| 101945 | .{ ._, .f_cw, .ld, .tmp2w, ._, ._, ._ }, |
| 101946 | .{ ._, ._, .mov, .dst0q, .tmp5q, ._, ._ }, |
| 101928 | 101947 | .{ ._, ._r, .sa, .dst0q, .ui(63), ._, ._ }, |
| 101929 | 101948 | .{ ._, ._, .@"and", .dst0q, .tmp4q, ._, ._ }, |
| 101930 | | .{ ._, ._, .@"or", .dst0q, .tmp0q, ._, ._ }, |
| 101949 | .{ ._, ._, .@"or", .dst0q, .tmp5q, ._, ._ }, |
| 101931 | 101950 | } }, |
| 101932 | 101951 | }, .{ |
| 101933 | 101952 | .required_features = .{ .@"64bit", .sse, null, null }, |
| ... | ... | @@ -102249,10 +102268,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 102249 | 102268 | }, |
| 102250 | 102269 | .extra_temps = .{ |
| 102251 | 102270 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 102271 | .{ .type = .u16, .kind = .mem }, |
| 102272 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 102252 | 102273 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 102253 | 102274 | .{ .type = .i16, .kind = .mem }, |
| 102254 | | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 102255 | | .unused, |
| 102256 | 102275 | .unused, |
| 102257 | 102276 | .unused, |
| 102258 | 102277 | .unused, |
| ... | ... | @@ -102261,14 +102280,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 102261 | 102280 | .unused, |
| 102262 | 102281 | }, |
| 102263 | 102282 | .dst_temps = .{ .mem, .unused }, |
| 102283 | .clobbers = .{ .eflags = true }, |
| 102264 | 102284 | .each = .{ .once = &.{ |
| 102265 | 102285 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 102286 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 102287 | .{ ._, ._, .movzx, .tmp2d, .memd(.tmp1b, 1), ._, ._ }, |
| 102288 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 102289 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 102290 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp2b, ._, ._ }, |
| 102266 | 102291 | .{ .@"0:", .f_, .ld, .memsia(.src0q, .@"8", .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 102267 | | .{ ._, .fi_p, .stt, .tmp2w, ._, ._, ._ }, |
| 102268 | | .{ ._, ._, .movzx, .tmp3d, .tmp2b, ._, ._ }, |
| 102269 | | .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp3b, ._, ._ }, |
| 102292 | .{ ._, .fi_p, .st, .tmp4w, ._, ._, ._ }, |
| 102293 | .{ ._, ._, .movzx, .tmp2d, .tmp4b, ._, ._ }, |
| 102294 | .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ }, |
| 102270 | 102295 | .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ }, |
| 102271 | 102296 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 102297 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 102272 | 102298 | } }, |
| 102273 | 102299 | }, .{ |
| 102274 | 102300 | .required_features = .{ .x87, null, null, null }, |
| ... | ... | @@ -102279,10 +102305,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 102279 | 102305 | }, |
| 102280 | 102306 | .extra_temps = .{ |
| 102281 | 102307 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 102308 | .{ .type = .u16, .kind = .mem }, |
| 102309 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 102282 | 102310 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 102283 | 102311 | .{ .type = .i16, .kind = .mem }, |
| 102284 | | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 102285 | | .unused, |
| 102286 | 102312 | .unused, |
| 102287 | 102313 | .unused, |
| 102288 | 102314 | .unused, |
| ... | ... | @@ -102291,14 +102317,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 102291 | 102317 | .unused, |
| 102292 | 102318 | }, |
| 102293 | 102319 | .dst_temps = .{ .mem, .unused }, |
| 102320 | .clobbers = .{ .eflags = true }, |
| 102294 | 102321 | .each = .{ .once = &.{ |
| 102295 | 102322 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 102323 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 102324 | .{ ._, ._, .movzx, .tmp2d, .memd(.tmp1b, 1), ._, ._ }, |
| 102325 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 102326 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 102327 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp2b, ._, ._ }, |
| 102296 | 102328 | .{ .@"0:", .f_, .ld, .memsia(.src0q, .@"8", .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 102297 | | .{ ._, .fi_p, .stt, .tmp2w, ._, ._, ._ }, |
| 102298 | | .{ ._, ._, .movzx, .tmp3d, .tmp2b, ._, ._ }, |
| 102299 | | .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp3b, ._, ._ }, |
| 102329 | .{ ._, .fi_p, .st, .tmp4w, ._, ._, ._ }, |
| 102330 | .{ ._, ._, .movzx, .tmp2d, .tmp4b, ._, ._ }, |
| 102331 | .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ }, |
| 102300 | 102332 | .{ ._, ._c, .in, .tmp0p, ._, ._, ._ }, |
| 102301 | 102333 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| 102334 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 102302 | 102335 | } }, |
| 102303 | 102336 | }, .{ |
| 102304 | 102337 | .required_features = .{ .avx, .slow_incdec, null, null }, |
| ... | ... | @@ -102724,6 +102757,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 102724 | 102757 | }, |
| 102725 | 102758 | .extra_temps = .{ |
| 102726 | 102759 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 102760 | .{ .type = .u16, .kind = .mem }, |
| 102727 | 102761 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 102728 | 102762 | .unused, |
| 102729 | 102763 | .unused, |
| ... | ... | @@ -102733,15 +102767,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 102733 | 102767 | .unused, |
| 102734 | 102768 | .unused, |
| 102735 | 102769 | .unused, |
| 102736 | | .unused, |
| 102737 | 102770 | }, |
| 102738 | 102771 | .dst_temps = .{ .mem, .unused }, |
| 102772 | .clobbers = .{ .eflags = true }, |
| 102739 | 102773 | .each = .{ .once = &.{ |
| 102774 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 102775 | .{ ._, ._, .movzx, .tmp0d, .memd(.tmp1b, 1), ._, ._ }, |
| 102776 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 102777 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 102778 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp0b, ._, ._ }, |
| 102740 | 102779 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 102741 | 102780 | .{ .@"0:", .f_, .ld, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 102742 | | .{ ._, .fi_p, .stt, .memia(.dst0w, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 102781 | .{ ._, .fi_p, .st, .memia(.dst0w, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 102743 | 102782 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 102744 | 102783 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 102784 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 102745 | 102785 | } }, |
| 102746 | 102786 | }, .{ |
| 102747 | 102787 | .required_features = .{ .x87, null, null, null }, |
| ... | ... | @@ -102752,10 +102792,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 102752 | 102792 | }, |
| 102753 | 102793 | .extra_temps = .{ |
| 102754 | 102794 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 102795 | .{ .type = .u16, .kind = .mem }, |
| 102796 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 102755 | 102797 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 102756 | 102798 | .{ .type = .i32, .kind = .mem }, |
| 102757 | | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 102758 | | .unused, |
| 102759 | 102799 | .unused, |
| 102760 | 102800 | .unused, |
| 102761 | 102801 | .unused, |
| ... | ... | @@ -102764,14 +102804,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 102764 | 102804 | .unused, |
| 102765 | 102805 | }, |
| 102766 | 102806 | .dst_temps = .{ .mem, .unused }, |
| 102807 | .clobbers = .{ .eflags = true }, |
| 102767 | 102808 | .each = .{ .once = &.{ |
| 102768 | 102809 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 102810 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 102811 | .{ ._, ._, .movzx, .tmp2d, .memd(.tmp1b, 1), ._, ._ }, |
| 102812 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 102813 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 102814 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp2b, ._, ._ }, |
| 102769 | 102815 | .{ .@"0:", .f_, .ld, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 102770 | | .{ ._, .fi_p, .stt, .tmp2d, ._, ._, ._ }, |
| 102771 | | .{ ._, ._, .mov, .tmp3d, .tmp2d, ._, ._ }, |
| 102772 | | .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp3w, ._, ._ }, |
| 102816 | .{ ._, .fi_p, .st, .tmp4d, ._, ._, ._ }, |
| 102817 | .{ ._, ._, .mov, .tmp2d, .tmp4d, ._, ._ }, |
| 102818 | .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ }, |
| 102773 | 102819 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 102774 | 102820 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 102821 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 102775 | 102822 | } }, |
| 102776 | 102823 | }, .{ |
| 102777 | 102824 | .required_features = .{ .avx, null, null, null }, |
| ... | ... | @@ -102970,6 +103017,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 102970 | 103017 | }, |
| 102971 | 103018 | .extra_temps = .{ |
| 102972 | 103019 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 103020 | .{ .type = .u16, .kind = .mem }, |
| 102973 | 103021 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 102974 | 103022 | .unused, |
| 102975 | 103023 | .unused, |
| ... | ... | @@ -102979,15 +103027,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 102979 | 103027 | .unused, |
| 102980 | 103028 | .unused, |
| 102981 | 103029 | .unused, |
| 102982 | | .unused, |
| 102983 | 103030 | }, |
| 102984 | 103031 | .dst_temps = .{ .mem, .unused }, |
| 103032 | .clobbers = .{ .eflags = true }, |
| 102985 | 103033 | .each = .{ .once = &.{ |
| 103034 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 103035 | .{ ._, ._, .movzx, .tmp0d, .memd(.tmp1b, 1), ._, ._ }, |
| 103036 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 103037 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 103038 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp0b, ._, ._ }, |
| 102986 | 103039 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 102987 | 103040 | .{ .@"0:", .f_, .ld, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 102988 | | .{ ._, .fi_p, .stt, .memia(.dst0d, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 103041 | .{ ._, .fi_p, .st, .memia(.dst0d, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 102989 | 103042 | .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ }, |
| 102990 | 103043 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 103044 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 102991 | 103045 | } }, |
| 102992 | 103046 | }, .{ |
| 102993 | 103047 | .required_features = .{ .x87, null, null, null }, |
| ... | ... | @@ -102998,10 +103052,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 102998 | 103052 | }, |
| 102999 | 103053 | .extra_temps = .{ |
| 103000 | 103054 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 103055 | .{ .type = .u16, .kind = .mem }, |
| 103056 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 103001 | 103057 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 103002 | 103058 | .{ .type = .i64, .kind = .mem }, |
| 103003 | | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 103004 | | .unused, |
| 103005 | 103059 | .unused, |
| 103006 | 103060 | .unused, |
| 103007 | 103061 | .unused, |
| ... | ... | @@ -103010,14 +103064,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 103010 | 103064 | .unused, |
| 103011 | 103065 | }, |
| 103012 | 103066 | .dst_temps = .{ .mem, .unused }, |
| 103067 | .clobbers = .{ .eflags = true }, |
| 103013 | 103068 | .each = .{ .once = &.{ |
| 103014 | 103069 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 103070 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 103071 | .{ ._, ._, .movzx, .tmp2d, .memd(.tmp1b, 1), ._, ._ }, |
| 103072 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 103073 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 103074 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp2b, ._, ._ }, |
| 103015 | 103075 | .{ .@"0:", .f_, .ld, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 103016 | | .{ ._, .fi_p, .stt, .tmp2q, ._, ._, ._ }, |
| 103017 | | .{ ._, ._, .mov, .tmp3d, .tmp2d, ._, ._ }, |
| 103018 | | .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp3d, ._, ._ }, |
| 103076 | .{ ._, .fi_p, .st, .tmp4q, ._, ._, ._ }, |
| 103077 | .{ ._, ._, .mov, .tmp2d, .tmp4d, ._, ._ }, |
| 103078 | .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ }, |
| 103019 | 103079 | .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ }, |
| 103020 | 103080 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 103081 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 103021 | 103082 | } }, |
| 103022 | 103083 | }, .{ |
| 103023 | 103084 | .required_features = .{ .avx, null, null, null }, |
| ... | ... | @@ -103274,6 +103335,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 103274 | 103335 | }, |
| 103275 | 103336 | .extra_temps = .{ |
| 103276 | 103337 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 103338 | .{ .type = .u16, .kind = .mem }, |
| 103277 | 103339 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 103278 | 103340 | .unused, |
| 103279 | 103341 | .unused, |
| ... | ... | @@ -103283,15 +103345,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 103283 | 103345 | .unused, |
| 103284 | 103346 | .unused, |
| 103285 | 103347 | .unused, |
| 103286 | | .unused, |
| 103287 | 103348 | }, |
| 103288 | 103349 | .dst_temps = .{ .mem, .unused }, |
| 103350 | .clobbers = .{ .eflags = true }, |
| 103289 | 103351 | .each = .{ .once = &.{ |
| 103290 | | .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ }, |
| 103352 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 103353 | .{ ._, ._, .movzx, .tmp0d, .memd(.tmp1b, 1), ._, ._ }, |
| 103354 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 103355 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 103356 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp0b, ._, ._ }, |
| 103357 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 103291 | 103358 | .{ .@"0:", .f_, .ld, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 103292 | | .{ ._, .fi_p, .stt, .memia(.dst0q, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 103359 | .{ ._, .fi_p, .st, .memia(.dst0q, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 103293 | 103360 | .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ }, |
| 103294 | 103361 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 103362 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 103295 | 103363 | } }, |
| 103296 | 103364 | }, .{ |
| 103297 | 103365 | .required_features = .{ .avx, null, null, null }, |
| ... | ... | @@ -103882,7 +103950,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 103882 | 103950 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 103883 | 103951 | } }, |
| 103884 | 103952 | }, .{ |
| 103885 | | .required_features = .{ .x87, null, null, null }, |
| 103953 | .required_features = .{ .sse3, .x87, null, null }, |
| 103886 | 103954 | .src_constraints = .{ .{ .float = .tbyte }, .any, .any }, |
| 103887 | 103955 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 103888 | 103956 | .patterns = &.{ |
| ... | ... | @@ -103890,7 +103958,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 103890 | 103958 | .{ .src = .{ .to_x87, .none, .none } }, |
| 103891 | 103959 | }, |
| 103892 | 103960 | .extra_temps = .{ |
| 103893 | | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 103961 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 103894 | 103962 | .{ .type = .i16, .kind = .mem }, |
| 103895 | 103963 | .unused, |
| 103896 | 103964 | .unused, |
| ... | ... | @@ -103911,13 +103979,46 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 103911 | 103979 | }, .{ |
| 103912 | 103980 | .required_features = .{ .x87, null, null, null }, |
| 103913 | 103981 | .src_constraints = .{ .{ .float = .tbyte }, .any, .any }, |
| 103982 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 103983 | .patterns = &.{ |
| 103984 | .{ .src = .{ .mem, .none, .none } }, |
| 103985 | .{ .src = .{ .to_x87, .none, .none } }, |
| 103986 | }, |
| 103987 | .extra_temps = .{ |
| 103988 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 103989 | .{ .type = .u16, .kind = .mem }, |
| 103990 | .{ .type = .i16, .kind = .mem }, |
| 103991 | .unused, |
| 103992 | .unused, |
| 103993 | .unused, |
| 103994 | .unused, |
| 103995 | .unused, |
| 103996 | .unused, |
| 103997 | .unused, |
| 103998 | .unused, |
| 103999 | }, |
| 104000 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 104001 | .each = .{ .once = &.{ |
| 104002 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| 104003 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 104004 | .{ ._, ._, .movzx, .dst0d, .memd(.tmp1b, 1), ._, ._ }, |
| 104005 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104006 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104007 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .dst0b, ._, ._ }, |
| 104008 | .{ ._, .fi_p, .st, .tmp2w, ._, ._, ._ }, |
| 104009 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104010 | .{ ._, ._, .movsx, .dst0d, .tmp2b, ._, ._ }, |
| 104011 | } }, |
| 104012 | }, .{ |
| 104013 | .required_features = .{ .sse3, .x87, null, null }, |
| 104014 | .src_constraints = .{ .{ .float = .tbyte }, .any, .any }, |
| 103914 | 104015 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 103915 | 104016 | .patterns = &.{ |
| 103916 | 104017 | .{ .src = .{ .mem, .none, .none } }, |
| 103917 | 104018 | .{ .src = .{ .to_x87, .none, .none } }, |
| 103918 | 104019 | }, |
| 103919 | 104020 | .extra_temps = .{ |
| 103920 | | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 104021 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 103921 | 104022 | .{ .type = .i16, .kind = .mem }, |
| 103922 | 104023 | .unused, |
| 103923 | 104024 | .unused, |
| ... | ... | @@ -103936,7 +104037,40 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 103936 | 104037 | .{ ._, ._, .movzx, .dst0d, .tmp1b, ._, ._ }, |
| 103937 | 104038 | } }, |
| 103938 | 104039 | }, .{ |
| 103939 | | .required_features = .{ .x87, .slow_incdec, null, null }, |
| 104040 | .required_features = .{ .x87, null, null, null }, |
| 104041 | .src_constraints = .{ .{ .float = .tbyte }, .any, .any }, |
| 104042 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 104043 | .patterns = &.{ |
| 104044 | .{ .src = .{ .mem, .none, .none } }, |
| 104045 | .{ .src = .{ .to_x87, .none, .none } }, |
| 104046 | }, |
| 104047 | .extra_temps = .{ |
| 104048 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104049 | .{ .type = .u16, .kind = .mem }, |
| 104050 | .{ .type = .i16, .kind = .mem }, |
| 104051 | .unused, |
| 104052 | .unused, |
| 104053 | .unused, |
| 104054 | .unused, |
| 104055 | .unused, |
| 104056 | .unused, |
| 104057 | .unused, |
| 104058 | .unused, |
| 104059 | }, |
| 104060 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 104061 | .each = .{ .once = &.{ |
| 104062 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| 104063 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 104064 | .{ ._, ._, .movzx, .dst0d, .memd(.tmp1b, 1), ._, ._ }, |
| 104065 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104066 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104067 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .dst0b, ._, ._ }, |
| 104068 | .{ ._, .fi_p, .st, .tmp2w, ._, ._, ._ }, |
| 104069 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104070 | .{ ._, ._, .movzx, .dst0d, .tmp2b, ._, ._ }, |
| 104071 | } }, |
| 104072 | }, .{ |
| 104073 | .required_features = .{ .sse3, .x87, .slow_incdec, null }, |
| 103940 | 104074 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 103941 | 104075 | .dst_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any }, |
| 103942 | 104076 | .patterns = &.{ |
| ... | ... | @@ -103947,7 +104081,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 103947 | 104081 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 103948 | 104082 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 103949 | 104083 | .{ .type = .i16, .kind = .mem }, |
| 103950 | | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 104084 | .{ .type = .i8, .kind = .{ .rc = .general_purpose } }, |
| 103951 | 104085 | .unused, |
| 103952 | 104086 | .unused, |
| 103953 | 104087 | .unused, |
| ... | ... | @@ -103969,7 +104103,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 103969 | 104103 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 103970 | 104104 | } }, |
| 103971 | 104105 | }, .{ |
| 103972 | | .required_features = .{ .x87, null, null, null }, |
| 104106 | .required_features = .{ .sse3, .x87, null, null }, |
| 103973 | 104107 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 103974 | 104108 | .dst_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any }, |
| 103975 | 104109 | .patterns = &.{ |
| ... | ... | @@ -103980,7 +104114,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 103980 | 104114 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 103981 | 104115 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 103982 | 104116 | .{ .type = .i16, .kind = .mem }, |
| 103983 | | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 104117 | .{ .type = .i8, .kind = .{ .rc = .general_purpose } }, |
| 103984 | 104118 | .unused, |
| 103985 | 104119 | .unused, |
| 103986 | 104120 | .unused, |
| ... | ... | @@ -104004,6 +104138,84 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 104004 | 104138 | }, .{ |
| 104005 | 104139 | .required_features = .{ .x87, .slow_incdec, null, null }, |
| 104006 | 104140 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104141 | .dst_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any }, |
| 104142 | .patterns = &.{ |
| 104143 | .{ .src = .{ .to_mem, .none, .none } }, |
| 104144 | }, |
| 104145 | .extra_temps = .{ |
| 104146 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 104147 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 104148 | .{ .type = .u16, .kind = .mem }, |
| 104149 | .{ .type = .i8, .kind = .{ .rc = .general_purpose } }, |
| 104150 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104151 | .{ .type = .i16, .kind = .mem }, |
| 104152 | .unused, |
| 104153 | .unused, |
| 104154 | .unused, |
| 104155 | .unused, |
| 104156 | .unused, |
| 104157 | }, |
| 104158 | .dst_temps = .{ .mem, .unused }, |
| 104159 | .clobbers = .{ .eflags = true }, |
| 104160 | .each = .{ .once = &.{ |
| 104161 | .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ }, |
| 104162 | .{ ._, ._, .mov, .tmp1p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 104163 | .{ ._, .fn_cw, .st, .tmp2w, ._, ._, ._ }, |
| 104164 | .{ ._, ._, .movzx, .tmp3d, .memd(.tmp2b, 1), ._, ._ }, |
| 104165 | .{ ._, ._, .@"or", .memd(.tmp2b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104166 | .{ ._, .f_cw, .ld, .tmp2w, ._, ._, ._ }, |
| 104167 | .{ ._, ._, .mov, .memd(.tmp2b, 1), .tmp3b, ._, ._ }, |
| 104168 | .{ .@"0:", .f_, .ld, .lea(.tmp0t), ._, ._, ._ }, |
| 104169 | .{ ._, .fi_p, .st, .tmp5w, ._, ._, ._ }, |
| 104170 | .{ ._, ._, .movsx, .tmp3d, .tmp5b, ._, ._ }, |
| 104171 | .{ ._, ._, .mov, .memia(.dst0b, .tmp1, .add_unaligned_size), .tmp3b, ._, ._ }, |
| 104172 | .{ ._, ._, .lea, .tmp0p, .lead(.tmp0, 16), ._, ._ }, |
| 104173 | .{ ._, ._, .add, .tmp1p, .si(1), ._, ._ }, |
| 104174 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 104175 | .{ ._, .f_cw, .ld, .tmp2w, ._, ._, ._ }, |
| 104176 | } }, |
| 104177 | }, .{ |
| 104178 | .required_features = .{ .x87, null, null, null }, |
| 104179 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104180 | .dst_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any }, |
| 104181 | .patterns = &.{ |
| 104182 | .{ .src = .{ .to_mem, .none, .none } }, |
| 104183 | }, |
| 104184 | .extra_temps = .{ |
| 104185 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 104186 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 104187 | .{ .type = .u16, .kind = .mem }, |
| 104188 | .{ .type = .i8, .kind = .{ .rc = .general_purpose } }, |
| 104189 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104190 | .{ .type = .i16, .kind = .mem }, |
| 104191 | .unused, |
| 104192 | .unused, |
| 104193 | .unused, |
| 104194 | .unused, |
| 104195 | .unused, |
| 104196 | }, |
| 104197 | .dst_temps = .{ .mem, .unused }, |
| 104198 | .clobbers = .{ .eflags = true }, |
| 104199 | .each = .{ .once = &.{ |
| 104200 | .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ }, |
| 104201 | .{ ._, ._, .mov, .tmp1p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 104202 | .{ ._, .fn_cw, .st, .tmp2w, ._, ._, ._ }, |
| 104203 | .{ ._, ._, .movzx, .tmp3d, .memd(.tmp2b, 1), ._, ._ }, |
| 104204 | .{ ._, ._, .@"or", .memd(.tmp2b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104205 | .{ ._, .f_cw, .ld, .tmp2w, ._, ._, ._ }, |
| 104206 | .{ ._, ._, .mov, .memd(.tmp2b, 1), .tmp3b, ._, ._ }, |
| 104207 | .{ .@"0:", .f_, .ld, .lea(.tmp0t), ._, ._, ._ }, |
| 104208 | .{ ._, .fi_p, .st, .tmp5w, ._, ._, ._ }, |
| 104209 | .{ ._, ._, .movsx, .tmp3d, .tmp5b, ._, ._ }, |
| 104210 | .{ ._, ._, .mov, .memia(.dst0b, .tmp1, .add_unaligned_size), .tmp3b, ._, ._ }, |
| 104211 | .{ ._, ._, .lea, .tmp0p, .lead(.tmp0, 16), ._, ._ }, |
| 104212 | .{ ._, ._c, .in, .tmp1p, ._, ._, ._ }, |
| 104213 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| 104214 | .{ ._, .f_cw, .ld, .tmp2w, ._, ._, ._ }, |
| 104215 | } }, |
| 104216 | }, .{ |
| 104217 | .required_features = .{ .sse3, .x87, .slow_incdec, null }, |
| 104218 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104007 | 104219 | .dst_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any }, |
| 104008 | 104220 | .patterns = &.{ |
| 104009 | 104221 | .{ .src = .{ .to_mem, .none, .none } }, |
| ... | ... | @@ -104035,7 +104247,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 104035 | 104247 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 104036 | 104248 | } }, |
| 104037 | 104249 | }, .{ |
| 104038 | | .required_features = .{ .x87, null, null, null }, |
| 104250 | .required_features = .{ .sse3, .x87, null, null }, |
| 104039 | 104251 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104040 | 104252 | .dst_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any }, |
| 104041 | 104253 | .patterns = &.{ |
| ... | ... | @@ -104067,8 +104279,86 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 104067 | 104279 | .{ ._, ._c, .in, .tmp1p, ._, ._, ._ }, |
| 104068 | 104280 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| 104069 | 104281 | } }, |
| 104282 | }, .{ |
| 104283 | .required_features = .{ .x87, .slow_incdec, null, null }, |
| 104284 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104285 | .dst_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any }, |
| 104286 | .patterns = &.{ |
| 104287 | .{ .src = .{ .to_mem, .none, .none } }, |
| 104288 | }, |
| 104289 | .extra_temps = .{ |
| 104290 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 104291 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 104292 | .{ .type = .u16, .kind = .mem }, |
| 104293 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 104294 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104295 | .{ .type = .i16, .kind = .mem }, |
| 104296 | .unused, |
| 104297 | .unused, |
| 104298 | .unused, |
| 104299 | .unused, |
| 104300 | .unused, |
| 104301 | }, |
| 104302 | .dst_temps = .{ .mem, .unused }, |
| 104303 | .clobbers = .{ .eflags = true }, |
| 104304 | .each = .{ .once = &.{ |
| 104305 | .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ }, |
| 104306 | .{ ._, ._, .mov, .tmp1p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 104307 | .{ ._, .fn_cw, .st, .tmp2w, ._, ._, ._ }, |
| 104308 | .{ ._, ._, .movzx, .tmp3d, .memd(.tmp2b, 1), ._, ._ }, |
| 104309 | .{ ._, ._, .@"or", .memd(.tmp2b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104310 | .{ ._, .f_cw, .ld, .tmp2w, ._, ._, ._ }, |
| 104311 | .{ ._, ._, .mov, .memd(.tmp2b, 1), .tmp3b, ._, ._ }, |
| 104312 | .{ .@"0:", .f_, .ld, .lea(.tmp0t), ._, ._, ._ }, |
| 104313 | .{ ._, .fi_p, .st, .tmp5w, ._, ._, ._ }, |
| 104314 | .{ ._, ._, .movzx, .tmp3d, .tmp5b, ._, ._ }, |
| 104315 | .{ ._, ._, .mov, .memia(.dst0b, .tmp1, .add_unaligned_size), .tmp3b, ._, ._ }, |
| 104316 | .{ ._, ._, .lea, .tmp0p, .lead(.tmp0, 16), ._, ._ }, |
| 104317 | .{ ._, ._, .add, .tmp1p, .si(1), ._, ._ }, |
| 104318 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 104319 | .{ ._, .f_cw, .ld, .tmp2w, ._, ._, ._ }, |
| 104320 | } }, |
| 104070 | 104321 | }, .{ |
| 104071 | 104322 | .required_features = .{ .x87, null, null, null }, |
| 104323 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104324 | .dst_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any }, |
| 104325 | .patterns = &.{ |
| 104326 | .{ .src = .{ .to_mem, .none, .none } }, |
| 104327 | }, |
| 104328 | .extra_temps = .{ |
| 104329 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 104330 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 104331 | .{ .type = .u16, .kind = .mem }, |
| 104332 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 104333 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104334 | .{ .type = .i16, .kind = .mem }, |
| 104335 | .unused, |
| 104336 | .unused, |
| 104337 | .unused, |
| 104338 | .unused, |
| 104339 | .unused, |
| 104340 | }, |
| 104341 | .dst_temps = .{ .mem, .unused }, |
| 104342 | .clobbers = .{ .eflags = true }, |
| 104343 | .each = .{ .once = &.{ |
| 104344 | .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ }, |
| 104345 | .{ ._, ._, .mov, .tmp1p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 104346 | .{ ._, .fn_cw, .st, .tmp2w, ._, ._, ._ }, |
| 104347 | .{ ._, ._, .movzx, .tmp3d, .memd(.tmp2b, 1), ._, ._ }, |
| 104348 | .{ ._, ._, .@"or", .memd(.tmp2b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104349 | .{ ._, .f_cw, .ld, .tmp2w, ._, ._, ._ }, |
| 104350 | .{ ._, ._, .mov, .memd(.tmp2b, 1), .tmp3b, ._, ._ }, |
| 104351 | .{ .@"0:", .f_, .ld, .lea(.tmp0t), ._, ._, ._ }, |
| 104352 | .{ ._, .fi_p, .st, .tmp5w, ._, ._, ._ }, |
| 104353 | .{ ._, ._, .movzx, .tmp3d, .tmp5b, ._, ._ }, |
| 104354 | .{ ._, ._, .mov, .memia(.dst0b, .tmp1, .add_unaligned_size), .tmp3b, ._, ._ }, |
| 104355 | .{ ._, ._, .lea, .tmp0p, .lead(.tmp0, 16), ._, ._ }, |
| 104356 | .{ ._, ._c, .in, .tmp1p, ._, ._, ._ }, |
| 104357 | .{ ._, ._nz, .j, .@"0b", ._, ._, ._ }, |
| 104358 | .{ ._, .f_cw, .ld, .tmp2w, ._, ._, ._ }, |
| 104359 | } }, |
| 104360 | }, .{ |
| 104361 | .required_features = .{ .sse3, .x87, null, null }, |
| 104072 | 104362 | .src_constraints = .{ .{ .float = .tbyte }, .any, .any }, |
| 104073 | 104363 | .dst_constraints = .{ .{ .signed_or_exclusive_int = .word }, .any }, |
| 104074 | 104364 | .patterns = &.{ |
| ... | ... | @@ -104095,6 +104385,38 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 104095 | 104385 | } }, |
| 104096 | 104386 | }, .{ |
| 104097 | 104387 | .required_features = .{ .x87, null, null, null }, |
| 104388 | .src_constraints = .{ .{ .float = .tbyte }, .any, .any }, |
| 104389 | .dst_constraints = .{ .{ .signed_or_exclusive_int = .word }, .any }, |
| 104390 | .patterns = &.{ |
| 104391 | .{ .src = .{ .mem, .none, .none } }, |
| 104392 | .{ .src = .{ .to_x87, .none, .none } }, |
| 104393 | }, |
| 104394 | .extra_temps = .{ |
| 104395 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104396 | .{ .type = .u16, .kind = .mem }, |
| 104397 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 104398 | .unused, |
| 104399 | .unused, |
| 104400 | .unused, |
| 104401 | .unused, |
| 104402 | .unused, |
| 104403 | .unused, |
| 104404 | .unused, |
| 104405 | .unused, |
| 104406 | }, |
| 104407 | .dst_temps = .{ .mem, .unused }, |
| 104408 | .each = .{ .once = &.{ |
| 104409 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| 104410 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 104411 | .{ ._, ._, .movzx, .tmp2d, .memd(.tmp1b, 1), ._, ._ }, |
| 104412 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104413 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104414 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp2b, ._, ._ }, |
| 104415 | .{ ._, .fi_p, .st, .dst0w, ._, ._, ._ }, |
| 104416 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104417 | } }, |
| 104418 | }, .{ |
| 104419 | .required_features = .{ .sse3, .x87, null, null }, |
| 104098 | 104420 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104099 | 104421 | .dst_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any }, |
| 104100 | 104422 | .patterns = &.{ |
| ... | ... | @@ -104125,6 +104447,41 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 104125 | 104447 | }, .{ |
| 104126 | 104448 | .required_features = .{ .x87, null, null, null }, |
| 104127 | 104449 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104450 | .dst_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any }, |
| 104451 | .patterns = &.{ |
| 104452 | .{ .src = .{ .to_mem, .none, .none } }, |
| 104453 | }, |
| 104454 | .extra_temps = .{ |
| 104455 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 104456 | .{ .type = .u16, .kind = .mem }, |
| 104457 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104458 | .unused, |
| 104459 | .unused, |
| 104460 | .unused, |
| 104461 | .unused, |
| 104462 | .unused, |
| 104463 | .unused, |
| 104464 | .unused, |
| 104465 | .unused, |
| 104466 | }, |
| 104467 | .dst_temps = .{ .mem, .unused }, |
| 104468 | .clobbers = .{ .eflags = true }, |
| 104469 | .each = .{ .once = &.{ |
| 104470 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 104471 | .{ ._, ._, .movzx, .tmp0d, .memd(.tmp1b, 1), ._, ._ }, |
| 104472 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104473 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104474 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp0b, ._, ._ }, |
| 104475 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 104476 | .{ .@"0:", .f_, .ld, .memsia(.src0t, .@"8", .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 104477 | .{ ._, .fi_p, .st, .memia(.dst0w, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 104478 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 104479 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 104480 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104481 | } }, |
| 104482 | }, .{ |
| 104483 | .required_features = .{ .sse3, .x87, null, null }, |
| 104484 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104128 | 104485 | .dst_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any }, |
| 104129 | 104486 | .patterns = &.{ |
| 104130 | 104487 | .{ .src = .{ .to_mem, .none, .none } }, |
| ... | ... | @@ -104155,6 +104512,43 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 104155 | 104512 | } }, |
| 104156 | 104513 | }, .{ |
| 104157 | 104514 | .required_features = .{ .x87, null, null, null }, |
| 104515 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104516 | .dst_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any }, |
| 104517 | .patterns = &.{ |
| 104518 | .{ .src = .{ .to_mem, .none, .none } }, |
| 104519 | }, |
| 104520 | .extra_temps = .{ |
| 104521 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 104522 | .{ .type = .u16, .kind = .mem }, |
| 104523 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 104524 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104525 | .{ .type = .i32, .kind = .mem }, |
| 104526 | .unused, |
| 104527 | .unused, |
| 104528 | .unused, |
| 104529 | .unused, |
| 104530 | .unused, |
| 104531 | .unused, |
| 104532 | }, |
| 104533 | .dst_temps = .{ .mem, .unused }, |
| 104534 | .clobbers = .{ .eflags = true }, |
| 104535 | .each = .{ .once = &.{ |
| 104536 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 104537 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 104538 | .{ ._, ._, .movzx, .tmp2d, .memd(.tmp1b, 1), ._, ._ }, |
| 104539 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104540 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104541 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp2b, ._, ._ }, |
| 104542 | .{ .@"0:", .f_, .ld, .memsia(.src0t, .@"8", .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 104543 | .{ ._, .fi_p, .st, .tmp4d, ._, ._, ._ }, |
| 104544 | .{ ._, ._, .mov, .tmp2d, .tmp4d, ._, ._ }, |
| 104545 | .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ }, |
| 104546 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 104547 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 104548 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104549 | } }, |
| 104550 | }, .{ |
| 104551 | .required_features = .{ .sse3, .x87, null, null }, |
| 104158 | 104552 | .src_constraints = .{ .{ .float = .tbyte }, .any, .any }, |
| 104159 | 104553 | .dst_constraints = .{ .{ .signed_or_exclusive_int = .dword }, .any }, |
| 104160 | 104554 | .patterns = &.{ |
| ... | ... | @@ -104181,6 +104575,38 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 104181 | 104575 | } }, |
| 104182 | 104576 | }, .{ |
| 104183 | 104577 | .required_features = .{ .x87, null, null, null }, |
| 104578 | .src_constraints = .{ .{ .float = .tbyte }, .any, .any }, |
| 104579 | .dst_constraints = .{ .{ .signed_or_exclusive_int = .dword }, .any }, |
| 104580 | .patterns = &.{ |
| 104581 | .{ .src = .{ .mem, .none, .none } }, |
| 104582 | .{ .src = .{ .to_x87, .none, .none } }, |
| 104583 | }, |
| 104584 | .extra_temps = .{ |
| 104585 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104586 | .{ .type = .u16, .kind = .mem }, |
| 104587 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 104588 | .unused, |
| 104589 | .unused, |
| 104590 | .unused, |
| 104591 | .unused, |
| 104592 | .unused, |
| 104593 | .unused, |
| 104594 | .unused, |
| 104595 | .unused, |
| 104596 | }, |
| 104597 | .dst_temps = .{ .mem, .unused }, |
| 104598 | .each = .{ .once = &.{ |
| 104599 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| 104600 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 104601 | .{ ._, ._, .movzx, .tmp2d, .memd(.tmp1b, 1), ._, ._ }, |
| 104602 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104603 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104604 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp2b, ._, ._ }, |
| 104605 | .{ ._, .fi_p, .st, .dst0d, ._, ._, ._ }, |
| 104606 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104607 | } }, |
| 104608 | }, .{ |
| 104609 | .required_features = .{ .sse3, .x87, null, null }, |
| 104184 | 104610 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104185 | 104611 | .dst_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any }, |
| 104186 | 104612 | .patterns = &.{ |
| ... | ... | @@ -104211,6 +104637,41 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 104211 | 104637 | }, .{ |
| 104212 | 104638 | .required_features = .{ .x87, null, null, null }, |
| 104213 | 104639 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104640 | .dst_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any }, |
| 104641 | .patterns = &.{ |
| 104642 | .{ .src = .{ .to_mem, .none, .none } }, |
| 104643 | }, |
| 104644 | .extra_temps = .{ |
| 104645 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 104646 | .{ .type = .u16, .kind = .mem }, |
| 104647 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104648 | .unused, |
| 104649 | .unused, |
| 104650 | .unused, |
| 104651 | .unused, |
| 104652 | .unused, |
| 104653 | .unused, |
| 104654 | .unused, |
| 104655 | .unused, |
| 104656 | }, |
| 104657 | .dst_temps = .{ .mem, .unused }, |
| 104658 | .clobbers = .{ .eflags = true }, |
| 104659 | .each = .{ .once = &.{ |
| 104660 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 104661 | .{ ._, ._, .movzx, .tmp0d, .memd(.tmp1b, 1), ._, ._ }, |
| 104662 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104663 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104664 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp0b, ._, ._ }, |
| 104665 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 104666 | .{ .@"0:", .f_, .ld, .memsia(.src0t, .@"4", .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 104667 | .{ ._, .fi_p, .st, .memia(.dst0d, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 104668 | .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ }, |
| 104669 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 104670 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104671 | } }, |
| 104672 | }, .{ |
| 104673 | .required_features = .{ .sse3, .x87, null, null }, |
| 104674 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104214 | 104675 | .dst_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any }, |
| 104215 | 104676 | .patterns = &.{ |
| 104216 | 104677 | .{ .src = .{ .to_mem, .none, .none } }, |
| ... | ... | @@ -104241,6 +104702,43 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 104241 | 104702 | } }, |
| 104242 | 104703 | }, .{ |
| 104243 | 104704 | .required_features = .{ .x87, null, null, null }, |
| 104705 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104706 | .dst_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any }, |
| 104707 | .patterns = &.{ |
| 104708 | .{ .src = .{ .to_mem, .none, .none } }, |
| 104709 | }, |
| 104710 | .extra_temps = .{ |
| 104711 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 104712 | .{ .type = .u16, .kind = .mem }, |
| 104713 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 104714 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104715 | .{ .type = .i64, .kind = .mem }, |
| 104716 | .unused, |
| 104717 | .unused, |
| 104718 | .unused, |
| 104719 | .unused, |
| 104720 | .unused, |
| 104721 | .unused, |
| 104722 | }, |
| 104723 | .dst_temps = .{ .mem, .unused }, |
| 104724 | .clobbers = .{ .eflags = true }, |
| 104725 | .each = .{ .once = &.{ |
| 104726 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 104727 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 104728 | .{ ._, ._, .movzx, .tmp2d, .memd(.tmp1b, 1), ._, ._ }, |
| 104729 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104730 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104731 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp2b, ._, ._ }, |
| 104732 | .{ .@"0:", .f_, .ld, .memsia(.src0t, .@"4", .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 104733 | .{ ._, .fi_p, .st, .tmp4q, ._, ._, ._ }, |
| 104734 | .{ ._, ._, .mov, .tmp2d, .tmp4d, ._, ._ }, |
| 104735 | .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ }, |
| 104736 | .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ }, |
| 104737 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 104738 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104739 | } }, |
| 104740 | }, .{ |
| 104741 | .required_features = .{ .sse3, .x87, null, null }, |
| 104244 | 104742 | .src_constraints = .{ .{ .float = .tbyte }, .any, .any }, |
| 104245 | 104743 | .dst_constraints = .{ .{ .signed_or_exclusive_int = .qword }, .any }, |
| 104246 | 104744 | .patterns = &.{ |
| ... | ... | @@ -104266,7 +104764,39 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 104266 | 104764 | .{ ._, .fi_p, .stt, .dst0q, ._, ._, ._ }, |
| 104267 | 104765 | } }, |
| 104268 | 104766 | }, .{ |
| 104269 | | .required_features = .{ .@"64bit", .x87, null, null }, |
| 104767 | .required_features = .{ .x87, null, null, null }, |
| 104768 | .src_constraints = .{ .{ .float = .tbyte }, .any, .any }, |
| 104769 | .dst_constraints = .{ .{ .signed_or_exclusive_int = .qword }, .any }, |
| 104770 | .patterns = &.{ |
| 104771 | .{ .src = .{ .mem, .none, .none } }, |
| 104772 | .{ .src = .{ .to_x87, .none, .none } }, |
| 104773 | }, |
| 104774 | .extra_temps = .{ |
| 104775 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104776 | .{ .type = .u16, .kind = .mem }, |
| 104777 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 104778 | .unused, |
| 104779 | .unused, |
| 104780 | .unused, |
| 104781 | .unused, |
| 104782 | .unused, |
| 104783 | .unused, |
| 104784 | .unused, |
| 104785 | .unused, |
| 104786 | }, |
| 104787 | .dst_temps = .{ .mem, .unused }, |
| 104788 | .each = .{ .once = &.{ |
| 104789 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| 104790 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 104791 | .{ ._, ._, .movzx, .tmp2d, .memd(.tmp1b, 1), ._, ._ }, |
| 104792 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104793 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104794 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp2b, ._, ._ }, |
| 104795 | .{ ._, .fi_p, .st, .dst0q, ._, ._, ._ }, |
| 104796 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104797 | } }, |
| 104798 | }, .{ |
| 104799 | .required_features = .{ .@"64bit", .sse3, .x87, null }, |
| 104270 | 104800 | .src_constraints = .{ .{ .float = .tbyte }, .any, .any }, |
| 104271 | 104801 | .dst_constraints = .{ .{ .exact_unsigned_int = 64 }, .any }, |
| 104272 | 104802 | .patterns = &.{ |
| ... | ... | @@ -104302,7 +104832,49 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 104302 | 104832 | .{ ._, ._, .@"or", .dst0q, .tmp0q, ._, ._ }, |
| 104303 | 104833 | } }, |
| 104304 | 104834 | }, .{ |
| 104305 | | .required_features = .{ .x87, null, null, null }, |
| 104835 | .required_features = .{ .@"64bit", .x87, null, null }, |
| 104836 | .src_constraints = .{ .{ .float = .tbyte }, .any, .any }, |
| 104837 | .dst_constraints = .{ .{ .exact_unsigned_int = 64 }, .any }, |
| 104838 | .patterns = &.{ |
| 104839 | .{ .src = .{ .mem, .none, .none } }, |
| 104840 | .{ .src = .{ .to_x87, .none, .none } }, |
| 104841 | }, |
| 104842 | .extra_temps = .{ |
| 104843 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104844 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 104845 | .{ .type = .u16, .kind = .mem }, |
| 104846 | .{ .type = .f32, .kind = .{ .@"0x1p63_mem" = .{} } }, |
| 104847 | .{ .type = .i64, .kind = .mem }, |
| 104848 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 104849 | .unused, |
| 104850 | .unused, |
| 104851 | .unused, |
| 104852 | .unused, |
| 104853 | .unused, |
| 104854 | }, |
| 104855 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 104856 | .clobbers = .{ .eflags = true }, |
| 104857 | .each = .{ .once = &.{ |
| 104858 | .{ ._, .f_, .ld, .src0t, ._, ._, ._ }, |
| 104859 | .{ ._, .f_, .ld, .tmp0t, ._, ._, ._ }, |
| 104860 | .{ ._, .fn_cw, .st, .tmp2w, ._, ._, ._ }, |
| 104861 | .{ ._, ._, .movzx, .dst0d, .memd(.tmp2b, 1), ._, ._ }, |
| 104862 | .{ ._, ._, .@"or", .memd(.tmp2b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104863 | .{ ._, .f_cw, .ld, .tmp2w, ._, ._, ._ }, |
| 104864 | .{ ._, ._, .mov, .memd(.tmp2b, 1), .dst0b, ._, ._ }, |
| 104865 | .{ ._, ._, .lea, .dst0q, .mem(.tmp3), ._, ._ }, |
| 104866 | .{ ._, .fi_p, .st, .tmp4q, ._, ._, ._ }, |
| 104867 | .{ ._, .f_, .sub, .lea(.dst0d), ._, ._, ._ }, |
| 104868 | .{ ._, ._, .mov, .tmp5q, .tmp4q, ._, ._ }, |
| 104869 | .{ ._, .fi_p, .st, .tmp4q, ._, ._, ._ }, |
| 104870 | .{ ._, .f_cw, .ld, .tmp2w, ._, ._, ._ }, |
| 104871 | .{ ._, ._, .mov, .dst0q, .tmp5q, ._, ._ }, |
| 104872 | .{ ._, ._r, .sa, .dst0q, .ui(63), ._, ._ }, |
| 104873 | .{ ._, ._, .@"and", .dst0q, .tmp4q, ._, ._ }, |
| 104874 | .{ ._, ._, .@"or", .dst0q, .tmp5q, ._, ._ }, |
| 104875 | } }, |
| 104876 | }, .{ |
| 104877 | .required_features = .{ .sse3, .x87, null, null }, |
| 104306 | 104878 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104307 | 104879 | .dst_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 104308 | 104880 | .patterns = &.{ |
| ... | ... | @@ -104330,6 +104902,41 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 104330 | 104902 | .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ }, |
| 104331 | 104903 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 104332 | 104904 | } }, |
| 104905 | }, .{ |
| 104906 | .required_features = .{ .x87, null, null, null }, |
| 104907 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 104908 | .dst_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 104909 | .patterns = &.{ |
| 104910 | .{ .src = .{ .to_mem, .none, .none } }, |
| 104911 | }, |
| 104912 | .extra_temps = .{ |
| 104913 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 104914 | .{ .type = .u16, .kind = .mem }, |
| 104915 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 104916 | .unused, |
| 104917 | .unused, |
| 104918 | .unused, |
| 104919 | .unused, |
| 104920 | .unused, |
| 104921 | .unused, |
| 104922 | .unused, |
| 104923 | .unused, |
| 104924 | }, |
| 104925 | .dst_temps = .{ .mem, .unused }, |
| 104926 | .clobbers = .{ .eflags = true }, |
| 104927 | .each = .{ .once = &.{ |
| 104928 | .{ ._, .fn_cw, .st, .tmp1w, ._, ._, ._ }, |
| 104929 | .{ ._, ._, .movzx, .tmp0d, .memd(.tmp1b, 1), ._, ._ }, |
| 104930 | .{ ._, ._, .@"or", .memd(.tmp1b, 1), .ui(0b000_0_11_00), ._, ._ }, |
| 104931 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104932 | .{ ._, ._, .mov, .memd(.tmp1b, 1), .tmp0b, ._, ._ }, |
| 104933 | .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ }, |
| 104934 | .{ .@"0:", .f_, .ld, .memsia(.src0t, .@"2", .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 104935 | .{ ._, .fi_p, .st, .memia(.dst0q, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 104936 | .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ }, |
| 104937 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 104938 | .{ ._, .f_cw, .ld, .tmp1w, ._, ._, ._ }, |
| 104939 | } }, |
| 104333 | 104940 | }, .{ |
| 104334 | 104941 | .required_features = .{ .@"64bit", .avx, null, null }, |
| 104335 | 104942 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| ... | ... | @@ -116829,7 +117436,40914 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 116829 | 117436 | }; |
| 116830 | 117437 | try res[0].finish(inst, &.{ty_op.operand}, &ops, cg); |
| 116831 | 117438 | }, |
| 116832 | | |
| 117439 | .reduce => |air_tag| if (use_old) try cg.airReduce(inst) else { |
| 117440 | const nan = std.math.nan(f16); |
| 117441 | const reduce = air_datas[@intFromEnum(inst)].reduce; |
| 117442 | const res_ty = cg.typeOfIndex(inst); |
| 117443 | var ops = try cg.tempsFromOperands(inst, .{reduce.operand}); |
| 117444 | var res: [1]Temp = undefined; |
| 117445 | cg.select(&res, &.{res_ty}, &ops, switch (reduce.operation) { |
| 117446 | .And, .Or, .Xor => switch (@as(Mir.Inst.Tag, switch (reduce.operation) { |
| 117447 | else => unreachable, |
| 117448 | .And => .@"and", |
| 117449 | .Or => .@"or", |
| 117450 | .Xor => .xor, |
| 117451 | })) { |
| 117452 | else => unreachable, |
| 117453 | inline .@"and", .@"or", .xor => |mir_tag| comptime &switch (mir_tag) { |
| 117454 | else => unreachable, |
| 117455 | .@"and" => [_]Select.Case{ .{ |
| 117456 | .required_features = .{ .avx, null, null, null }, |
| 117457 | .dst_constraints = .{ .bool, .any }, |
| 117458 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117459 | .patterns = &.{ |
| 117460 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .xword, .is = .inverted } }, .none, .none } }, |
| 117461 | }, |
| 117462 | .dst_temps = .{ .{ .cc = .z }, .unused }, |
| 117463 | .clobbers = .{ .eflags = true }, |
| 117464 | .each = .{ .once = &.{ |
| 117465 | .{ ._, .vp_, .@"test", .src0x, .src0x, ._, ._ }, |
| 117466 | } }, |
| 117467 | }, .{ |
| 117468 | .required_features = .{ .sse4_1, null, null, null }, |
| 117469 | .dst_constraints = .{ .bool, .any }, |
| 117470 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117471 | .patterns = &.{ |
| 117472 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .xword, .is = .inverted } }, .none, .none } }, |
| 117473 | }, |
| 117474 | .dst_temps = .{ .{ .cc = .z }, .unused }, |
| 117475 | .clobbers = .{ .eflags = true }, |
| 117476 | .each = .{ .once = &.{ |
| 117477 | .{ ._, .p_, .@"test", .src0x, .src0x, ._, ._ }, |
| 117478 | } }, |
| 117479 | }, .{ |
| 117480 | .required_features = .{ .avx, null, null, null }, |
| 117481 | .dst_constraints = .{ .bool, .any }, |
| 117482 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117483 | .patterns = &.{ |
| 117484 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .xword } }, .none, .none } }, |
| 117485 | }, |
| 117486 | .extra_temps = .{ |
| 117487 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 117488 | .unused, |
| 117489 | .unused, |
| 117490 | .unused, |
| 117491 | .unused, |
| 117492 | .unused, |
| 117493 | .unused, |
| 117494 | .unused, |
| 117495 | .unused, |
| 117496 | .unused, |
| 117497 | .unused, |
| 117498 | }, |
| 117499 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .all = 1 } }, .unused }, |
| 117500 | .clobbers = .{ .eflags = true }, |
| 117501 | .each = .{ .once = &.{ |
| 117502 | .{ ._, .vp_b, .cmpeq, .tmp0x, .tmp0x, .tmp0x, ._ }, |
| 117503 | .{ ._, .vp_, .@"test", .src0x, .tmp0x, ._, ._ }, |
| 117504 | } }, |
| 117505 | }, .{ |
| 117506 | .required_features = .{ .sse4_1, null, null, null }, |
| 117507 | .dst_constraints = .{ .bool, .any }, |
| 117508 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117509 | .patterns = &.{ |
| 117510 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .xword } }, .none, .none } }, |
| 117511 | }, |
| 117512 | .extra_temps = .{ |
| 117513 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 117514 | .unused, |
| 117515 | .unused, |
| 117516 | .unused, |
| 117517 | .unused, |
| 117518 | .unused, |
| 117519 | .unused, |
| 117520 | .unused, |
| 117521 | .unused, |
| 117522 | .unused, |
| 117523 | .unused, |
| 117524 | }, |
| 117525 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .all = 1 } }, .unused }, |
| 117526 | .clobbers = .{ .eflags = true }, |
| 117527 | .each = .{ .once = &.{ |
| 117528 | .{ ._, .p_b, .cmpeq, .tmp0x, .tmp0x, ._, ._ }, |
| 117529 | .{ ._, .p_, .@"test", .src0x, .tmp0x, ._, ._ }, |
| 117530 | } }, |
| 117531 | }, .{ |
| 117532 | .required_features = .{ .avx, null, null, null }, |
| 117533 | .dst_constraints = .{ .bool, .any }, |
| 117534 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117535 | .patterns = &.{ |
| 117536 | .{ .src = .{ .{ .reg_mask = .{ .size = .xword } }, .none, .none } }, |
| 117537 | }, |
| 117538 | .extra_temps = .{ |
| 117539 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 117540 | .{ .type = .vector_16_u8, .kind = .{ .ptest_mask_mem = .src0 } }, |
| 117541 | .unused, |
| 117542 | .unused, |
| 117543 | .unused, |
| 117544 | .unused, |
| 117545 | .unused, |
| 117546 | .unused, |
| 117547 | .unused, |
| 117548 | .unused, |
| 117549 | .unused, |
| 117550 | }, |
| 117551 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .all = 1 } }, .unused }, |
| 117552 | .clobbers = .{ .eflags = true }, |
| 117553 | .each = .{ .once = &.{ |
| 117554 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 117555 | .{ ._, .vp_, .@"test", .src0x, .lea(.tmp0x), ._, ._ }, |
| 117556 | } }, |
| 117557 | }, .{ |
| 117558 | .required_features = .{ .sse4_1, null, null, null }, |
| 117559 | .dst_constraints = .{ .bool, .any }, |
| 117560 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117561 | .patterns = &.{ |
| 117562 | .{ .src = .{ .{ .reg_mask = .{ .size = .xword } }, .none, .none } }, |
| 117563 | }, |
| 117564 | .extra_temps = .{ |
| 117565 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 117566 | .{ .type = .vector_16_u8, .kind = .{ .ptest_mask_mem = .src0 } }, |
| 117567 | .unused, |
| 117568 | .unused, |
| 117569 | .unused, |
| 117570 | .unused, |
| 117571 | .unused, |
| 117572 | .unused, |
| 117573 | .unused, |
| 117574 | .unused, |
| 117575 | .unused, |
| 117576 | }, |
| 117577 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .all = 1 } }, .unused }, |
| 117578 | .clobbers = .{ .eflags = true }, |
| 117579 | .each = .{ .once = &.{ |
| 117580 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 117581 | .{ ._, .p_, .@"test", .src0x, .lea(.tmp0x), ._, ._ }, |
| 117582 | } }, |
| 117583 | }, .{ |
| 117584 | .required_features = .{ .avx2, null, null, null }, |
| 117585 | .dst_constraints = .{ .bool, .any }, |
| 117586 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117587 | .patterns = &.{ |
| 117588 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .yword, .is = .inverted } }, .none, .none } }, |
| 117589 | }, |
| 117590 | .dst_temps = .{ .{ .cc = .z }, .unused }, |
| 117591 | .clobbers = .{ .eflags = true }, |
| 117592 | .each = .{ .once = &.{ |
| 117593 | .{ ._, .vp_, .@"test", .src0y, .src0y, ._, ._ }, |
| 117594 | } }, |
| 117595 | }, .{ |
| 117596 | .required_features = .{ .avx, null, null, null }, |
| 117597 | .dst_constraints = .{ .bool, .any }, |
| 117598 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117599 | .patterns = &.{ |
| 117600 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .yword, .is = .inverted } }, .none, .none } }, |
| 117601 | }, |
| 117602 | .dst_temps = .{ .{ .cc = .z }, .unused }, |
| 117603 | .clobbers = .{ .eflags = true }, |
| 117604 | .each = .{ .once = &.{ |
| 117605 | .{ ._, .v_ps, .@"test", .src0y, .src0y, ._, ._ }, |
| 117606 | } }, |
| 117607 | }, .{ |
| 117608 | .required_features = .{ .avx2, null, null, null }, |
| 117609 | .dst_constraints = .{ .bool, .any }, |
| 117610 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117611 | .patterns = &.{ |
| 117612 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .yword } }, .none, .none } }, |
| 117613 | }, |
| 117614 | .extra_temps = .{ |
| 117615 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 117616 | .unused, |
| 117617 | .unused, |
| 117618 | .unused, |
| 117619 | .unused, |
| 117620 | .unused, |
| 117621 | .unused, |
| 117622 | .unused, |
| 117623 | .unused, |
| 117624 | .unused, |
| 117625 | .unused, |
| 117626 | }, |
| 117627 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .all = 1 } }, .unused }, |
| 117628 | .clobbers = .{ .eflags = true }, |
| 117629 | .each = .{ .once = &.{ |
| 117630 | .{ ._, .vp_b, .cmpeq, .tmp0y, .tmp0y, .tmp0y, ._ }, |
| 117631 | .{ ._, .vp_, .@"test", .src0y, .tmp0y, ._, ._ }, |
| 117632 | } }, |
| 117633 | }, .{ |
| 117634 | .required_features = .{ .avx, null, null, null }, |
| 117635 | .dst_constraints = .{ .bool, .any }, |
| 117636 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117637 | .patterns = &.{ |
| 117638 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .yword } }, .none, .none } }, |
| 117639 | }, |
| 117640 | .extra_temps = .{ |
| 117641 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 117642 | .unused, |
| 117643 | .unused, |
| 117644 | .unused, |
| 117645 | .unused, |
| 117646 | .unused, |
| 117647 | .unused, |
| 117648 | .unused, |
| 117649 | .unused, |
| 117650 | .unused, |
| 117651 | .unused, |
| 117652 | }, |
| 117653 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .all = 1 } }, .unused }, |
| 117654 | .clobbers = .{ .eflags = true }, |
| 117655 | .each = .{ .once = &.{ |
| 117656 | .{ ._, .v_ps, .cmp, .tmp0y, .tmp0y, .tmp0y, .vp(.true) }, |
| 117657 | .{ ._, .v_ps, .@"test", .src0y, .tmp0y, ._, ._ }, |
| 117658 | } }, |
| 117659 | }, .{ |
| 117660 | .required_features = .{ .avx, null, null, null }, |
| 117661 | .dst_constraints = .{ .bool, .any }, |
| 117662 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117663 | .patterns = &.{ |
| 117664 | .{ .src = .{ .{ .reg_mask = .{ .size = .yword } }, .none, .none } }, |
| 117665 | }, |
| 117666 | .extra_temps = .{ |
| 117667 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 117668 | .{ .type = .vector_32_u8, .kind = .{ .ptest_mask_mem = .src0 } }, |
| 117669 | .unused, |
| 117670 | .unused, |
| 117671 | .unused, |
| 117672 | .unused, |
| 117673 | .unused, |
| 117674 | .unused, |
| 117675 | .unused, |
| 117676 | .unused, |
| 117677 | .unused, |
| 117678 | }, |
| 117679 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .all = 1 } }, .unused }, |
| 117680 | .clobbers = .{ .eflags = true }, |
| 117681 | .each = .{ .once = &.{ |
| 117682 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 117683 | .{ ._, .vp_, .@"test", .src0y, .lea(.tmp0y), ._, ._ }, |
| 117684 | } }, |
| 117685 | }, .{ |
| 117686 | .dst_constraints = .{ .bool, .any }, |
| 117687 | .src_constraints = .{ .{ .exact_bool_vec = 8 }, .any, .any }, |
| 117688 | .patterns = &.{ |
| 117689 | .{ .src = .{ .mem, .none, .none } }, |
| 117690 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 117691 | }, |
| 117692 | .dst_temps = .{ .{ .cc = .e }, .unused }, |
| 117693 | .clobbers = .{ .eflags = true }, |
| 117694 | .each = .{ .once = &.{ |
| 117695 | .{ ._, ._, .cmp, .src0b, .si(-1), ._, ._ }, |
| 117696 | } }, |
| 117697 | }, .{ |
| 117698 | .dst_constraints = .{ .bool, .any }, |
| 117699 | .src_constraints = .{ .{ .bool_vec = .byte }, .any, .any }, |
| 117700 | .patterns = &.{ |
| 117701 | .{ .src = .{ .to_mut_gpr, .none, .none } }, |
| 117702 | }, |
| 117703 | .dst_temps = .{ .{ .cc = .z }, .unused }, |
| 117704 | .clobbers = .{ .eflags = true }, |
| 117705 | .each = .{ .once = &.{ |
| 117706 | .{ ._, ._, .not, .src0b, ._, ._, ._ }, |
| 117707 | .{ ._, ._, .@"test", .src0b, .ua(.src0, .add_umax), ._, ._ }, |
| 117708 | } }, |
| 117709 | }, .{ |
| 117710 | .dst_constraints = .{ .bool, .any }, |
| 117711 | .src_constraints = .{ .{ .exact_bool_vec = 16 }, .any, .any }, |
| 117712 | .patterns = &.{ |
| 117713 | .{ .src = .{ .mem, .none, .none } }, |
| 117714 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 117715 | }, |
| 117716 | .dst_temps = .{ .{ .cc = .e }, .unused }, |
| 117717 | .clobbers = .{ .eflags = true }, |
| 117718 | .each = .{ .once = &.{ |
| 117719 | .{ ._, ._, .cmp, .src0w, .si(-1), ._, ._ }, |
| 117720 | } }, |
| 117721 | }, .{ |
| 117722 | .dst_constraints = .{ .bool, .any }, |
| 117723 | .src_constraints = .{ .{ .bool_vec = .word }, .any, .any }, |
| 117724 | .patterns = &.{ |
| 117725 | .{ .src = .{ .to_mut_gpr, .none, .none } }, |
| 117726 | }, |
| 117727 | .dst_temps = .{ .{ .cc = .z }, .unused }, |
| 117728 | .clobbers = .{ .eflags = true }, |
| 117729 | .each = .{ .once = &.{ |
| 117730 | .{ ._, ._, .not, .src0d, ._, ._, ._ }, |
| 117731 | .{ ._, ._, .@"test", .src0d, .ua(.src0, .add_umax), ._, ._ }, |
| 117732 | } }, |
| 117733 | }, .{ |
| 117734 | .dst_constraints = .{ .bool, .any }, |
| 117735 | .src_constraints = .{ .{ .exact_bool_vec = 32 }, .any, .any }, |
| 117736 | .patterns = &.{ |
| 117737 | .{ .src = .{ .mem, .none, .none } }, |
| 117738 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 117739 | }, |
| 117740 | .dst_temps = .{ .{ .cc = .e }, .unused }, |
| 117741 | .clobbers = .{ .eflags = true }, |
| 117742 | .each = .{ .once = &.{ |
| 117743 | .{ ._, ._, .cmp, .src0d, .si(-1), ._, ._ }, |
| 117744 | } }, |
| 117745 | }, .{ |
| 117746 | .dst_constraints = .{ .bool, .any }, |
| 117747 | .src_constraints = .{ .{ .bool_vec = .dword }, .any, .any }, |
| 117748 | .patterns = &.{ |
| 117749 | .{ .src = .{ .to_mut_gpr, .none, .none } }, |
| 117750 | }, |
| 117751 | .dst_temps = .{ .{ .cc = .z }, .unused }, |
| 117752 | .clobbers = .{ .eflags = true }, |
| 117753 | .each = .{ .once = &.{ |
| 117754 | .{ ._, ._, .not, .src0d, ._, ._, ._ }, |
| 117755 | .{ ._, ._, .@"test", .src0d, .ua(.src0, .add_umax), ._, ._ }, |
| 117756 | } }, |
| 117757 | }, .{ |
| 117758 | .required_features = .{ .@"64bit", null, null, null }, |
| 117759 | .dst_constraints = .{ .bool, .any }, |
| 117760 | .src_constraints = .{ .{ .exact_bool_vec = 64 }, .any, .any }, |
| 117761 | .patterns = &.{ |
| 117762 | .{ .src = .{ .mem, .none, .none } }, |
| 117763 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 117764 | }, |
| 117765 | .dst_temps = .{ .{ .cc = .e }, .unused }, |
| 117766 | .clobbers = .{ .eflags = true }, |
| 117767 | .each = .{ .once = &.{ |
| 117768 | .{ ._, ._, .cmp, .src0q, .si(-1), ._, ._ }, |
| 117769 | } }, |
| 117770 | }, .{ |
| 117771 | .required_features = .{ .@"64bit", null, null, null }, |
| 117772 | .dst_constraints = .{ .bool, .any }, |
| 117773 | .src_constraints = .{ .{ .bool_vec = .qword }, .any, .any }, |
| 117774 | .patterns = &.{ |
| 117775 | .{ .src = .{ .to_mut_gpr, .none, .none } }, |
| 117776 | }, |
| 117777 | .extra_temps = .{ |
| 117778 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 117779 | .unused, |
| 117780 | .unused, |
| 117781 | .unused, |
| 117782 | .unused, |
| 117783 | .unused, |
| 117784 | .unused, |
| 117785 | .unused, |
| 117786 | .unused, |
| 117787 | .unused, |
| 117788 | .unused, |
| 117789 | }, |
| 117790 | .dst_temps = .{ .{ .cc = .z }, .unused }, |
| 117791 | .clobbers = .{ .eflags = true }, |
| 117792 | .each = .{ .once = &.{ |
| 117793 | .{ ._, ._, .not, .src0q, ._, ._, ._ }, |
| 117794 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, |
| 117795 | .{ ._, ._, .@"test", .src0q, .tmp0q, ._, ._ }, |
| 117796 | } }, |
| 117797 | }, .{ |
| 117798 | .required_features = .{ .@"64bit", null, null, null }, |
| 117799 | .dst_constraints = .{ .bool, .any }, |
| 117800 | .src_constraints = .{ .{ .exact_remainder_bool_vec = .{ .of = .qword, .is = 64 } }, .any, .any }, |
| 117801 | .patterns = &.{ |
| 117802 | .{ .src = .{ .to_mem, .none, .none } }, |
| 117803 | }, |
| 117804 | .extra_temps = .{ |
| 117805 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 117806 | .unused, |
| 117807 | .unused, |
| 117808 | .unused, |
| 117809 | .unused, |
| 117810 | .unused, |
| 117811 | .unused, |
| 117812 | .unused, |
| 117813 | .unused, |
| 117814 | .unused, |
| 117815 | .unused, |
| 117816 | }, |
| 117817 | .dst_temps = .{ .{ .cc = .nc }, .unused }, |
| 117818 | .clobbers = .{ .eflags = true }, |
| 117819 | .each = .{ .once = &.{ |
| 117820 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_bit_size_div_8), ._, ._ }, |
| 117821 | .{ .@"1:", ._, .cmp, .memi(.src0q, .tmp0), .si(-1), ._, ._ }, |
| 117822 | .{ ._, ._ne, .j, .@"0f", ._, ._, ._ }, |
| 117823 | .{ ._, ._, .add, .tmp0d, .si(-8), ._, ._ }, |
| 117824 | .{ ._, ._b, .j, .@"1b", ._, ._, ._ }, |
| 117825 | } }, |
| 117826 | }, .{ |
| 117827 | .required_features = .{ .@"64bit", null, null, null }, |
| 117828 | .dst_constraints = .{ .bool, .any }, |
| 117829 | .src_constraints = .{ .{ .remainder_bool_vec = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 117830 | .patterns = &.{ |
| 117831 | .{ .src = .{ .to_mem, .none, .none } }, |
| 117832 | }, |
| 117833 | .extra_temps = .{ |
| 117834 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 117835 | .unused, |
| 117836 | .unused, |
| 117837 | .unused, |
| 117838 | .unused, |
| 117839 | .unused, |
| 117840 | .unused, |
| 117841 | .unused, |
| 117842 | .unused, |
| 117843 | .unused, |
| 117844 | .unused, |
| 117845 | }, |
| 117846 | .dst_temps = .{ .{ .cc = .nc }, .unused }, |
| 117847 | .clobbers = .{ .eflags = true }, |
| 117848 | .each = .{ .once = &.{ |
| 117849 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_2_smin), ._, ._ }, |
| 117850 | .{ ._, ._, .@"or", .tmp0q, .mema(.src0q, .add_bit_size_div_8_down_8), ._, ._ }, |
| 117851 | .{ ._, ._, .cmp, .tmp0q, .si(-1), ._, ._ }, |
| 117852 | .{ ._, ._ne, .j, .@"0f", ._, ._, ._ }, |
| 117853 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_bit_size_div_8_down_8), ._, ._ }, |
| 117854 | .{ .@"1:", ._, .cmp, .memi(.src0q, .tmp0), .si(-1), ._, ._ }, |
| 117855 | .{ ._, ._ne, .j, .@"0f", ._, ._, ._ }, |
| 117856 | .{ ._, ._, .add, .tmp0d, .si(-8), ._, ._ }, |
| 117857 | .{ ._, ._b, .j, .@"1b", ._, ._, ._ }, |
| 117858 | } }, |
| 117859 | } }, |
| 117860 | .@"or" => [_]Select.Case{ .{ |
| 117861 | .required_features = .{ .avx, null, null, null }, |
| 117862 | .dst_constraints = .{ .bool, .any }, |
| 117863 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117864 | .patterns = &.{ |
| 117865 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .xword, .is = .uninverted } }, .none, .none } }, |
| 117866 | }, |
| 117867 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 117868 | .clobbers = .{ .eflags = true }, |
| 117869 | .each = .{ .once = &.{ |
| 117870 | .{ ._, .vp_, .@"test", .src0x, .src0x, ._, ._ }, |
| 117871 | } }, |
| 117872 | }, .{ |
| 117873 | .required_features = .{ .sse4_1, null, null, null }, |
| 117874 | .dst_constraints = .{ .bool, .any }, |
| 117875 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117876 | .patterns = &.{ |
| 117877 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .xword, .is = .uninverted } }, .none, .none } }, |
| 117878 | }, |
| 117879 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 117880 | .clobbers = .{ .eflags = true }, |
| 117881 | .each = .{ .once = &.{ |
| 117882 | .{ ._, .p_, .@"test", .src0x, .src0x, ._, ._ }, |
| 117883 | } }, |
| 117884 | }, .{ |
| 117885 | .required_features = .{ .avx, null, null, null }, |
| 117886 | .dst_constraints = .{ .bool, .any }, |
| 117887 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117888 | .patterns = &.{ |
| 117889 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .xword } }, .none, .none } }, |
| 117890 | }, |
| 117891 | .extra_temps = .{ |
| 117892 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 117893 | .unused, |
| 117894 | .unused, |
| 117895 | .unused, |
| 117896 | .unused, |
| 117897 | .unused, |
| 117898 | .unused, |
| 117899 | .unused, |
| 117900 | .unused, |
| 117901 | .unused, |
| 117902 | .unused, |
| 117903 | }, |
| 117904 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .not = true, .all = 0 } }, .unused }, |
| 117905 | .clobbers = .{ .eflags = true }, |
| 117906 | .each = .{ .once = &.{ |
| 117907 | .{ ._, .vp_b, .cmpeq, .tmp0x, .tmp0x, .tmp0x, ._ }, |
| 117908 | .{ ._, .vp_, .@"test", .src0x, .tmp0x, ._, ._ }, |
| 117909 | } }, |
| 117910 | }, .{ |
| 117911 | .required_features = .{ .sse4_1, null, null, null }, |
| 117912 | .dst_constraints = .{ .bool, .any }, |
| 117913 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117914 | .patterns = &.{ |
| 117915 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .xword } }, .none, .none } }, |
| 117916 | }, |
| 117917 | .extra_temps = .{ |
| 117918 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 117919 | .unused, |
| 117920 | .unused, |
| 117921 | .unused, |
| 117922 | .unused, |
| 117923 | .unused, |
| 117924 | .unused, |
| 117925 | .unused, |
| 117926 | .unused, |
| 117927 | .unused, |
| 117928 | .unused, |
| 117929 | }, |
| 117930 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .not = true, .all = 0 } }, .unused }, |
| 117931 | .clobbers = .{ .eflags = true }, |
| 117932 | .each = .{ .once = &.{ |
| 117933 | .{ ._, .p_b, .cmpeq, .tmp0x, .tmp0x, ._, ._ }, |
| 117934 | .{ ._, .p_, .@"test", .src0x, .tmp0x, ._, ._ }, |
| 117935 | } }, |
| 117936 | }, .{ |
| 117937 | .required_features = .{ .avx, null, null, null }, |
| 117938 | .dst_constraints = .{ .bool, .any }, |
| 117939 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117940 | .patterns = &.{ |
| 117941 | .{ .src = .{ .{ .reg_mask = .{ .size = .xword } }, .none, .none } }, |
| 117942 | }, |
| 117943 | .extra_temps = .{ |
| 117944 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 117945 | .{ .type = .vector_16_u8, .kind = .{ .ptest_mask_mem = .src0 } }, |
| 117946 | .unused, |
| 117947 | .unused, |
| 117948 | .unused, |
| 117949 | .unused, |
| 117950 | .unused, |
| 117951 | .unused, |
| 117952 | .unused, |
| 117953 | .unused, |
| 117954 | .unused, |
| 117955 | }, |
| 117956 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .not = true, .all = 0 } }, .unused }, |
| 117957 | .clobbers = .{ .eflags = true }, |
| 117958 | .each = .{ .once = &.{ |
| 117959 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 117960 | .{ ._, .vp_, .@"test", .src0x, .lea(.tmp0x), ._, ._ }, |
| 117961 | } }, |
| 117962 | }, .{ |
| 117963 | .required_features = .{ .sse4_1, null, null, null }, |
| 117964 | .dst_constraints = .{ .bool, .any }, |
| 117965 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117966 | .patterns = &.{ |
| 117967 | .{ .src = .{ .{ .reg_mask = .{ .size = .xword } }, .none, .none } }, |
| 117968 | }, |
| 117969 | .extra_temps = .{ |
| 117970 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 117971 | .{ .type = .vector_16_u8, .kind = .{ .ptest_mask_mem = .src0 } }, |
| 117972 | .unused, |
| 117973 | .unused, |
| 117974 | .unused, |
| 117975 | .unused, |
| 117976 | .unused, |
| 117977 | .unused, |
| 117978 | .unused, |
| 117979 | .unused, |
| 117980 | .unused, |
| 117981 | }, |
| 117982 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .not = true, .all = 0 } }, .unused }, |
| 117983 | .clobbers = .{ .eflags = true }, |
| 117984 | .each = .{ .once = &.{ |
| 117985 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 117986 | .{ ._, .p_, .@"test", .src0x, .lea(.tmp0x), ._, ._ }, |
| 117987 | } }, |
| 117988 | }, .{ |
| 117989 | .required_features = .{ .avx2, null, null, null }, |
| 117990 | .dst_constraints = .{ .bool, .any }, |
| 117991 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 117992 | .patterns = &.{ |
| 117993 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .yword, .is = .uninverted } }, .none, .none } }, |
| 117994 | }, |
| 117995 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 117996 | .clobbers = .{ .eflags = true }, |
| 117997 | .each = .{ .once = &.{ |
| 117998 | .{ ._, .vp_, .@"test", .src0y, .src0y, ._, ._ }, |
| 117999 | } }, |
| 118000 | }, .{ |
| 118001 | .required_features = .{ .avx, null, null, null }, |
| 118002 | .dst_constraints = .{ .bool, .any }, |
| 118003 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 118004 | .patterns = &.{ |
| 118005 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .yword, .is = .uninverted } }, .none, .none } }, |
| 118006 | }, |
| 118007 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118008 | .clobbers = .{ .eflags = true }, |
| 118009 | .each = .{ .once = &.{ |
| 118010 | .{ ._, .v_ps, .@"test", .src0y, .src0y, ._, ._ }, |
| 118011 | } }, |
| 118012 | }, .{ |
| 118013 | .required_features = .{ .avx2, null, null, null }, |
| 118014 | .dst_constraints = .{ .bool, .any }, |
| 118015 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 118016 | .patterns = &.{ |
| 118017 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .yword } }, .none, .none } }, |
| 118018 | }, |
| 118019 | .extra_temps = .{ |
| 118020 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 118021 | .unused, |
| 118022 | .unused, |
| 118023 | .unused, |
| 118024 | .unused, |
| 118025 | .unused, |
| 118026 | .unused, |
| 118027 | .unused, |
| 118028 | .unused, |
| 118029 | .unused, |
| 118030 | .unused, |
| 118031 | }, |
| 118032 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .not = true, .all = 0 } }, .unused }, |
| 118033 | .clobbers = .{ .eflags = true }, |
| 118034 | .each = .{ .once = &.{ |
| 118035 | .{ ._, .vp_b, .cmpeq, .tmp0y, .tmp0y, .tmp0y, ._ }, |
| 118036 | .{ ._, .vp_, .@"test", .src0y, .tmp0y, ._, ._ }, |
| 118037 | } }, |
| 118038 | }, .{ |
| 118039 | .required_features = .{ .avx, null, null, null }, |
| 118040 | .dst_constraints = .{ .bool, .any }, |
| 118041 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 118042 | .patterns = &.{ |
| 118043 | .{ .src = .{ .{ .all_reg_mask = .{ .size = .yword } }, .none, .none } }, |
| 118044 | }, |
| 118045 | .extra_temps = .{ |
| 118046 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 118047 | .unused, |
| 118048 | .unused, |
| 118049 | .unused, |
| 118050 | .unused, |
| 118051 | .unused, |
| 118052 | .unused, |
| 118053 | .unused, |
| 118054 | .unused, |
| 118055 | .unused, |
| 118056 | .unused, |
| 118057 | }, |
| 118058 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .not = true, .all = 0 } }, .unused }, |
| 118059 | .clobbers = .{ .eflags = true }, |
| 118060 | .each = .{ .once = &.{ |
| 118061 | .{ ._, .v_ps, .cmp, .tmp0y, .tmp0y, .tmp0y, .vp(.true) }, |
| 118062 | .{ ._, .v_ps, .@"test", .src0y, .tmp0y, ._, ._ }, |
| 118063 | } }, |
| 118064 | }, .{ |
| 118065 | .required_features = .{ .avx, null, null, null }, |
| 118066 | .dst_constraints = .{ .bool, .any }, |
| 118067 | .src_constraints = .{ .any_bool_vec, .any, .any }, |
| 118068 | .patterns = &.{ |
| 118069 | .{ .src = .{ .{ .reg_mask = .{ .size = .yword } }, .none, .none } }, |
| 118070 | }, |
| 118071 | .extra_temps = .{ |
| 118072 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 118073 | .{ .type = .vector_32_u8, .kind = .{ .ptest_mask_mem = .src0 } }, |
| 118074 | .unused, |
| 118075 | .unused, |
| 118076 | .unused, |
| 118077 | .unused, |
| 118078 | .unused, |
| 118079 | .unused, |
| 118080 | .unused, |
| 118081 | .unused, |
| 118082 | .unused, |
| 118083 | }, |
| 118084 | .dst_temps = .{ .{ .ptest_cc = .{ .ref = .src0, .not = true, .all = 0 } }, .unused }, |
| 118085 | .clobbers = .{ .eflags = true }, |
| 118086 | .each = .{ .once = &.{ |
| 118087 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 118088 | .{ ._, .vp_, .@"test", .src0y, .lea(.tmp0y), ._, ._ }, |
| 118089 | } }, |
| 118090 | }, .{ |
| 118091 | .dst_constraints = .{ .bool, .any }, |
| 118092 | .src_constraints = .{ .{ .exact_bool_vec = 8 }, .any, .any }, |
| 118093 | .patterns = &.{ |
| 118094 | .{ .src = .{ .mem, .none, .none } }, |
| 118095 | }, |
| 118096 | .dst_temps = .{ .{ .cc = .ne }, .unused }, |
| 118097 | .clobbers = .{ .eflags = true }, |
| 118098 | .each = .{ .once = &.{ |
| 118099 | .{ ._, ._, .cmp, .src0b, .si(0), ._, ._ }, |
| 118100 | } }, |
| 118101 | }, .{ |
| 118102 | .dst_constraints = .{ .bool, .any }, |
| 118103 | .src_constraints = .{ .{ .exact_bool_vec = 8 }, .any, .any }, |
| 118104 | .patterns = &.{ |
| 118105 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118106 | }, |
| 118107 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118108 | .clobbers = .{ .eflags = true }, |
| 118109 | .each = .{ .once = &.{ |
| 118110 | .{ ._, ._, .@"test", .src0b, .src0b, ._, ._ }, |
| 118111 | } }, |
| 118112 | }, .{ |
| 118113 | .dst_constraints = .{ .bool, .any }, |
| 118114 | .src_constraints = .{ .{ .bool_vec = .byte }, .any, .any }, |
| 118115 | .patterns = &.{ |
| 118116 | .{ .src = .{ .mem, .none, .none } }, |
| 118117 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118118 | }, |
| 118119 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118120 | .clobbers = .{ .eflags = true }, |
| 118121 | .each = .{ .once = &.{ |
| 118122 | .{ ._, ._, .@"test", .src0b, .ua(.src0, .add_umax), ._, ._ }, |
| 118123 | } }, |
| 118124 | }, .{ |
| 118125 | .dst_constraints = .{ .bool, .any }, |
| 118126 | .src_constraints = .{ .{ .exact_bool_vec = 16 }, .any, .any }, |
| 118127 | .patterns = &.{ |
| 118128 | .{ .src = .{ .mem, .none, .none } }, |
| 118129 | }, |
| 118130 | .dst_temps = .{ .{ .cc = .ne }, .unused }, |
| 118131 | .clobbers = .{ .eflags = true }, |
| 118132 | .each = .{ .once = &.{ |
| 118133 | .{ ._, ._, .cmp, .src0w, .si(0), ._, ._ }, |
| 118134 | } }, |
| 118135 | }, .{ |
| 118136 | .dst_constraints = .{ .bool, .any }, |
| 118137 | .src_constraints = .{ .{ .exact_bool_vec = 16 }, .any, .any }, |
| 118138 | .patterns = &.{ |
| 118139 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118140 | }, |
| 118141 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118142 | .clobbers = .{ .eflags = true }, |
| 118143 | .each = .{ .once = &.{ |
| 118144 | .{ ._, ._, .@"test", .src0w, .src0w, ._, ._ }, |
| 118145 | } }, |
| 118146 | }, .{ |
| 118147 | .dst_constraints = .{ .bool, .any }, |
| 118148 | .src_constraints = .{ .{ .bool_vec = .word }, .any, .any }, |
| 118149 | .patterns = &.{ |
| 118150 | .{ .src = .{ .mem, .none, .none } }, |
| 118151 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118152 | }, |
| 118153 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118154 | .clobbers = .{ .eflags = true }, |
| 118155 | .each = .{ .once = &.{ |
| 118156 | .{ ._, ._, .@"test", .src0w, .ua(.src0, .add_umax), ._, ._ }, |
| 118157 | } }, |
| 118158 | }, .{ |
| 118159 | .dst_constraints = .{ .bool, .any }, |
| 118160 | .src_constraints = .{ .{ .exact_bool_vec = 32 }, .any, .any }, |
| 118161 | .patterns = &.{ |
| 118162 | .{ .src = .{ .mem, .none, .none } }, |
| 118163 | }, |
| 118164 | .dst_temps = .{ .{ .cc = .ne }, .unused }, |
| 118165 | .clobbers = .{ .eflags = true }, |
| 118166 | .each = .{ .once = &.{ |
| 118167 | .{ ._, ._, .cmp, .src0d, .si(0), ._, ._ }, |
| 118168 | } }, |
| 118169 | }, .{ |
| 118170 | .dst_constraints = .{ .bool, .any }, |
| 118171 | .src_constraints = .{ .{ .exact_bool_vec = 32 }, .any, .any }, |
| 118172 | .patterns = &.{ |
| 118173 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118174 | }, |
| 118175 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118176 | .clobbers = .{ .eflags = true }, |
| 118177 | .each = .{ .once = &.{ |
| 118178 | .{ ._, ._, .@"test", .src0d, .src0d, ._, ._ }, |
| 118179 | } }, |
| 118180 | }, .{ |
| 118181 | .dst_constraints = .{ .bool, .any }, |
| 118182 | .src_constraints = .{ .{ .bool_vec = .dword }, .any, .any }, |
| 118183 | .patterns = &.{ |
| 118184 | .{ .src = .{ .mem, .none, .none } }, |
| 118185 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118186 | }, |
| 118187 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118188 | .clobbers = .{ .eflags = true }, |
| 118189 | .each = .{ .once = &.{ |
| 118190 | .{ ._, ._, .@"test", .src0d, .ua(.src0, .add_umax), ._, ._ }, |
| 118191 | } }, |
| 118192 | }, .{ |
| 118193 | .required_features = .{ .@"64bit", null, null, null }, |
| 118194 | .dst_constraints = .{ .bool, .any }, |
| 118195 | .src_constraints = .{ .{ .exact_bool_vec = 64 }, .any, .any }, |
| 118196 | .patterns = &.{ |
| 118197 | .{ .src = .{ .mem, .none, .none } }, |
| 118198 | }, |
| 118199 | .dst_temps = .{ .{ .cc = .ne }, .unused }, |
| 118200 | .clobbers = .{ .eflags = true }, |
| 118201 | .each = .{ .once = &.{ |
| 118202 | .{ ._, ._, .cmp, .src0q, .si(0), ._, ._ }, |
| 118203 | } }, |
| 118204 | }, .{ |
| 118205 | .required_features = .{ .@"64bit", null, null, null }, |
| 118206 | .dst_constraints = .{ .bool, .any }, |
| 118207 | .src_constraints = .{ .{ .exact_bool_vec = 64 }, .any, .any }, |
| 118208 | .patterns = &.{ |
| 118209 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118210 | }, |
| 118211 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118212 | .clobbers = .{ .eflags = true }, |
| 118213 | .each = .{ .once = &.{ |
| 118214 | .{ ._, ._, .@"test", .src0q, .src0q, ._, ._ }, |
| 118215 | } }, |
| 118216 | }, .{ |
| 118217 | .required_features = .{ .@"64bit", null, null, null }, |
| 118218 | .dst_constraints = .{ .bool, .any }, |
| 118219 | .src_constraints = .{ .{ .bool_vec = .qword }, .any, .any }, |
| 118220 | .patterns = &.{ |
| 118221 | .{ .src = .{ .mem, .none, .none } }, |
| 118222 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118223 | }, |
| 118224 | .extra_temps = .{ |
| 118225 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 118226 | .unused, |
| 118227 | .unused, |
| 118228 | .unused, |
| 118229 | .unused, |
| 118230 | .unused, |
| 118231 | .unused, |
| 118232 | .unused, |
| 118233 | .unused, |
| 118234 | .unused, |
| 118235 | .unused, |
| 118236 | }, |
| 118237 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118238 | .clobbers = .{ .eflags = true }, |
| 118239 | .each = .{ .once = &.{ |
| 118240 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, |
| 118241 | .{ ._, ._, .@"test", .src0q, .tmp0q, ._, ._ }, |
| 118242 | } }, |
| 118243 | }, .{ |
| 118244 | .required_features = .{ .@"64bit", null, null, null }, |
| 118245 | .dst_constraints = .{ .bool, .any }, |
| 118246 | .src_constraints = .{ .{ .exact_remainder_bool_vec = .{ .of = .qword, .is = 64 } }, .any, .any }, |
| 118247 | .patterns = &.{ |
| 118248 | .{ .src = .{ .to_mem, .none, .none } }, |
| 118249 | }, |
| 118250 | .extra_temps = .{ |
| 118251 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 118252 | .unused, |
| 118253 | .unused, |
| 118254 | .unused, |
| 118255 | .unused, |
| 118256 | .unused, |
| 118257 | .unused, |
| 118258 | .unused, |
| 118259 | .unused, |
| 118260 | .unused, |
| 118261 | .unused, |
| 118262 | }, |
| 118263 | .dst_temps = .{ .{ .cc = .nc }, .unused }, |
| 118264 | .clobbers = .{ .eflags = true }, |
| 118265 | .each = .{ .once = &.{ |
| 118266 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_bit_size_div_8), ._, ._ }, |
| 118267 | .{ .@"1:", ._, .cmp, .memi(.src0q, .tmp0), .si(0), ._, ._ }, |
| 118268 | .{ ._, ._ne, .j, .@"0f", ._, ._, ._ }, |
| 118269 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 118270 | .{ ._, ._nb, .j, .@"1b", ._, ._, ._ }, |
| 118271 | } }, |
| 118272 | }, .{ |
| 118273 | .required_features = .{ .@"64bit", null, null, null }, |
| 118274 | .dst_constraints = .{ .bool, .any }, |
| 118275 | .src_constraints = .{ .{ .remainder_bool_vec = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 118276 | .patterns = &.{ |
| 118277 | .{ .src = .{ .to_mem, .none, .none } }, |
| 118278 | }, |
| 118279 | .extra_temps = .{ |
| 118280 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 118281 | .unused, |
| 118282 | .unused, |
| 118283 | .unused, |
| 118284 | .unused, |
| 118285 | .unused, |
| 118286 | .unused, |
| 118287 | .unused, |
| 118288 | .unused, |
| 118289 | .unused, |
| 118290 | .unused, |
| 118291 | }, |
| 118292 | .dst_temps = .{ .{ .cc = .nc }, .unused }, |
| 118293 | .clobbers = .{ .eflags = true }, |
| 118294 | .each = .{ .once = &.{ |
| 118295 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, |
| 118296 | .{ ._, ._, .@"test", .mema(.src0q, .add_bit_size_div_8_down_8), .tmp0q, ._, ._ }, |
| 118297 | .{ ._, ._nz, .j, .@"0f", ._, ._, ._ }, |
| 118298 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_bit_size_div_8_down_8), ._, ._ }, |
| 118299 | .{ .@"1:", ._, .cmp, .memi(.src0q, .tmp0), .si(0), ._, ._ }, |
| 118300 | .{ ._, ._ne, .j, .@"0f", ._, ._, ._ }, |
| 118301 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 118302 | .{ ._, ._nb, .j, .@"1b", ._, ._, ._ }, |
| 118303 | } }, |
| 118304 | } }, |
| 118305 | .xor => [_]Select.Case{ .{ |
| 118306 | .dst_constraints = .{ .bool, .any }, |
| 118307 | .src_constraints = .{ .{ .bool_vec = .byte }, .any, .any }, |
| 118308 | .patterns = &.{ |
| 118309 | .{ .src = .{ .mem, .none, .none } }, |
| 118310 | }, |
| 118311 | .dst_temps = .{ .{ .cc = .po }, .unused }, |
| 118312 | .clobbers = .{ .eflags = true }, |
| 118313 | .each = .{ .once = &.{ |
| 118314 | .{ ._, ._, .@"test", .src0b, .ua(.src0, .add_umax), ._, ._ }, |
| 118315 | } }, |
| 118316 | }, .{ |
| 118317 | .dst_constraints = .{ .bool, .any }, |
| 118318 | .src_constraints = .{ .{ .exact_bool_vec = 8 }, .any, .any }, |
| 118319 | .patterns = &.{ |
| 118320 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118321 | }, |
| 118322 | .dst_temps = .{ .{ .cc = .po }, .unused }, |
| 118323 | .clobbers = .{ .eflags = true }, |
| 118324 | .each = .{ .once = &.{ |
| 118325 | .{ ._, ._, .@"test", .src0b, .src0b, ._, ._ }, |
| 118326 | } }, |
| 118327 | }, .{ |
| 118328 | .dst_constraints = .{ .bool, .any }, |
| 118329 | .src_constraints = .{ .{ .bool_vec = .byte }, .any, .any }, |
| 118330 | .patterns = &.{ |
| 118331 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118332 | }, |
| 118333 | .dst_temps = .{ .{ .cc = .po }, .unused }, |
| 118334 | .clobbers = .{ .eflags = true }, |
| 118335 | .each = .{ .once = &.{ |
| 118336 | .{ ._, ._, .@"test", .src0b, .ua(.src0, .add_umax), ._, ._ }, |
| 118337 | } }, |
| 118338 | }, .{ |
| 118339 | .required_features = .{ .popcnt, null, null, null }, |
| 118340 | .dst_constraints = .{ .bool, .any }, |
| 118341 | .src_constraints = .{ .{ .exact_bool_vec = 16 }, .any, .any }, |
| 118342 | .patterns = &.{ |
| 118343 | .{ .src = .{ .mem, .none, .none } }, |
| 118344 | }, |
| 118345 | .extra_temps = .{ |
| 118346 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 118347 | .unused, |
| 118348 | .unused, |
| 118349 | .unused, |
| 118350 | .unused, |
| 118351 | .unused, |
| 118352 | .unused, |
| 118353 | .unused, |
| 118354 | .unused, |
| 118355 | .unused, |
| 118356 | .unused, |
| 118357 | }, |
| 118358 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118359 | .clobbers = .{ .eflags = true }, |
| 118360 | .each = .{ .once = &.{ |
| 118361 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| 118362 | .{ ._, ._, .popcnt, .tmp0w, .src0w, ._, ._ }, |
| 118363 | .{ ._, ._, .@"and", .tmp0b, .ui(1), ._, ._ }, |
| 118364 | } }, |
| 118365 | }, .{ |
| 118366 | .required_features = .{ .popcnt, null, null, null }, |
| 118367 | .dst_constraints = .{ .bool, .any }, |
| 118368 | .src_constraints = .{ .{ .exact_bool_vec = 16 }, .any, .any }, |
| 118369 | .patterns = &.{ |
| 118370 | .{ .src = .{ .to_mut_gpr, .none, .none } }, |
| 118371 | }, |
| 118372 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118373 | .clobbers = .{ .eflags = true }, |
| 118374 | .each = .{ .once = &.{ |
| 118375 | .{ ._, ._, .popcnt, .src0w, .src0w, ._, ._ }, |
| 118376 | .{ ._, ._, .@"and", .src0b, .ui(1), ._, ._ }, |
| 118377 | } }, |
| 118378 | }, .{ |
| 118379 | .dst_constraints = .{ .bool, .any }, |
| 118380 | .src_constraints = .{ .{ .exact_bool_vec = 16 }, .any, .any }, |
| 118381 | .patterns = &.{ |
| 118382 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118383 | }, |
| 118384 | .extra_temps = .{ |
| 118385 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 118386 | .unused, |
| 118387 | .unused, |
| 118388 | .unused, |
| 118389 | .unused, |
| 118390 | .unused, |
| 118391 | .unused, |
| 118392 | .unused, |
| 118393 | .unused, |
| 118394 | .unused, |
| 118395 | .unused, |
| 118396 | }, |
| 118397 | .dst_temps = .{ .{ .cc = .po }, .unused }, |
| 118398 | .clobbers = .{ .eflags = true }, |
| 118399 | .each = .{ .once = &.{ |
| 118400 | .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ }, |
| 118401 | .{ ._, ._r, .sh, .tmp0d, .ui(8), ._, ._ }, |
| 118402 | .{ ._, ._, .xor, .tmp0b, .src0b, ._, ._ }, |
| 118403 | } }, |
| 118404 | }, .{ |
| 118405 | .required_features = .{ .popcnt, .fast_imm16, null, null }, |
| 118406 | .dst_constraints = .{ .bool, .any }, |
| 118407 | .src_constraints = .{ .{ .bool_vec = .word }, .any, .any }, |
| 118408 | .patterns = &.{ |
| 118409 | .{ .src = .{ .to_mut_gpr, .none, .none } }, |
| 118410 | }, |
| 118411 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118412 | .clobbers = .{ .eflags = true }, |
| 118413 | .each = .{ .once = &.{ |
| 118414 | .{ ._, ._, .@"and", .src0w, .ua(.src0, .add_umax), ._, ._ }, |
| 118415 | .{ ._, ._, .popcnt, .src0w, .src0w, ._, ._ }, |
| 118416 | .{ ._, ._, .@"and", .src0b, .ui(1), ._, ._ }, |
| 118417 | } }, |
| 118418 | }, .{ |
| 118419 | .required_features = .{ .popcnt, null, null, null }, |
| 118420 | .dst_constraints = .{ .bool, .any }, |
| 118421 | .src_constraints = .{ .{ .bool_vec = .word }, .any, .any }, |
| 118422 | .patterns = &.{ |
| 118423 | .{ .src = .{ .to_mut_gpr, .none, .none } }, |
| 118424 | }, |
| 118425 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118426 | .clobbers = .{ .eflags = true }, |
| 118427 | .each = .{ .once = &.{ |
| 118428 | .{ ._, ._, .@"and", .src0d, .ua(.src0, .add_umax), ._, ._ }, |
| 118429 | .{ ._, ._, .popcnt, .src0d, .src0d, ._, ._ }, |
| 118430 | .{ ._, ._, .@"and", .src0b, .ui(1), ._, ._ }, |
| 118431 | } }, |
| 118432 | }, .{ |
| 118433 | .dst_constraints = .{ .bool, .any }, |
| 118434 | .src_constraints = .{ .{ .bool_vec = .word }, .any, .any }, |
| 118435 | .patterns = &.{ |
| 118436 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118437 | }, |
| 118438 | .extra_temps = .{ |
| 118439 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 118440 | .unused, |
| 118441 | .unused, |
| 118442 | .unused, |
| 118443 | .unused, |
| 118444 | .unused, |
| 118445 | .unused, |
| 118446 | .unused, |
| 118447 | .unused, |
| 118448 | .unused, |
| 118449 | .unused, |
| 118450 | }, |
| 118451 | .dst_temps = .{ .{ .cc = .po }, .unused }, |
| 118452 | .clobbers = .{ .eflags = true }, |
| 118453 | .each = .{ .once = &.{ |
| 118454 | .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ }, |
| 118455 | .{ ._, ._r, .sh, .tmp0d, .ui(8), ._, ._ }, |
| 118456 | .{ ._, ._, .@"and", .tmp0b, .ua(.src0b, .add_umax), ._, ._ }, |
| 118457 | .{ ._, ._, .xor, .tmp0d, .src0d, ._, ._ }, |
| 118458 | } }, |
| 118459 | }, .{ |
| 118460 | .required_features = .{ .popcnt, .false_deps_popcnt, null, null }, |
| 118461 | .dst_constraints = .{ .bool, .any }, |
| 118462 | .src_constraints = .{ .{ .exact_bool_vec = 32 }, .any, .any }, |
| 118463 | .patterns = &.{ |
| 118464 | .{ .src = .{ .mem, .none, .none } }, |
| 118465 | }, |
| 118466 | .extra_temps = .{ |
| 118467 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 118468 | .unused, |
| 118469 | .unused, |
| 118470 | .unused, |
| 118471 | .unused, |
| 118472 | .unused, |
| 118473 | .unused, |
| 118474 | .unused, |
| 118475 | .unused, |
| 118476 | .unused, |
| 118477 | .unused, |
| 118478 | }, |
| 118479 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118480 | .clobbers = .{ .eflags = true }, |
| 118481 | .each = .{ .once = &.{ |
| 118482 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| 118483 | .{ ._, ._, .popcnt, .tmp0d, .src0d, ._, ._ }, |
| 118484 | .{ ._, ._, .@"and", .tmp0b, .ui(1), ._, ._ }, |
| 118485 | } }, |
| 118486 | }, .{ |
| 118487 | .required_features = .{ .popcnt, .false_deps_popcnt, null, null }, |
| 118488 | .dst_constraints = .{ .bool, .any }, |
| 118489 | .src_constraints = .{ .{ .exact_bool_vec = 32 }, .any, .any }, |
| 118490 | .patterns = &.{ |
| 118491 | .{ .src = .{ .to_mut_gpr, .none, .none } }, |
| 118492 | }, |
| 118493 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118494 | .clobbers = .{ .eflags = true }, |
| 118495 | .each = .{ .once = &.{ |
| 118496 | .{ ._, ._, .popcnt, .src0d, .src0d, ._, ._ }, |
| 118497 | .{ ._, ._, .@"and", .src0b, .ui(1), ._, ._ }, |
| 118498 | } }, |
| 118499 | }, .{ |
| 118500 | .required_features = .{ .popcnt, null, null, null }, |
| 118501 | .dst_constraints = .{ .bool, .any }, |
| 118502 | .src_constraints = .{ .{ .exact_bool_vec = 32 }, .any, .any }, |
| 118503 | .patterns = &.{ |
| 118504 | .{ .src = .{ .mem, .none, .none } }, |
| 118505 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118506 | }, |
| 118507 | .extra_temps = .{ |
| 118508 | .{ .type = .u32, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } } }, |
| 118509 | .unused, |
| 118510 | .unused, |
| 118511 | .unused, |
| 118512 | .unused, |
| 118513 | .unused, |
| 118514 | .unused, |
| 118515 | .unused, |
| 118516 | .unused, |
| 118517 | .unused, |
| 118518 | .unused, |
| 118519 | }, |
| 118520 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118521 | .clobbers = .{ .eflags = true }, |
| 118522 | .each = .{ .once = &.{ |
| 118523 | .{ ._, ._, .popcnt, .tmp0d, .src0d, ._, ._ }, |
| 118524 | .{ ._, ._, .@"and", .tmp0b, .ui(1), ._, ._ }, |
| 118525 | } }, |
| 118526 | }, .{ |
| 118527 | .dst_constraints = .{ .bool, .any }, |
| 118528 | .src_constraints = .{ .{ .exact_bool_vec = 32 }, .any, .any }, |
| 118529 | .patterns = &.{ |
| 118530 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118531 | }, |
| 118532 | .extra_temps = .{ |
| 118533 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 118534 | .{ .type = .u32, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } } }, |
| 118535 | .unused, |
| 118536 | .unused, |
| 118537 | .unused, |
| 118538 | .unused, |
| 118539 | .unused, |
| 118540 | .unused, |
| 118541 | .unused, |
| 118542 | .unused, |
| 118543 | .unused, |
| 118544 | }, |
| 118545 | .dst_temps = .{ .{ .cc = .po }, .unused }, |
| 118546 | .clobbers = .{ .eflags = true }, |
| 118547 | .each = .{ .once = &.{ |
| 118548 | .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ }, |
| 118549 | .{ ._, ._r, .sh, .tmp0d, .ui(16), ._, ._ }, |
| 118550 | .{ ._, ._, .xor, .tmp0d, .src0d, ._, ._ }, |
| 118551 | .{ ._, ._, .mov, .tmp1d, .tmp0d, ._, ._ }, |
| 118552 | .{ ._, ._r, .sh, .tmp1d, .ui(8), ._, ._ }, |
| 118553 | .{ ._, ._, .xor, .tmp0b, .tmp1b, ._, ._ }, |
| 118554 | } }, |
| 118555 | }, .{ |
| 118556 | .required_features = .{ .popcnt, null, null, null }, |
| 118557 | .dst_constraints = .{ .bool, .any }, |
| 118558 | .src_constraints = .{ .{ .bool_vec = .dword }, .any, .any }, |
| 118559 | .patterns = &.{ |
| 118560 | .{ .src = .{ .to_mut_gpr, .none, .none } }, |
| 118561 | }, |
| 118562 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118563 | .clobbers = .{ .eflags = true }, |
| 118564 | .each = .{ .once = &.{ |
| 118565 | .{ ._, ._, .@"and", .src0d, .ua(.src0, .add_umax), ._, ._ }, |
| 118566 | .{ ._, ._, .popcnt, .src0d, .src0d, ._, ._ }, |
| 118567 | .{ ._, ._, .@"and", .src0b, .ui(1), ._, ._ }, |
| 118568 | } }, |
| 118569 | }, .{ |
| 118570 | .required_features = .{ .fast_imm16, null, null, null }, |
| 118571 | .dst_constraints = .{ .bool, .any }, |
| 118572 | .src_constraints = .{ .{ .bool_vec = .dword }, .any, .any }, |
| 118573 | .patterns = &.{ |
| 118574 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118575 | }, |
| 118576 | .extra_temps = .{ |
| 118577 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 118578 | .{ .type = .u32, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } } }, |
| 118579 | .unused, |
| 118580 | .unused, |
| 118581 | .unused, |
| 118582 | .unused, |
| 118583 | .unused, |
| 118584 | .unused, |
| 118585 | .unused, |
| 118586 | .unused, |
| 118587 | .unused, |
| 118588 | }, |
| 118589 | .dst_temps = .{ .{ .cc = .po }, .unused }, |
| 118590 | .clobbers = .{ .eflags = true }, |
| 118591 | .each = .{ .once = &.{ |
| 118592 | .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ }, |
| 118593 | .{ ._, ._r, .sh, .tmp0d, .ui(16), ._, ._ }, |
| 118594 | .{ ._, ._, .@"and", .tmp0d, .ua(.src0w, .add_umax), ._, ._ }, |
| 118595 | .{ ._, ._, .xor, .tmp0d, .src0d, ._, ._ }, |
| 118596 | .{ ._, ._, .mov, .tmp1d, .tmp0d, ._, ._ }, |
| 118597 | .{ ._, ._r, .sh, .tmp1d, .ui(8), ._, ._ }, |
| 118598 | .{ ._, ._, .xor, .tmp0b, .tmp1b, ._, ._ }, |
| 118599 | } }, |
| 118600 | }, .{ |
| 118601 | .dst_constraints = .{ .bool, .any }, |
| 118602 | .src_constraints = .{ .{ .bool_vec = .dword }, .any, .any }, |
| 118603 | .patterns = &.{ |
| 118604 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118605 | }, |
| 118606 | .extra_temps = .{ |
| 118607 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 118608 | .{ .type = .u32, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } } }, |
| 118609 | .unused, |
| 118610 | .unused, |
| 118611 | .unused, |
| 118612 | .unused, |
| 118613 | .unused, |
| 118614 | .unused, |
| 118615 | .unused, |
| 118616 | .unused, |
| 118617 | .unused, |
| 118618 | }, |
| 118619 | .dst_temps = .{ .{ .cc = .po }, .unused }, |
| 118620 | .clobbers = .{ .eflags = true }, |
| 118621 | .each = .{ .once = &.{ |
| 118622 | .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ }, |
| 118623 | .{ ._, ._r, .sh, .tmp0d, .ui(16), ._, ._ }, |
| 118624 | .{ ._, ._, .@"and", .tmp0d, .ua(.src0w, .add_umax), ._, ._ }, |
| 118625 | .{ ._, ._, .xor, .tmp0d, .src0d, ._, ._ }, |
| 118626 | .{ ._, ._, .mov, .tmp1d, .tmp0d, ._, ._ }, |
| 118627 | .{ ._, ._r, .sh, .tmp1d, .ui(8), ._, ._ }, |
| 118628 | .{ ._, ._, .xor, .tmp0b, .tmp1b, ._, ._ }, |
| 118629 | } }, |
| 118630 | }, .{ |
| 118631 | .required_features = .{ .@"64bit", .popcnt, .false_deps_popcnt, null }, |
| 118632 | .dst_constraints = .{ .bool, .any }, |
| 118633 | .src_constraints = .{ .{ .exact_bool_vec = 64 }, .any, .any }, |
| 118634 | .patterns = &.{ |
| 118635 | .{ .src = .{ .mem, .none, .none } }, |
| 118636 | }, |
| 118637 | .extra_temps = .{ |
| 118638 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 118639 | .unused, |
| 118640 | .unused, |
| 118641 | .unused, |
| 118642 | .unused, |
| 118643 | .unused, |
| 118644 | .unused, |
| 118645 | .unused, |
| 118646 | .unused, |
| 118647 | .unused, |
| 118648 | .unused, |
| 118649 | }, |
| 118650 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118651 | .clobbers = .{ .eflags = true }, |
| 118652 | .each = .{ .once = &.{ |
| 118653 | .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ }, |
| 118654 | .{ ._, ._, .popcnt, .tmp0q, .src0q, ._, ._ }, |
| 118655 | .{ ._, ._, .@"and", .tmp0b, .ui(1), ._, ._ }, |
| 118656 | } }, |
| 118657 | }, .{ |
| 118658 | .required_features = .{ .@"64bit", .popcnt, .false_deps_popcnt, null }, |
| 118659 | .dst_constraints = .{ .bool, .any }, |
| 118660 | .src_constraints = .{ .{ .exact_bool_vec = 64 }, .any, .any }, |
| 118661 | .patterns = &.{ |
| 118662 | .{ .src = .{ .to_mut_gpr, .none, .none } }, |
| 118663 | }, |
| 118664 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118665 | .clobbers = .{ .eflags = true }, |
| 118666 | .each = .{ .once = &.{ |
| 118667 | .{ ._, ._, .popcnt, .src0q, .src0q, ._, ._ }, |
| 118668 | .{ ._, ._, .@"and", .src0b, .ui(1), ._, ._ }, |
| 118669 | } }, |
| 118670 | }, .{ |
| 118671 | .required_features = .{ .@"64bit", .popcnt, null, null }, |
| 118672 | .dst_constraints = .{ .bool, .any }, |
| 118673 | .src_constraints = .{ .{ .exact_bool_vec = 64 }, .any, .any }, |
| 118674 | .patterns = &.{ |
| 118675 | .{ .src = .{ .mem, .none, .none } }, |
| 118676 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118677 | }, |
| 118678 | .extra_temps = .{ |
| 118679 | .{ .type = .u64, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } } }, |
| 118680 | .unused, |
| 118681 | .unused, |
| 118682 | .unused, |
| 118683 | .unused, |
| 118684 | .unused, |
| 118685 | .unused, |
| 118686 | .unused, |
| 118687 | .unused, |
| 118688 | .unused, |
| 118689 | .unused, |
| 118690 | }, |
| 118691 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118692 | .clobbers = .{ .eflags = true }, |
| 118693 | .each = .{ .once = &.{ |
| 118694 | .{ ._, ._, .popcnt, .tmp0q, .src0q, ._, ._ }, |
| 118695 | .{ ._, ._, .@"and", .tmp0b, .ui(1), ._, ._ }, |
| 118696 | } }, |
| 118697 | }, .{ |
| 118698 | .dst_constraints = .{ .bool, .any }, |
| 118699 | .src_constraints = .{ .{ .exact_bool_vec = 64 }, .any, .any }, |
| 118700 | .patterns = &.{ |
| 118701 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118702 | }, |
| 118703 | .extra_temps = .{ |
| 118704 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 118705 | .{ .type = .u64, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } } }, |
| 118706 | .unused, |
| 118707 | .unused, |
| 118708 | .unused, |
| 118709 | .unused, |
| 118710 | .unused, |
| 118711 | .unused, |
| 118712 | .unused, |
| 118713 | .unused, |
| 118714 | .unused, |
| 118715 | }, |
| 118716 | .dst_temps = .{ .{ .cc = .po }, .unused }, |
| 118717 | .clobbers = .{ .eflags = true }, |
| 118718 | .each = .{ .once = &.{ |
| 118719 | .{ ._, ._, .mov, .tmp0q, .src0q, ._, ._ }, |
| 118720 | .{ ._, ._r, .sh, .tmp0q, .ui(32), ._, ._ }, |
| 118721 | .{ ._, ._, .xor, .tmp0d, .src0d, ._, ._ }, |
| 118722 | .{ ._, ._, .mov, .tmp1d, .tmp0d, ._, ._ }, |
| 118723 | .{ ._, ._r, .sh, .tmp1d, .ui(16), ._, ._ }, |
| 118724 | .{ ._, ._, .xor, .tmp0d, .tmp1d, ._, ._ }, |
| 118725 | .{ ._, ._, .mov, .tmp1d, .tmp0d, ._, ._ }, |
| 118726 | .{ ._, ._r, .sh, .tmp1d, .ui(8), ._, ._ }, |
| 118727 | .{ ._, ._, .xor, .tmp0b, .tmp1b, ._, ._ }, |
| 118728 | } }, |
| 118729 | }, .{ |
| 118730 | .required_features = .{ .@"64bit", .popcnt, null, null }, |
| 118731 | .dst_constraints = .{ .bool, .any }, |
| 118732 | .src_constraints = .{ .{ .bool_vec = .qword }, .any, .any }, |
| 118733 | .patterns = &.{ |
| 118734 | .{ .src = .{ .mem, .none, .none } }, |
| 118735 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118736 | }, |
| 118737 | .extra_temps = .{ |
| 118738 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 118739 | .unused, |
| 118740 | .unused, |
| 118741 | .unused, |
| 118742 | .unused, |
| 118743 | .unused, |
| 118744 | .unused, |
| 118745 | .unused, |
| 118746 | .unused, |
| 118747 | .unused, |
| 118748 | .unused, |
| 118749 | }, |
| 118750 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118751 | .clobbers = .{ .eflags = true }, |
| 118752 | .each = .{ .once = &.{ |
| 118753 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, |
| 118754 | .{ ._, ._, .@"and", .tmp0q, .src0q, ._, ._ }, |
| 118755 | .{ ._, ._, .popcnt, .tmp0q, .tmp0q, ._, ._ }, |
| 118756 | .{ ._, ._, .@"and", .tmp0b, .ui(1), ._, ._ }, |
| 118757 | } }, |
| 118758 | }, .{ |
| 118759 | .dst_constraints = .{ .bool, .any }, |
| 118760 | .src_constraints = .{ .{ .bool_vec = .qword }, .any, .any }, |
| 118761 | .patterns = &.{ |
| 118762 | .{ .src = .{ .to_gpr, .none, .none } }, |
| 118763 | }, |
| 118764 | .extra_temps = .{ |
| 118765 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 118766 | .{ .type = .u64, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } } }, |
| 118767 | .unused, |
| 118768 | .unused, |
| 118769 | .unused, |
| 118770 | .unused, |
| 118771 | .unused, |
| 118772 | .unused, |
| 118773 | .unused, |
| 118774 | .unused, |
| 118775 | .unused, |
| 118776 | }, |
| 118777 | .dst_temps = .{ .{ .cc = .po }, .unused }, |
| 118778 | .clobbers = .{ .eflags = true }, |
| 118779 | .each = .{ .once = &.{ |
| 118780 | .{ ._, ._, .mov, .tmp0q, .src0q, ._, ._ }, |
| 118781 | .{ ._, ._r, .sh, .tmp0q, .ui(32), ._, ._ }, |
| 118782 | .{ ._, ._, .@"and", .tmp0d, .ua(.src0d, .add_umax), ._, ._ }, |
| 118783 | .{ ._, ._, .xor, .tmp0d, .src0d, ._, ._ }, |
| 118784 | .{ ._, ._, .mov, .tmp1d, .tmp0d, ._, ._ }, |
| 118785 | .{ ._, ._r, .sh, .tmp1d, .ui(16), ._, ._ }, |
| 118786 | .{ ._, ._, .xor, .tmp0d, .tmp1d, ._, ._ }, |
| 118787 | .{ ._, ._, .mov, .tmp1d, .tmp0d, ._, ._ }, |
| 118788 | .{ ._, ._r, .sh, .tmp1d, .ui(8), ._, ._ }, |
| 118789 | .{ ._, ._, .xor, .tmp0b, .tmp1b, ._, ._ }, |
| 118790 | } }, |
| 118791 | }, .{ |
| 118792 | .required_features = .{ .@"64bit", .popcnt, null, null }, |
| 118793 | .dst_constraints = .{ .bool, .any }, |
| 118794 | .src_constraints = .{ .{ .exact_remainder_bool_vec = .{ .of = .qword, .is = 64 } }, .any, .any }, |
| 118795 | .patterns = &.{ |
| 118796 | .{ .src = .{ .to_mem, .none, .none } }, |
| 118797 | }, |
| 118798 | .extra_temps = .{ |
| 118799 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 118800 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 118801 | .unused, |
| 118802 | .unused, |
| 118803 | .unused, |
| 118804 | .unused, |
| 118805 | .unused, |
| 118806 | .unused, |
| 118807 | .unused, |
| 118808 | .unused, |
| 118809 | .unused, |
| 118810 | }, |
| 118811 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118812 | .clobbers = .{ .eflags = true }, |
| 118813 | .each = .{ .once = &.{ |
| 118814 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_bit_size_div_8), ._, ._ }, |
| 118815 | .{ ._, ._, .xor, .tmp1q, .tmp1q, ._, ._ }, |
| 118816 | .{ .@"0:", ._, .xor, .tmp1q, .memi(.src0q, .tmp0), ._, ._ }, |
| 118817 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 118818 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 118819 | .{ ._, ._, .popcnt, .tmp1q, .tmp1q, ._, ._ }, |
| 118820 | .{ ._, ._, .@"and", .tmp1b, .ui(1), ._, ._ }, |
| 118821 | } }, |
| 118822 | }, .{ |
| 118823 | .required_features = .{ .@"64bit", null, null, null }, |
| 118824 | .dst_constraints = .{ .bool, .any }, |
| 118825 | .src_constraints = .{ .{ .exact_remainder_bool_vec = .{ .of = .qword, .is = 64 } }, .any, .any }, |
| 118826 | .patterns = &.{ |
| 118827 | .{ .src = .{ .to_mem, .none, .none } }, |
| 118828 | }, |
| 118829 | .extra_temps = .{ |
| 118830 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 118831 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 118832 | .unused, |
| 118833 | .unused, |
| 118834 | .unused, |
| 118835 | .unused, |
| 118836 | .unused, |
| 118837 | .unused, |
| 118838 | .unused, |
| 118839 | .unused, |
| 118840 | .unused, |
| 118841 | }, |
| 118842 | .dst_temps = .{ .{ .cc = .po }, .unused }, |
| 118843 | .clobbers = .{ .eflags = true }, |
| 118844 | .each = .{ .once = &.{ |
| 118845 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_bit_size_div_8), ._, ._ }, |
| 118846 | .{ ._, ._, .xor, .tmp1q, .tmp1q, ._, ._ }, |
| 118847 | .{ .@"0:", ._, .xor, .tmp1q, .memi(.src0q, .tmp0), ._, ._ }, |
| 118848 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 118849 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 118850 | .{ ._, ._, .mov, .tmp0d, .tmp1d, ._, ._ }, |
| 118851 | .{ ._, ._r, .sh, .tmp1q, .ui(32), ._, ._ }, |
| 118852 | .{ ._, ._, .xor, .tmp0d, .tmp1d, ._, ._ }, |
| 118853 | .{ ._, ._, .mov, .tmp1d, .tmp0d, ._, ._ }, |
| 118854 | .{ ._, ._r, .sh, .tmp1d, .ui(16), ._, ._ }, |
| 118855 | .{ ._, ._, .xor, .tmp0d, .tmp1d, ._, ._ }, |
| 118856 | .{ ._, ._, .mov, .tmp1d, .tmp0d, ._, ._ }, |
| 118857 | .{ ._, ._r, .sh, .tmp1d, .ui(8), ._, ._ }, |
| 118858 | .{ ._, ._, .xor, .tmp0b, .tmp1b, ._, ._ }, |
| 118859 | } }, |
| 118860 | }, .{ |
| 118861 | .required_features = .{ .@"64bit", .popcnt, null, null }, |
| 118862 | .dst_constraints = .{ .bool, .any }, |
| 118863 | .src_constraints = .{ .{ .remainder_bool_vec = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 118864 | .patterns = &.{ |
| 118865 | .{ .src = .{ .to_mem, .none, .none } }, |
| 118866 | }, |
| 118867 | .extra_temps = .{ |
| 118868 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 118869 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 118870 | .unused, |
| 118871 | .unused, |
| 118872 | .unused, |
| 118873 | .unused, |
| 118874 | .unused, |
| 118875 | .unused, |
| 118876 | .unused, |
| 118877 | .unused, |
| 118878 | .unused, |
| 118879 | }, |
| 118880 | .dst_temps = .{ .{ .cc = .nz }, .unused }, |
| 118881 | .clobbers = .{ .eflags = true }, |
| 118882 | .each = .{ .once = &.{ |
| 118883 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, |
| 118884 | .{ ._, ._, .mov, .tmp1d, .sia(-8, .src0, .add_bit_size_div_8_down_8), ._, ._ }, |
| 118885 | .{ ._, ._, .@"and", .tmp0q, .mema(.src0q, .add_bit_size_div_8_down_8), ._, ._ }, |
| 118886 | .{ .@"0:", ._, .xor, .tmp0q, .memi(.src0q, .tmp1), ._, ._ }, |
| 118887 | .{ ._, ._, .sub, .tmp1d, .si(8), ._, ._ }, |
| 118888 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 118889 | .{ ._, ._, .popcnt, .tmp0q, .tmp0q, ._, ._ }, |
| 118890 | .{ ._, ._, .@"and", .tmp0b, .ui(1), ._, ._ }, |
| 118891 | } }, |
| 118892 | }, .{ |
| 118893 | .required_features = .{ .@"64bit", null, null, null }, |
| 118894 | .dst_constraints = .{ .bool, .any }, |
| 118895 | .src_constraints = .{ .{ .remainder_bool_vec = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 118896 | .patterns = &.{ |
| 118897 | .{ .src = .{ .to_mem, .none, .none } }, |
| 118898 | }, |
| 118899 | .extra_temps = .{ |
| 118900 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 118901 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 118902 | .unused, |
| 118903 | .unused, |
| 118904 | .unused, |
| 118905 | .unused, |
| 118906 | .unused, |
| 118907 | .unused, |
| 118908 | .unused, |
| 118909 | .unused, |
| 118910 | .unused, |
| 118911 | }, |
| 118912 | .dst_temps = .{ .{ .cc = .po }, .unused }, |
| 118913 | .clobbers = .{ .eflags = true }, |
| 118914 | .each = .{ .once = &.{ |
| 118915 | .{ ._, ._, .mov, .tmp0q, .ua(.src0, .add_umax), ._, ._ }, |
| 118916 | .{ ._, ._, .mov, .tmp1d, .sia(-8, .src0, .add_bit_size_div_8_down_8), ._, ._ }, |
| 118917 | .{ ._, ._, .@"and", .tmp0q, .mema(.src0q, .add_bit_size_div_8_down_8), ._, ._ }, |
| 118918 | .{ .@"0:", ._, .xor, .tmp0q, .memi(.src0q, .tmp1), ._, ._ }, |
| 118919 | .{ ._, ._, .sub, .tmp1d, .si(8), ._, ._ }, |
| 118920 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 118921 | .{ ._, ._, .mov, .tmp1d, .tmp0d, ._, ._ }, |
| 118922 | .{ ._, ._r, .sh, .tmp0q, .ui(32), ._, ._ }, |
| 118923 | .{ ._, ._, .xor, .tmp0d, .tmp1d, ._, ._ }, |
| 118924 | .{ ._, ._, .mov, .tmp1d, .tmp0d, ._, ._ }, |
| 118925 | .{ ._, ._r, .sh, .tmp1d, .ui(16), ._, ._ }, |
| 118926 | .{ ._, ._, .xor, .tmp0d, .tmp1d, ._, ._ }, |
| 118927 | .{ ._, ._, .mov, .tmp1d, .tmp0d, ._, ._ }, |
| 118928 | .{ ._, ._r, .sh, .tmp1d, .ui(8), ._, ._ }, |
| 118929 | .{ ._, ._, .xor, .tmp0b, .tmp1b, ._, ._ }, |
| 118930 | } }, |
| 118931 | } }, |
| 118932 | } ++ [_]Select.Case{ .{ |
| 118933 | .required_features = .{ .avx, null, null, null }, |
| 118934 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 118935 | .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 118936 | .patterns = &.{ |
| 118937 | .{ .src = .{ .to_sse, .none, .none } }, |
| 118938 | }, |
| 118939 | .extra_temps = .{ |
| 118940 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 118941 | .unused, |
| 118942 | .unused, |
| 118943 | .unused, |
| 118944 | .unused, |
| 118945 | .unused, |
| 118946 | .unused, |
| 118947 | .unused, |
| 118948 | .unused, |
| 118949 | .unused, |
| 118950 | .unused, |
| 118951 | }, |
| 118952 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 118953 | .each = .{ .once = &.{ |
| 118954 | .{ ._, .vp_w, .srl, .tmp0x, .src0x, .ui(8), ._ }, |
| 118955 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 118956 | } }, |
| 118957 | }, .{ |
| 118958 | .required_features = .{ .sse2, null, null, null }, |
| 118959 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 118960 | .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 118961 | .patterns = &.{ |
| 118962 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 118963 | }, |
| 118964 | .extra_temps = .{ |
| 118965 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 118966 | .unused, |
| 118967 | .unused, |
| 118968 | .unused, |
| 118969 | .unused, |
| 118970 | .unused, |
| 118971 | .unused, |
| 118972 | .unused, |
| 118973 | .unused, |
| 118974 | .unused, |
| 118975 | .unused, |
| 118976 | }, |
| 118977 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 118978 | .each = .{ .once = &.{ |
| 118979 | .{ ._, ._dqa, .mov, .tmp0x, .src0x, ._, ._ }, |
| 118980 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 118981 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 118982 | } }, |
| 118983 | }, .{ |
| 118984 | .required_features = .{ .avx, null, null, null }, |
| 118985 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 118986 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 118987 | .patterns = &.{ |
| 118988 | .{ .src = .{ .to_sse, .none, .none } }, |
| 118989 | }, |
| 118990 | .extra_temps = .{ |
| 118991 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 118992 | .unused, |
| 118993 | .unused, |
| 118994 | .unused, |
| 118995 | .unused, |
| 118996 | .unused, |
| 118997 | .unused, |
| 118998 | .unused, |
| 118999 | .unused, |
| 119000 | .unused, |
| 119001 | .unused, |
| 119002 | }, |
| 119003 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 119004 | .each = .{ .once = &.{ |
| 119005 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 119006 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 119007 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 119008 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119009 | } }, |
| 119010 | }, .{ |
| 119011 | .required_features = .{ .sse2, null, null, null }, |
| 119012 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119013 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 119014 | .patterns = &.{ |
| 119015 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 119016 | }, |
| 119017 | .extra_temps = .{ |
| 119018 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119019 | .unused, |
| 119020 | .unused, |
| 119021 | .unused, |
| 119022 | .unused, |
| 119023 | .unused, |
| 119024 | .unused, |
| 119025 | .unused, |
| 119026 | .unused, |
| 119027 | .unused, |
| 119028 | .unused, |
| 119029 | }, |
| 119030 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 119031 | .each = .{ .once = &.{ |
| 119032 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 119033 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 119034 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 119035 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 119036 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 119037 | } }, |
| 119038 | }, .{ |
| 119039 | .required_features = .{ .avx, null, null, null }, |
| 119040 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119041 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 119042 | .patterns = &.{ |
| 119043 | .{ .src = .{ .to_sse, .none, .none } }, |
| 119044 | }, |
| 119045 | .extra_temps = .{ |
| 119046 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119047 | .unused, |
| 119048 | .unused, |
| 119049 | .unused, |
| 119050 | .unused, |
| 119051 | .unused, |
| 119052 | .unused, |
| 119053 | .unused, |
| 119054 | .unused, |
| 119055 | .unused, |
| 119056 | .unused, |
| 119057 | }, |
| 119058 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 119059 | .each = .{ .once = &.{ |
| 119060 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 119061 | .{ ._, .vp_, mir_tag, .tmp0x, .src0x, .tmp0x, ._ }, |
| 119062 | .{ ._, .vp_w, .srl, .dst0x, .src0x, .ui(8), ._ }, |
| 119063 | .{ ._, .vp_, mir_tag, .dst0x, .tmp0x, .dst0x, ._ }, |
| 119064 | } }, |
| 119065 | }, .{ |
| 119066 | .required_features = .{ .sse2, null, null, null }, |
| 119067 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119068 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 119069 | .patterns = &.{ |
| 119070 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 119071 | }, |
| 119072 | .extra_temps = .{ |
| 119073 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119074 | .unused, |
| 119075 | .unused, |
| 119076 | .unused, |
| 119077 | .unused, |
| 119078 | .unused, |
| 119079 | .unused, |
| 119080 | .unused, |
| 119081 | .unused, |
| 119082 | .unused, |
| 119083 | .unused, |
| 119084 | }, |
| 119085 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 119086 | .each = .{ .once = &.{ |
| 119087 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 119088 | .{ ._, .p_, mir_tag, .tmp0x, .src0x, ._, ._ }, |
| 119089 | .{ ._, .p_w, .srl, .dst0x, .ui(8), ._, ._ }, |
| 119090 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 119091 | } }, |
| 119092 | }, .{ |
| 119093 | .required_features = .{ .avx, null, null, null }, |
| 119094 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119095 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 119096 | .patterns = &.{ |
| 119097 | .{ .src = .{ .to_sse, .none, .none } }, |
| 119098 | }, |
| 119099 | .extra_temps = .{ |
| 119100 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119101 | .unused, |
| 119102 | .unused, |
| 119103 | .unused, |
| 119104 | .unused, |
| 119105 | .unused, |
| 119106 | .unused, |
| 119107 | .unused, |
| 119108 | .unused, |
| 119109 | .unused, |
| 119110 | .unused, |
| 119111 | }, |
| 119112 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 119113 | .each = .{ .once = &.{ |
| 119114 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 119115 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 119116 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 119117 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119118 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 119119 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119120 | } }, |
| 119121 | }, .{ |
| 119122 | .required_features = .{ .sse2, null, null, null }, |
| 119123 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119124 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 119125 | .patterns = &.{ |
| 119126 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 119127 | }, |
| 119128 | .extra_temps = .{ |
| 119129 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119130 | .unused, |
| 119131 | .unused, |
| 119132 | .unused, |
| 119133 | .unused, |
| 119134 | .unused, |
| 119135 | .unused, |
| 119136 | .unused, |
| 119137 | .unused, |
| 119138 | .unused, |
| 119139 | .unused, |
| 119140 | }, |
| 119141 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 119142 | .each = .{ .once = &.{ |
| 119143 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 119144 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 119145 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 119146 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 119147 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 119148 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 119149 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 119150 | } }, |
| 119151 | }, .{ |
| 119152 | .required_features = .{ .avx, null, null, null }, |
| 119153 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119154 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 119155 | .patterns = &.{ |
| 119156 | .{ .src = .{ .to_sse, .none, .none } }, |
| 119157 | }, |
| 119158 | .extra_temps = .{ |
| 119159 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 119160 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ |
| 119161 | .ref = .src0, |
| 119162 | .invert = switch (mir_tag) { |
| 119163 | else => unreachable, |
| 119164 | .@"and" => true, |
| 119165 | .@"or", .xor => false, |
| 119166 | }, |
| 119167 | } } }, |
| 119168 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119169 | .unused, |
| 119170 | .unused, |
| 119171 | .unused, |
| 119172 | .unused, |
| 119173 | .unused, |
| 119174 | .unused, |
| 119175 | .unused, |
| 119176 | .unused, |
| 119177 | }, |
| 119178 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 119179 | .each = .{ .once = &.{ |
| 119180 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 119181 | .{ ._, .vp_, switch (mir_tag) { |
| 119182 | else => unreachable, |
| 119183 | .@"and" => .@"or", |
| 119184 | .@"or", .xor => .@"and", |
| 119185 | }, .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 119186 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119187 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119188 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 119189 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119190 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 119191 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119192 | } }, |
| 119193 | }, .{ |
| 119194 | .required_features = .{ .sse2, null, null, null }, |
| 119195 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119196 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 119197 | .patterns = &.{ |
| 119198 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 119199 | }, |
| 119200 | .extra_temps = .{ |
| 119201 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 119202 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ |
| 119203 | .ref = .src0, |
| 119204 | .invert = switch (mir_tag) { |
| 119205 | else => unreachable, |
| 119206 | .@"and" => true, |
| 119207 | .@"or", .xor => false, |
| 119208 | }, |
| 119209 | } } }, |
| 119210 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119211 | .unused, |
| 119212 | .unused, |
| 119213 | .unused, |
| 119214 | .unused, |
| 119215 | .unused, |
| 119216 | .unused, |
| 119217 | .unused, |
| 119218 | .unused, |
| 119219 | }, |
| 119220 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 119221 | .each = .{ .once = &.{ |
| 119222 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 119223 | .{ ._, .p_, switch (mir_tag) { |
| 119224 | else => unreachable, |
| 119225 | .@"and" => .@"or", |
| 119226 | .@"or", .xor => .@"and", |
| 119227 | }, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 119228 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119229 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 119230 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 119231 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 119232 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 119233 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 119234 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 119235 | } }, |
| 119236 | }, .{ |
| 119237 | .required_features = .{ .avx, null, null, null }, |
| 119238 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119239 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 119240 | .patterns = &.{ |
| 119241 | .{ .src = .{ .to_sse, .none, .none } }, |
| 119242 | }, |
| 119243 | .extra_temps = .{ |
| 119244 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119245 | .unused, |
| 119246 | .unused, |
| 119247 | .unused, |
| 119248 | .unused, |
| 119249 | .unused, |
| 119250 | .unused, |
| 119251 | .unused, |
| 119252 | .unused, |
| 119253 | .unused, |
| 119254 | .unused, |
| 119255 | }, |
| 119256 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 119257 | .each = .{ .once = &.{ |
| 119258 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 119259 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 119260 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 119261 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119262 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 119263 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119264 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 119265 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119266 | } }, |
| 119267 | }, .{ |
| 119268 | .required_features = .{ .sse2, null, null, null }, |
| 119269 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119270 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 119271 | .patterns = &.{ |
| 119272 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 119273 | }, |
| 119274 | .extra_temps = .{ |
| 119275 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119276 | .unused, |
| 119277 | .unused, |
| 119278 | .unused, |
| 119279 | .unused, |
| 119280 | .unused, |
| 119281 | .unused, |
| 119282 | .unused, |
| 119283 | .unused, |
| 119284 | .unused, |
| 119285 | .unused, |
| 119286 | }, |
| 119287 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 119288 | .each = .{ .once = &.{ |
| 119289 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 119290 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 119291 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 119292 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 119293 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 119294 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 119295 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 119296 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 119297 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 119298 | } }, |
| 119299 | }, .{ |
| 119300 | .required_features = .{ .avx, null, null, null }, |
| 119301 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119302 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 119303 | .patterns = &.{ |
| 119304 | .{ .src = .{ .to_sse, .none, .none } }, |
| 119305 | }, |
| 119306 | .extra_temps = .{ |
| 119307 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 119308 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ |
| 119309 | .ref = .src0, |
| 119310 | .invert = switch (mir_tag) { |
| 119311 | else => unreachable, |
| 119312 | .@"and" => true, |
| 119313 | .@"or", .xor => false, |
| 119314 | }, |
| 119315 | } } }, |
| 119316 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119317 | .unused, |
| 119318 | .unused, |
| 119319 | .unused, |
| 119320 | .unused, |
| 119321 | .unused, |
| 119322 | .unused, |
| 119323 | .unused, |
| 119324 | .unused, |
| 119325 | }, |
| 119326 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 119327 | .each = .{ .once = &.{ |
| 119328 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 119329 | .{ ._, .vp_, switch (mir_tag) { |
| 119330 | else => unreachable, |
| 119331 | .@"and" => .@"or", |
| 119332 | .@"or", .xor => .@"and", |
| 119333 | }, .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 119334 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119335 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119336 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119337 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119338 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 119339 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119340 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 119341 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119342 | } }, |
| 119343 | }, .{ |
| 119344 | .required_features = .{ .sse2, null, null, null }, |
| 119345 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119346 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 119347 | .patterns = &.{ |
| 119348 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 119349 | }, |
| 119350 | .extra_temps = .{ |
| 119351 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 119352 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ |
| 119353 | .ref = .src0, |
| 119354 | .invert = switch (mir_tag) { |
| 119355 | else => unreachable, |
| 119356 | .@"and" => true, |
| 119357 | .@"or", .xor => false, |
| 119358 | }, |
| 119359 | } } }, |
| 119360 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119361 | .unused, |
| 119362 | .unused, |
| 119363 | .unused, |
| 119364 | .unused, |
| 119365 | .unused, |
| 119366 | .unused, |
| 119367 | .unused, |
| 119368 | .unused, |
| 119369 | }, |
| 119370 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 119371 | .each = .{ .once = &.{ |
| 119372 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 119373 | .{ ._, .p_, switch (mir_tag) { |
| 119374 | else => unreachable, |
| 119375 | .@"and" => .@"or", |
| 119376 | .@"or", .xor => .@"and", |
| 119377 | }, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 119378 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119379 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 119380 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119381 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 119382 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 119383 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 119384 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 119385 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 119386 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 119387 | } }, |
| 119388 | }, .{ |
| 119389 | .required_features = .{ .avx2, null, null, null }, |
| 119390 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119391 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 119392 | .patterns = &.{ |
| 119393 | .{ .src = .{ .to_sse, .none, .none } }, |
| 119394 | }, |
| 119395 | .extra_temps = .{ |
| 119396 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119397 | .unused, |
| 119398 | .unused, |
| 119399 | .unused, |
| 119400 | .unused, |
| 119401 | .unused, |
| 119402 | .unused, |
| 119403 | .unused, |
| 119404 | .unused, |
| 119405 | .unused, |
| 119406 | .unused, |
| 119407 | }, |
| 119408 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 119409 | .each = .{ .once = &.{ |
| 119410 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 119411 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 119412 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 119413 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119414 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 119415 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119416 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 119417 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119418 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 119419 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119420 | } }, |
| 119421 | }, .{ |
| 119422 | .required_features = .{ .avx, null, null, null }, |
| 119423 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119424 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 119425 | .patterns = &.{ |
| 119426 | .{ .src = .{ .to_sse, .none, .none } }, |
| 119427 | }, |
| 119428 | .extra_temps = .{ |
| 119429 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119430 | .unused, |
| 119431 | .unused, |
| 119432 | .unused, |
| 119433 | .unused, |
| 119434 | .unused, |
| 119435 | .unused, |
| 119436 | .unused, |
| 119437 | .unused, |
| 119438 | .unused, |
| 119439 | .unused, |
| 119440 | }, |
| 119441 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 119442 | .each = .{ .once = &.{ |
| 119443 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 119444 | .{ ._, .v_ps, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 119445 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 119446 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119447 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 119448 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119449 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 119450 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119451 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 119452 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119453 | } }, |
| 119454 | }, .{ |
| 119455 | .required_features = .{ .avx2, null, null, null }, |
| 119456 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119457 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 119458 | .patterns = &.{ |
| 119459 | .{ .src = .{ .to_sse, .none, .none } }, |
| 119460 | }, |
| 119461 | .extra_temps = .{ |
| 119462 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 119463 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 119464 | .ref = .src0, |
| 119465 | .invert = switch (mir_tag) { |
| 119466 | else => unreachable, |
| 119467 | .@"and" => true, |
| 119468 | .@"or", .xor => false, |
| 119469 | }, |
| 119470 | } } }, |
| 119471 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119472 | .unused, |
| 119473 | .unused, |
| 119474 | .unused, |
| 119475 | .unused, |
| 119476 | .unused, |
| 119477 | .unused, |
| 119478 | .unused, |
| 119479 | .unused, |
| 119480 | }, |
| 119481 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 119482 | .each = .{ .once = &.{ |
| 119483 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 119484 | .{ ._, .vp_, switch (mir_tag) { |
| 119485 | else => unreachable, |
| 119486 | .@"and" => .@"or", |
| 119487 | .@"or", .xor => .@"and", |
| 119488 | }, .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 119489 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 119490 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119491 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119492 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119493 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119494 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119495 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 119496 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119497 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 119498 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119499 | } }, |
| 119500 | }, .{ |
| 119501 | .required_features = .{ .avx, null, null, null }, |
| 119502 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119503 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 119504 | .patterns = &.{ |
| 119505 | .{ .src = .{ .to_sse, .none, .none } }, |
| 119506 | }, |
| 119507 | .extra_temps = .{ |
| 119508 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 119509 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 119510 | .ref = .src0, |
| 119511 | .invert = switch (mir_tag) { |
| 119512 | else => unreachable, |
| 119513 | .@"and" => true, |
| 119514 | .@"or", .xor => false, |
| 119515 | }, |
| 119516 | } } }, |
| 119517 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119518 | .unused, |
| 119519 | .unused, |
| 119520 | .unused, |
| 119521 | .unused, |
| 119522 | .unused, |
| 119523 | .unused, |
| 119524 | .unused, |
| 119525 | .unused, |
| 119526 | }, |
| 119527 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 119528 | .each = .{ .once = &.{ |
| 119529 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 119530 | .{ ._, .v_ps, switch (mir_tag) { |
| 119531 | else => unreachable, |
| 119532 | .@"and" => .@"or", |
| 119533 | .@"or", .xor => .@"and", |
| 119534 | }, .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 119535 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 119536 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119537 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 119538 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119539 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 119540 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119541 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 119542 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119543 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 119544 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119545 | } }, |
| 119546 | }, .{ |
| 119547 | .required_features = .{ .avx512f, null, null, null }, |
| 119548 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119549 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 119550 | .patterns = &.{ |
| 119551 | .{ .src = .{ .to_mem, .none, .none } }, |
| 119552 | }, |
| 119553 | .extra_temps = .{ |
| 119554 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119555 | .unused, |
| 119556 | .unused, |
| 119557 | .unused, |
| 119558 | .unused, |
| 119559 | .unused, |
| 119560 | .unused, |
| 119561 | .unused, |
| 119562 | .unused, |
| 119563 | .unused, |
| 119564 | .unused, |
| 119565 | }, |
| 119566 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 119567 | .each = .{ .once = &.{ |
| 119568 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 119569 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 119570 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 119571 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119572 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 119573 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119574 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 119575 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119576 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 119577 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119578 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 119579 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 119580 | } }, |
| 119581 | }, .{ |
| 119582 | .required_features = .{ .avx512f, null, null, null }, |
| 119583 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119584 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 119585 | .patterns = &.{ |
| 119586 | .{ .src = .{ .to_mem, .none, .none } }, |
| 119587 | }, |
| 119588 | .extra_temps = .{ |
| 119589 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 119590 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ |
| 119591 | .ref = .src0, |
| 119592 | .invert = switch (mir_tag) { |
| 119593 | else => unreachable, |
| 119594 | .@"and" => true, |
| 119595 | .@"or", .xor => false, |
| 119596 | }, |
| 119597 | } } }, |
| 119598 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 119599 | .unused, |
| 119600 | .unused, |
| 119601 | .unused, |
| 119602 | .unused, |
| 119603 | .unused, |
| 119604 | .unused, |
| 119605 | .unused, |
| 119606 | .unused, |
| 119607 | }, |
| 119608 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 119609 | .each = .{ .once = &.{ |
| 119610 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 119611 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 119612 | .{ ._, .v_dqa, .mov, .tmp2y, .memd(.src0y, 32), ._, ._ }, |
| 119613 | .{ ._, .vp_, switch (mir_tag) { |
| 119614 | else => unreachable, |
| 119615 | .@"and" => .@"or", |
| 119616 | .@"or", .xor => .@"and", |
| 119617 | }, .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 119618 | .{ ._, .vp_, switch (mir_tag) { |
| 119619 | else => unreachable, |
| 119620 | .@"and" => .@"or", |
| 119621 | .@"or", .xor => .@"and", |
| 119622 | }, .tmp2y, .tmp2y, .lead(.tmp0y, 32), ._ }, |
| 119623 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .tmp2y, ._ }, |
| 119624 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 119625 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119626 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119627 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119628 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119629 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119630 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 119631 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119632 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 119633 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119634 | } }, |
| 119635 | }, .{ |
| 119636 | .required_features = .{ .avx2, null, null, null }, |
| 119637 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119638 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 119639 | .patterns = &.{ |
| 119640 | .{ .src = .{ .to_mem, .none, .none } }, |
| 119641 | }, |
| 119642 | .extra_temps = .{ |
| 119643 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 119644 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119645 | .unused, |
| 119646 | .unused, |
| 119647 | .unused, |
| 119648 | .unused, |
| 119649 | .unused, |
| 119650 | .unused, |
| 119651 | .unused, |
| 119652 | .unused, |
| 119653 | .unused, |
| 119654 | }, |
| 119655 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 119656 | .clobbers = .{ .eflags = true }, |
| 119657 | .each = .{ .once = &.{ |
| 119658 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 119659 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 119660 | .{ .@"0:", .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 119661 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 119662 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 119663 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 119664 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 119665 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 119666 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 119667 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 119668 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 119669 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 119670 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 119671 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 119672 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 119673 | } }, |
| 119674 | }, .{ |
| 119675 | .required_features = .{ .avx, null, null, null }, |
| 119676 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119677 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 119678 | .patterns = &.{ |
| 119679 | .{ .src = .{ .to_mem, .none, .none } }, |
| 119680 | }, |
| 119681 | .extra_temps = .{ |
| 119682 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 119683 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119684 | .unused, |
| 119685 | .unused, |
| 119686 | .unused, |
| 119687 | .unused, |
| 119688 | .unused, |
| 119689 | .unused, |
| 119690 | .unused, |
| 119691 | .unused, |
| 119692 | .unused, |
| 119693 | }, |
| 119694 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 119695 | .clobbers = .{ .eflags = true }, |
| 119696 | .each = .{ .once = &.{ |
| 119697 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 119698 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 119699 | .{ .@"0:", .v_ps, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 119700 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 119701 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 119702 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 119703 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 119704 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 119705 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 119706 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 119707 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 119708 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 119709 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 119710 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 119711 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 119712 | } }, |
| 119713 | }, .{ |
| 119714 | .required_features = .{ .sse2, null, null, null }, |
| 119715 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119716 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 119717 | .patterns = &.{ |
| 119718 | .{ .src = .{ .to_mem, .none, .none } }, |
| 119719 | }, |
| 119720 | .extra_temps = .{ |
| 119721 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 119722 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119723 | .unused, |
| 119724 | .unused, |
| 119725 | .unused, |
| 119726 | .unused, |
| 119727 | .unused, |
| 119728 | .unused, |
| 119729 | .unused, |
| 119730 | .unused, |
| 119731 | .unused, |
| 119732 | }, |
| 119733 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 119734 | .clobbers = .{ .eflags = true }, |
| 119735 | .each = .{ .once = &.{ |
| 119736 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 119737 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 119738 | .{ .@"0:", .p_, mir_tag, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 119739 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 119740 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 119741 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 119742 | .{ ._, .p_, mir_tag, .dst0x, .tmp1x, ._, ._ }, |
| 119743 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 119744 | .{ ._, .p_, mir_tag, .dst0x, .tmp1x, ._, ._ }, |
| 119745 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 119746 | .{ ._, .p_, mir_tag, .dst0x, .tmp1x, ._, ._ }, |
| 119747 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 119748 | .{ ._, .p_w, .srl, .tmp1x, .ui(8), ._, ._ }, |
| 119749 | .{ ._, .p_, mir_tag, .dst0x, .tmp1x, ._, ._ }, |
| 119750 | } }, |
| 119751 | }, .{ |
| 119752 | .required_features = .{ .avx512f, null, null, null }, |
| 119753 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119754 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 119755 | .patterns = &.{ |
| 119756 | .{ .src = .{ .to_mem, .none, .none } }, |
| 119757 | }, |
| 119758 | .extra_temps = .{ |
| 119759 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 119760 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ |
| 119761 | .ref = .src0, |
| 119762 | .invert = switch (mir_tag) { |
| 119763 | else => unreachable, |
| 119764 | .@"and" => true, |
| 119765 | .@"or", .xor => false, |
| 119766 | }, |
| 119767 | } } }, |
| 119768 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 119769 | .unused, |
| 119770 | .unused, |
| 119771 | .unused, |
| 119772 | .unused, |
| 119773 | .unused, |
| 119774 | .unused, |
| 119775 | .unused, |
| 119776 | .unused, |
| 119777 | }, |
| 119778 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 119779 | .clobbers = .{ .eflags = true }, |
| 119780 | .each = .{ .once = &.{ |
| 119781 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 119782 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 119783 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 119784 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 119785 | .{ ._, .vp_, switch (mir_tag) { |
| 119786 | else => unreachable, |
| 119787 | .@"and" => .@"or", |
| 119788 | .@"or", .xor => .@"and", |
| 119789 | }, .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 119790 | .{ ._, .vp_, switch (mir_tag) { |
| 119791 | else => unreachable, |
| 119792 | .@"and" => .@"or", |
| 119793 | .@"or", .xor => .@"and", |
| 119794 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 119795 | .{ .@"0:", .vp_, mir_tag, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 119796 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 119797 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 119798 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 119799 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .tmp2y, ._ }, |
| 119800 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 119801 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119802 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119803 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119804 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119805 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119806 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 119807 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119808 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 119809 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119810 | } }, |
| 119811 | }, .{ |
| 119812 | .required_features = .{ .avx2, null, null, null }, |
| 119813 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119814 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 119815 | .patterns = &.{ |
| 119816 | .{ .src = .{ .to_mem, .none, .none } }, |
| 119817 | }, |
| 119818 | .extra_temps = .{ |
| 119819 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 119820 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 119821 | .ref = .src0, |
| 119822 | .invert = switch (mir_tag) { |
| 119823 | else => unreachable, |
| 119824 | .@"and" => true, |
| 119825 | .@"or", .xor => false, |
| 119826 | }, |
| 119827 | } } }, |
| 119828 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119829 | .unused, |
| 119830 | .unused, |
| 119831 | .unused, |
| 119832 | .unused, |
| 119833 | .unused, |
| 119834 | .unused, |
| 119835 | .unused, |
| 119836 | .unused, |
| 119837 | }, |
| 119838 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 119839 | .clobbers = .{ .eflags = true }, |
| 119840 | .each = .{ .once = &.{ |
| 119841 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 119842 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 119843 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 119844 | .{ ._, .vp_, switch (mir_tag) { |
| 119845 | else => unreachable, |
| 119846 | .@"and" => .@"or", |
| 119847 | .@"or", .xor => .@"and", |
| 119848 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 119849 | .{ .@"0:", .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 119850 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 119851 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 119852 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 119853 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119854 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119855 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119856 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119857 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119858 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 119859 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119860 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 119861 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119862 | } }, |
| 119863 | }, .{ |
| 119864 | .required_features = .{ .avx, null, null, null }, |
| 119865 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119866 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 119867 | .patterns = &.{ |
| 119868 | .{ .src = .{ .to_mem, .none, .none } }, |
| 119869 | }, |
| 119870 | .extra_temps = .{ |
| 119871 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 119872 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 119873 | .ref = .src0, |
| 119874 | .invert = switch (mir_tag) { |
| 119875 | else => unreachable, |
| 119876 | .@"and" => true, |
| 119877 | .@"or", .xor => false, |
| 119878 | }, |
| 119879 | } } }, |
| 119880 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119881 | .unused, |
| 119882 | .unused, |
| 119883 | .unused, |
| 119884 | .unused, |
| 119885 | .unused, |
| 119886 | .unused, |
| 119887 | .unused, |
| 119888 | .unused, |
| 119889 | }, |
| 119890 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 119891 | .clobbers = .{ .eflags = true }, |
| 119892 | .each = .{ .once = &.{ |
| 119893 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 119894 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 119895 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 119896 | .{ ._, .v_ps, switch (mir_tag) { |
| 119897 | else => unreachable, |
| 119898 | .@"and" => .@"or", |
| 119899 | .@"or", .xor => .@"and", |
| 119900 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 119901 | .{ .@"0:", .v_ps, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 119902 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 119903 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 119904 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 119905 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119906 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 119907 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119908 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 119909 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119910 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 119911 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119912 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 119913 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 119914 | } }, |
| 119915 | }, .{ |
| 119916 | .required_features = .{ .sse2, null, null, null }, |
| 119917 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119918 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 119919 | .patterns = &.{ |
| 119920 | .{ .src = .{ .to_mem, .none, .none } }, |
| 119921 | }, |
| 119922 | .extra_temps = .{ |
| 119923 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 119924 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ |
| 119925 | .ref = .src0, |
| 119926 | .invert = switch (mir_tag) { |
| 119927 | else => unreachable, |
| 119928 | .@"and" => true, |
| 119929 | .@"or", .xor => false, |
| 119930 | }, |
| 119931 | } } }, |
| 119932 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 119933 | .unused, |
| 119934 | .unused, |
| 119935 | .unused, |
| 119936 | .unused, |
| 119937 | .unused, |
| 119938 | .unused, |
| 119939 | .unused, |
| 119940 | .unused, |
| 119941 | }, |
| 119942 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 119943 | .clobbers = .{ .eflags = true }, |
| 119944 | .each = .{ .once = &.{ |
| 119945 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 119946 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 119947 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 119948 | .{ ._, .p_, switch (mir_tag) { |
| 119949 | else => unreachable, |
| 119950 | .@"and" => .@"or", |
| 119951 | .@"or", .xor => .@"and", |
| 119952 | }, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 119953 | .{ .@"0:", .p_, mir_tag, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 119954 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 119955 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 119956 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119957 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 119958 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 119959 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 119960 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 119961 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 119962 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 119963 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 119964 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 119965 | } }, |
| 119966 | }, .{ |
| 119967 | .required_features = .{ .slow_incdec, null, null, null }, |
| 119968 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119969 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 119970 | .patterns = &.{ |
| 119971 | .{ .src = .{ .to_mem, .none, .none } }, |
| 119972 | }, |
| 119973 | .extra_temps = .{ |
| 119974 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 119975 | .unused, |
| 119976 | .unused, |
| 119977 | .unused, |
| 119978 | .unused, |
| 119979 | .unused, |
| 119980 | .unused, |
| 119981 | .unused, |
| 119982 | .unused, |
| 119983 | .unused, |
| 119984 | .unused, |
| 119985 | }, |
| 119986 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 119987 | .clobbers = .{ .eflags = true }, |
| 119988 | .each = .{ .once = &.{ |
| 119989 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 119990 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 119991 | .{ .@"0:", ._, mir_tag, .dst0b, .memi(.src0b, .tmp0), ._, ._ }, |
| 119992 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| 119993 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 119994 | } }, |
| 119995 | }, .{ |
| 119996 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 119997 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 119998 | .patterns = &.{ |
| 119999 | .{ .src = .{ .to_mem, .none, .none } }, |
| 120000 | }, |
| 120001 | .extra_temps = .{ |
| 120002 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 120003 | .unused, |
| 120004 | .unused, |
| 120005 | .unused, |
| 120006 | .unused, |
| 120007 | .unused, |
| 120008 | .unused, |
| 120009 | .unused, |
| 120010 | .unused, |
| 120011 | .unused, |
| 120012 | .unused, |
| 120013 | }, |
| 120014 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 120015 | .clobbers = .{ .eflags = true }, |
| 120016 | .each = .{ .once = &.{ |
| 120017 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 120018 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 120019 | .{ .@"0:", ._, mir_tag, .dst0b, .memi(.src0b, .tmp0), ._, ._ }, |
| 120020 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| 120021 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| 120022 | } }, |
| 120023 | }, .{ |
| 120024 | .required_features = .{ .avx, null, null, null }, |
| 120025 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120026 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 120027 | .patterns = &.{ |
| 120028 | .{ .src = .{ .to_sse, .none, .none } }, |
| 120029 | }, |
| 120030 | .extra_temps = .{ |
| 120031 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120032 | .unused, |
| 120033 | .unused, |
| 120034 | .unused, |
| 120035 | .unused, |
| 120036 | .unused, |
| 120037 | .unused, |
| 120038 | .unused, |
| 120039 | .unused, |
| 120040 | .unused, |
| 120041 | .unused, |
| 120042 | }, |
| 120043 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 120044 | .each = .{ .once = &.{ |
| 120045 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 120046 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 120047 | } }, |
| 120048 | }, .{ |
| 120049 | .required_features = .{ .sse2, null, null, null }, |
| 120050 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120051 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 120052 | .patterns = &.{ |
| 120053 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 120054 | }, |
| 120055 | .extra_temps = .{ |
| 120056 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120057 | .unused, |
| 120058 | .unused, |
| 120059 | .unused, |
| 120060 | .unused, |
| 120061 | .unused, |
| 120062 | .unused, |
| 120063 | .unused, |
| 120064 | .unused, |
| 120065 | .unused, |
| 120066 | .unused, |
| 120067 | }, |
| 120068 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 120069 | .each = .{ .once = &.{ |
| 120070 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 120071 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 120072 | } }, |
| 120073 | }, .{ |
| 120074 | .required_features = .{ .avx, null, null, null }, |
| 120075 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120076 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 120077 | .patterns = &.{ |
| 120078 | .{ .src = .{ .to_sse, .none, .none } }, |
| 120079 | }, |
| 120080 | .extra_temps = .{ |
| 120081 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120082 | .unused, |
| 120083 | .unused, |
| 120084 | .unused, |
| 120085 | .unused, |
| 120086 | .unused, |
| 120087 | .unused, |
| 120088 | .unused, |
| 120089 | .unused, |
| 120090 | .unused, |
| 120091 | .unused, |
| 120092 | }, |
| 120093 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 120094 | .each = .{ .once = &.{ |
| 120095 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 120096 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 120097 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 120098 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120099 | } }, |
| 120100 | }, .{ |
| 120101 | .required_features = .{ .sse2, null, null, null }, |
| 120102 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120103 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 120104 | .patterns = &.{ |
| 120105 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 120106 | }, |
| 120107 | .extra_temps = .{ |
| 120108 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120109 | .unused, |
| 120110 | .unused, |
| 120111 | .unused, |
| 120112 | .unused, |
| 120113 | .unused, |
| 120114 | .unused, |
| 120115 | .unused, |
| 120116 | .unused, |
| 120117 | .unused, |
| 120118 | .unused, |
| 120119 | }, |
| 120120 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 120121 | .each = .{ .once = &.{ |
| 120122 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 120123 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 120124 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 120125 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 120126 | } }, |
| 120127 | }, .{ |
| 120128 | .required_features = .{ .avx, null, null, null }, |
| 120129 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120130 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 120131 | .patterns = &.{ |
| 120132 | .{ .src = .{ .to_sse, .none, .none } }, |
| 120133 | }, |
| 120134 | .extra_temps = .{ |
| 120135 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120136 | .unused, |
| 120137 | .unused, |
| 120138 | .unused, |
| 120139 | .unused, |
| 120140 | .unused, |
| 120141 | .unused, |
| 120142 | .unused, |
| 120143 | .unused, |
| 120144 | .unused, |
| 120145 | .unused, |
| 120146 | }, |
| 120147 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 120148 | .each = .{ .once = &.{ |
| 120149 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 120150 | .{ ._, .vp_, mir_tag, .tmp0x, .src0x, .tmp0x, ._ }, |
| 120151 | .{ ._, .vp_w, .shufl, .dst0x, .src0x, .ui(0b01), ._ }, |
| 120152 | .{ ._, .vp_, mir_tag, .dst0x, .tmp0x, .dst0x, ._ }, |
| 120153 | } }, |
| 120154 | }, .{ |
| 120155 | .required_features = .{ .sse2, null, null, null }, |
| 120156 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120157 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 120158 | .patterns = &.{ |
| 120159 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 120160 | }, |
| 120161 | .extra_temps = .{ |
| 120162 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120163 | .unused, |
| 120164 | .unused, |
| 120165 | .unused, |
| 120166 | .unused, |
| 120167 | .unused, |
| 120168 | .unused, |
| 120169 | .unused, |
| 120170 | .unused, |
| 120171 | .unused, |
| 120172 | .unused, |
| 120173 | }, |
| 120174 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 120175 | .each = .{ .once = &.{ |
| 120176 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 120177 | .{ ._, .p_, mir_tag, .tmp0x, .src0x, ._, ._ }, |
| 120178 | .{ ._, .p_w, .shufl, .dst0x, .src0x, .ui(0b01), ._ }, |
| 120179 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 120180 | } }, |
| 120181 | }, .{ |
| 120182 | .required_features = .{ .avx, null, null, null }, |
| 120183 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120184 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 120185 | .patterns = &.{ |
| 120186 | .{ .src = .{ .to_sse, .none, .none } }, |
| 120187 | }, |
| 120188 | .extra_temps = .{ |
| 120189 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120190 | .unused, |
| 120191 | .unused, |
| 120192 | .unused, |
| 120193 | .unused, |
| 120194 | .unused, |
| 120195 | .unused, |
| 120196 | .unused, |
| 120197 | .unused, |
| 120198 | .unused, |
| 120199 | .unused, |
| 120200 | }, |
| 120201 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 120202 | .each = .{ .once = &.{ |
| 120203 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 120204 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 120205 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 120206 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120207 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 120208 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120209 | } }, |
| 120210 | }, .{ |
| 120211 | .required_features = .{ .sse2, null, null, null }, |
| 120212 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120213 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 120214 | .patterns = &.{ |
| 120215 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 120216 | }, |
| 120217 | .extra_temps = .{ |
| 120218 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120219 | .unused, |
| 120220 | .unused, |
| 120221 | .unused, |
| 120222 | .unused, |
| 120223 | .unused, |
| 120224 | .unused, |
| 120225 | .unused, |
| 120226 | .unused, |
| 120227 | .unused, |
| 120228 | .unused, |
| 120229 | }, |
| 120230 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 120231 | .each = .{ .once = &.{ |
| 120232 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 120233 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 120234 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 120235 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 120236 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 120237 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 120238 | } }, |
| 120239 | }, .{ |
| 120240 | .required_features = .{ .avx, null, null, null }, |
| 120241 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120242 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 120243 | .patterns = &.{ |
| 120244 | .{ .src = .{ .to_sse, .none, .none } }, |
| 120245 | }, |
| 120246 | .extra_temps = .{ |
| 120247 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 120248 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ |
| 120249 | .ref = .src0, |
| 120250 | .invert = switch (mir_tag) { |
| 120251 | else => unreachable, |
| 120252 | .@"and" => true, |
| 120253 | .@"or", .xor => false, |
| 120254 | }, |
| 120255 | } } }, |
| 120256 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120257 | .unused, |
| 120258 | .unused, |
| 120259 | .unused, |
| 120260 | .unused, |
| 120261 | .unused, |
| 120262 | .unused, |
| 120263 | .unused, |
| 120264 | .unused, |
| 120265 | }, |
| 120266 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 120267 | .each = .{ .once = &.{ |
| 120268 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 120269 | .{ ._, .vp_, switch (mir_tag) { |
| 120270 | else => unreachable, |
| 120271 | .@"and" => .@"or", |
| 120272 | .@"or", .xor => .@"and", |
| 120273 | }, .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 120274 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120275 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120276 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120277 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120278 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 120279 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120280 | } }, |
| 120281 | }, .{ |
| 120282 | .required_features = .{ .sse2, null, null, null }, |
| 120283 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120284 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 120285 | .patterns = &.{ |
| 120286 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 120287 | }, |
| 120288 | .extra_temps = .{ |
| 120289 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 120290 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ |
| 120291 | .ref = .src0, |
| 120292 | .invert = switch (mir_tag) { |
| 120293 | else => unreachable, |
| 120294 | .@"and" => true, |
| 120295 | .@"or", .xor => false, |
| 120296 | }, |
| 120297 | } } }, |
| 120298 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120299 | .unused, |
| 120300 | .unused, |
| 120301 | .unused, |
| 120302 | .unused, |
| 120303 | .unused, |
| 120304 | .unused, |
| 120305 | .unused, |
| 120306 | .unused, |
| 120307 | }, |
| 120308 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 120309 | .each = .{ .once = &.{ |
| 120310 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 120311 | .{ ._, .p_, switch (mir_tag) { |
| 120312 | else => unreachable, |
| 120313 | .@"and" => .@"or", |
| 120314 | .@"or", .xor => .@"and", |
| 120315 | }, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 120316 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120317 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 120318 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120319 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 120320 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 120321 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 120322 | } }, |
| 120323 | }, .{ |
| 120324 | .required_features = .{ .avx2, null, null, null }, |
| 120325 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120326 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 120327 | .patterns = &.{ |
| 120328 | .{ .src = .{ .to_sse, .none, .none } }, |
| 120329 | }, |
| 120330 | .extra_temps = .{ |
| 120331 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120332 | .unused, |
| 120333 | .unused, |
| 120334 | .unused, |
| 120335 | .unused, |
| 120336 | .unused, |
| 120337 | .unused, |
| 120338 | .unused, |
| 120339 | .unused, |
| 120340 | .unused, |
| 120341 | .unused, |
| 120342 | }, |
| 120343 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 120344 | .each = .{ .once = &.{ |
| 120345 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 120346 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 120347 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 120348 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120349 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 120350 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120351 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 120352 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120353 | } }, |
| 120354 | }, .{ |
| 120355 | .required_features = .{ .avx, null, null, null }, |
| 120356 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120357 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 120358 | .patterns = &.{ |
| 120359 | .{ .src = .{ .to_sse, .none, .none } }, |
| 120360 | }, |
| 120361 | .extra_temps = .{ |
| 120362 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120363 | .unused, |
| 120364 | .unused, |
| 120365 | .unused, |
| 120366 | .unused, |
| 120367 | .unused, |
| 120368 | .unused, |
| 120369 | .unused, |
| 120370 | .unused, |
| 120371 | .unused, |
| 120372 | .unused, |
| 120373 | }, |
| 120374 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 120375 | .each = .{ .once = &.{ |
| 120376 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 120377 | .{ ._, .v_ps, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 120378 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 120379 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120380 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 120381 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120382 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 120383 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120384 | } }, |
| 120385 | }, .{ |
| 120386 | .required_features = .{ .avx2, null, null, null }, |
| 120387 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120388 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 120389 | .patterns = &.{ |
| 120390 | .{ .src = .{ .to_sse, .none, .none } }, |
| 120391 | }, |
| 120392 | .extra_temps = .{ |
| 120393 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 120394 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 120395 | .ref = .src0, |
| 120396 | .invert = switch (mir_tag) { |
| 120397 | else => unreachable, |
| 120398 | .@"and" => true, |
| 120399 | .@"or", .xor => false, |
| 120400 | }, |
| 120401 | } } }, |
| 120402 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120403 | .unused, |
| 120404 | .unused, |
| 120405 | .unused, |
| 120406 | .unused, |
| 120407 | .unused, |
| 120408 | .unused, |
| 120409 | .unused, |
| 120410 | .unused, |
| 120411 | }, |
| 120412 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 120413 | .each = .{ .once = &.{ |
| 120414 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 120415 | .{ ._, .vp_, switch (mir_tag) { |
| 120416 | else => unreachable, |
| 120417 | .@"and" => .@"or", |
| 120418 | .@"or", .xor => .@"and", |
| 120419 | }, .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 120420 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 120421 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120422 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120423 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120424 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120425 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120426 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 120427 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120428 | } }, |
| 120429 | }, .{ |
| 120430 | .required_features = .{ .avx, null, null, null }, |
| 120431 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120432 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 120433 | .patterns = &.{ |
| 120434 | .{ .src = .{ .to_sse, .none, .none } }, |
| 120435 | }, |
| 120436 | .extra_temps = .{ |
| 120437 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 120438 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 120439 | .ref = .src0, |
| 120440 | .invert = switch (mir_tag) { |
| 120441 | else => unreachable, |
| 120442 | .@"and" => true, |
| 120443 | .@"or", .xor => false, |
| 120444 | }, |
| 120445 | } } }, |
| 120446 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120447 | .unused, |
| 120448 | .unused, |
| 120449 | .unused, |
| 120450 | .unused, |
| 120451 | .unused, |
| 120452 | .unused, |
| 120453 | .unused, |
| 120454 | .unused, |
| 120455 | }, |
| 120456 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 120457 | .each = .{ .once = &.{ |
| 120458 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 120459 | .{ ._, .v_ps, switch (mir_tag) { |
| 120460 | else => unreachable, |
| 120461 | .@"and" => .@"or", |
| 120462 | .@"or", .xor => .@"and", |
| 120463 | }, .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 120464 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 120465 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120466 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 120467 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120468 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 120469 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120470 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 120471 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120472 | } }, |
| 120473 | }, .{ |
| 120474 | .required_features = .{ .avx512f, null, null, null }, |
| 120475 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120476 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 120477 | .patterns = &.{ |
| 120478 | .{ .src = .{ .to_mem, .none, .none } }, |
| 120479 | }, |
| 120480 | .extra_temps = .{ |
| 120481 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120482 | .unused, |
| 120483 | .unused, |
| 120484 | .unused, |
| 120485 | .unused, |
| 120486 | .unused, |
| 120487 | .unused, |
| 120488 | .unused, |
| 120489 | .unused, |
| 120490 | .unused, |
| 120491 | .unused, |
| 120492 | }, |
| 120493 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 120494 | .each = .{ .once = &.{ |
| 120495 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 120496 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 120497 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 120498 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120499 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 120500 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120501 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 120502 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120503 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 120504 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120505 | } }, |
| 120506 | }, .{ |
| 120507 | .required_features = .{ .avx512f, null, null, null }, |
| 120508 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120509 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 120510 | .patterns = &.{ |
| 120511 | .{ .src = .{ .to_mem, .none, .none } }, |
| 120512 | }, |
| 120513 | .extra_temps = .{ |
| 120514 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 120515 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ |
| 120516 | .ref = .src0, |
| 120517 | .invert = switch (mir_tag) { |
| 120518 | else => unreachable, |
| 120519 | .@"and" => true, |
| 120520 | .@"or", .xor => false, |
| 120521 | }, |
| 120522 | } } }, |
| 120523 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 120524 | .unused, |
| 120525 | .unused, |
| 120526 | .unused, |
| 120527 | .unused, |
| 120528 | .unused, |
| 120529 | .unused, |
| 120530 | .unused, |
| 120531 | .unused, |
| 120532 | }, |
| 120533 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 120534 | .each = .{ .once = &.{ |
| 120535 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 120536 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 120537 | .{ ._, .v_dqa, .mov, .tmp2y, .memd(.src0y, 32), ._, ._ }, |
| 120538 | .{ ._, .vp_, switch (mir_tag) { |
| 120539 | else => unreachable, |
| 120540 | .@"and" => .@"or", |
| 120541 | .@"or", .xor => .@"and", |
| 120542 | }, .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 120543 | .{ ._, .vp_, switch (mir_tag) { |
| 120544 | else => unreachable, |
| 120545 | .@"and" => .@"or", |
| 120546 | .@"or", .xor => .@"and", |
| 120547 | }, .tmp2y, .tmp2y, .lead(.tmp0y, 32), ._ }, |
| 120548 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .tmp2y, ._ }, |
| 120549 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 120550 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120551 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120552 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120553 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120554 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120555 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 120556 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120557 | } }, |
| 120558 | }, .{ |
| 120559 | .required_features = .{ .avx2, null, null, null }, |
| 120560 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120561 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 120562 | .patterns = &.{ |
| 120563 | .{ .src = .{ .to_mem, .none, .none } }, |
| 120564 | }, |
| 120565 | .extra_temps = .{ |
| 120566 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 120567 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120568 | .unused, |
| 120569 | .unused, |
| 120570 | .unused, |
| 120571 | .unused, |
| 120572 | .unused, |
| 120573 | .unused, |
| 120574 | .unused, |
| 120575 | .unused, |
| 120576 | .unused, |
| 120577 | }, |
| 120578 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 120579 | .clobbers = .{ .eflags = true }, |
| 120580 | .each = .{ .once = &.{ |
| 120581 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 120582 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 120583 | .{ .@"0:", .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 120584 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 120585 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 120586 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 120587 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 120588 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 120589 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 120590 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 120591 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 120592 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 120593 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 120594 | } }, |
| 120595 | }, .{ |
| 120596 | .required_features = .{ .avx, null, null, null }, |
| 120597 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120598 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 120599 | .patterns = &.{ |
| 120600 | .{ .src = .{ .to_mem, .none, .none } }, |
| 120601 | }, |
| 120602 | .extra_temps = .{ |
| 120603 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 120604 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120605 | .unused, |
| 120606 | .unused, |
| 120607 | .unused, |
| 120608 | .unused, |
| 120609 | .unused, |
| 120610 | .unused, |
| 120611 | .unused, |
| 120612 | .unused, |
| 120613 | .unused, |
| 120614 | }, |
| 120615 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 120616 | .clobbers = .{ .eflags = true }, |
| 120617 | .each = .{ .once = &.{ |
| 120618 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 120619 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 120620 | .{ .@"0:", .v_ps, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 120621 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 120622 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 120623 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 120624 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 120625 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 120626 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 120627 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 120628 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 120629 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 120630 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 120631 | } }, |
| 120632 | }, .{ |
| 120633 | .required_features = .{ .sse2, null, null, null }, |
| 120634 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120635 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 120636 | .patterns = &.{ |
| 120637 | .{ .src = .{ .to_mem, .none, .none } }, |
| 120638 | }, |
| 120639 | .extra_temps = .{ |
| 120640 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 120641 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120642 | .unused, |
| 120643 | .unused, |
| 120644 | .unused, |
| 120645 | .unused, |
| 120646 | .unused, |
| 120647 | .unused, |
| 120648 | .unused, |
| 120649 | .unused, |
| 120650 | .unused, |
| 120651 | }, |
| 120652 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 120653 | .clobbers = .{ .eflags = true }, |
| 120654 | .each = .{ .once = &.{ |
| 120655 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 120656 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 120657 | .{ .@"0:", .p_, mir_tag, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 120658 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 120659 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 120660 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 120661 | .{ ._, .p_, mir_tag, .dst0x, .tmp1x, ._, ._ }, |
| 120662 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 120663 | .{ ._, .p_, mir_tag, .dst0x, .tmp1x, ._, ._ }, |
| 120664 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 120665 | .{ ._, .p_, mir_tag, .dst0x, .tmp1x, ._, ._ }, |
| 120666 | } }, |
| 120667 | }, .{ |
| 120668 | .required_features = .{ .avx512f, null, null, null }, |
| 120669 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120670 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 120671 | .patterns = &.{ |
| 120672 | .{ .src = .{ .to_mem, .none, .none } }, |
| 120673 | }, |
| 120674 | .extra_temps = .{ |
| 120675 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 120676 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ |
| 120677 | .ref = .src0, |
| 120678 | .invert = switch (mir_tag) { |
| 120679 | else => unreachable, |
| 120680 | .@"and" => true, |
| 120681 | .@"or", .xor => false, |
| 120682 | }, |
| 120683 | } } }, |
| 120684 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 120685 | .unused, |
| 120686 | .unused, |
| 120687 | .unused, |
| 120688 | .unused, |
| 120689 | .unused, |
| 120690 | .unused, |
| 120691 | .unused, |
| 120692 | .unused, |
| 120693 | }, |
| 120694 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 120695 | .clobbers = .{ .eflags = true }, |
| 120696 | .each = .{ .once = &.{ |
| 120697 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 120698 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 120699 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 120700 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 120701 | .{ ._, .vp_, switch (mir_tag) { |
| 120702 | else => unreachable, |
| 120703 | .@"and" => .@"or", |
| 120704 | .@"or", .xor => .@"and", |
| 120705 | }, .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 120706 | .{ ._, .vp_, switch (mir_tag) { |
| 120707 | else => unreachable, |
| 120708 | .@"and" => .@"or", |
| 120709 | .@"or", .xor => .@"and", |
| 120710 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 120711 | .{ .@"0:", .vp_, mir_tag, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 120712 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 120713 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 120714 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 120715 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .tmp2y, ._ }, |
| 120716 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 120717 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120718 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120719 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120720 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120721 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120722 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 120723 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120724 | } }, |
| 120725 | }, .{ |
| 120726 | .required_features = .{ .avx2, null, null, null }, |
| 120727 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120728 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 120729 | .patterns = &.{ |
| 120730 | .{ .src = .{ .to_mem, .none, .none } }, |
| 120731 | }, |
| 120732 | .extra_temps = .{ |
| 120733 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 120734 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 120735 | .ref = .src0, |
| 120736 | .invert = switch (mir_tag) { |
| 120737 | else => unreachable, |
| 120738 | .@"and" => true, |
| 120739 | .@"or", .xor => false, |
| 120740 | }, |
| 120741 | } } }, |
| 120742 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120743 | .unused, |
| 120744 | .unused, |
| 120745 | .unused, |
| 120746 | .unused, |
| 120747 | .unused, |
| 120748 | .unused, |
| 120749 | .unused, |
| 120750 | .unused, |
| 120751 | }, |
| 120752 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 120753 | .clobbers = .{ .eflags = true }, |
| 120754 | .each = .{ .once = &.{ |
| 120755 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 120756 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 120757 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 120758 | .{ ._, .vp_, switch (mir_tag) { |
| 120759 | else => unreachable, |
| 120760 | .@"and" => .@"or", |
| 120761 | .@"or", .xor => .@"and", |
| 120762 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 120763 | .{ .@"0:", .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 120764 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 120765 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 120766 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 120767 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120768 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120769 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120770 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120771 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120772 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 120773 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120774 | } }, |
| 120775 | }, .{ |
| 120776 | .required_features = .{ .avx, null, null, null }, |
| 120777 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120778 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 120779 | .patterns = &.{ |
| 120780 | .{ .src = .{ .to_mem, .none, .none } }, |
| 120781 | }, |
| 120782 | .extra_temps = .{ |
| 120783 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 120784 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 120785 | .ref = .src0, |
| 120786 | .invert = switch (mir_tag) { |
| 120787 | else => unreachable, |
| 120788 | .@"and" => true, |
| 120789 | .@"or", .xor => false, |
| 120790 | }, |
| 120791 | } } }, |
| 120792 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120793 | .unused, |
| 120794 | .unused, |
| 120795 | .unused, |
| 120796 | .unused, |
| 120797 | .unused, |
| 120798 | .unused, |
| 120799 | .unused, |
| 120800 | .unused, |
| 120801 | }, |
| 120802 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 120803 | .clobbers = .{ .eflags = true }, |
| 120804 | .each = .{ .once = &.{ |
| 120805 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 120806 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 120807 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 120808 | .{ ._, .v_ps, switch (mir_tag) { |
| 120809 | else => unreachable, |
| 120810 | .@"and" => .@"or", |
| 120811 | .@"or", .xor => .@"and", |
| 120812 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 120813 | .{ .@"0:", .v_ps, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 120814 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 120815 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 120816 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 120817 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120818 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 120819 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120820 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 120821 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120822 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 120823 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 120824 | } }, |
| 120825 | }, .{ |
| 120826 | .required_features = .{ .sse2, null, null, null }, |
| 120827 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120828 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 120829 | .patterns = &.{ |
| 120830 | .{ .src = .{ .to_mem, .none, .none } }, |
| 120831 | }, |
| 120832 | .extra_temps = .{ |
| 120833 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 120834 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ |
| 120835 | .ref = .src0, |
| 120836 | .invert = switch (mir_tag) { |
| 120837 | else => unreachable, |
| 120838 | .@"and" => true, |
| 120839 | .@"or", .xor => false, |
| 120840 | }, |
| 120841 | } } }, |
| 120842 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 120843 | .unused, |
| 120844 | .unused, |
| 120845 | .unused, |
| 120846 | .unused, |
| 120847 | .unused, |
| 120848 | .unused, |
| 120849 | .unused, |
| 120850 | .unused, |
| 120851 | }, |
| 120852 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 120853 | .clobbers = .{ .eflags = true }, |
| 120854 | .each = .{ .once = &.{ |
| 120855 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 120856 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 120857 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 120858 | .{ ._, .p_, switch (mir_tag) { |
| 120859 | else => unreachable, |
| 120860 | .@"and" => .@"or", |
| 120861 | .@"or", .xor => .@"and", |
| 120862 | }, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 120863 | .{ .@"0:", .p_, mir_tag, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 120864 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 120865 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 120866 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120867 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 120868 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 120869 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 120870 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 120871 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 120872 | } }, |
| 120873 | }, .{ |
| 120874 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 120875 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any }, |
| 120876 | .patterns = &.{ |
| 120877 | .{ .src = .{ .to_mem, .none, .none } }, |
| 120878 | }, |
| 120879 | .extra_temps = .{ |
| 120880 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 120881 | .unused, |
| 120882 | .unused, |
| 120883 | .unused, |
| 120884 | .unused, |
| 120885 | .unused, |
| 120886 | .unused, |
| 120887 | .unused, |
| 120888 | .unused, |
| 120889 | .unused, |
| 120890 | .unused, |
| 120891 | }, |
| 120892 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 120893 | .clobbers = .{ .eflags = true }, |
| 120894 | .each = .{ .once = &.{ |
| 120895 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 120896 | .{ ._, ._, .movzx, .dst0d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 120897 | .{ .@"0:", ._, mir_tag, .dst0w, .memi(.src0w, .tmp0), ._, ._ }, |
| 120898 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 120899 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 120900 | } }, |
| 120901 | }, .{ |
| 120902 | .required_features = .{ .avx, null, null, null }, |
| 120903 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 120904 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 120905 | .patterns = &.{ |
| 120906 | .{ .src = .{ .to_sse, .none, .none } }, |
| 120907 | }, |
| 120908 | .extra_temps = .{ |
| 120909 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 120910 | .unused, |
| 120911 | .unused, |
| 120912 | .unused, |
| 120913 | .unused, |
| 120914 | .unused, |
| 120915 | .unused, |
| 120916 | .unused, |
| 120917 | .unused, |
| 120918 | .unused, |
| 120919 | .unused, |
| 120920 | }, |
| 120921 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 120922 | .each = .{ .once = &.{ |
| 120923 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 120924 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 120925 | } }, |
| 120926 | }, .{ |
| 120927 | .required_features = .{ .sse2, null, null, null }, |
| 120928 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 120929 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 120930 | .patterns = &.{ |
| 120931 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 120932 | }, |
| 120933 | .extra_temps = .{ |
| 120934 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 120935 | .unused, |
| 120936 | .unused, |
| 120937 | .unused, |
| 120938 | .unused, |
| 120939 | .unused, |
| 120940 | .unused, |
| 120941 | .unused, |
| 120942 | .unused, |
| 120943 | .unused, |
| 120944 | .unused, |
| 120945 | }, |
| 120946 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 120947 | .each = .{ .once = &.{ |
| 120948 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 120949 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 120950 | } }, |
| 120951 | }, .{ |
| 120952 | .required_features = .{ .avx, null, null, null }, |
| 120953 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 120954 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 120955 | .patterns = &.{ |
| 120956 | .{ .src = .{ .to_sse, .none, .none } }, |
| 120957 | }, |
| 120958 | .extra_temps = .{ |
| 120959 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 120960 | .unused, |
| 120961 | .unused, |
| 120962 | .unused, |
| 120963 | .unused, |
| 120964 | .unused, |
| 120965 | .unused, |
| 120966 | .unused, |
| 120967 | .unused, |
| 120968 | .unused, |
| 120969 | .unused, |
| 120970 | }, |
| 120971 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 120972 | .each = .{ .once = &.{ |
| 120973 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 120974 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 120975 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 120976 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 120977 | } }, |
| 120978 | }, .{ |
| 120979 | .required_features = .{ .sse2, null, null, null }, |
| 120980 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 120981 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 120982 | .patterns = &.{ |
| 120983 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 120984 | }, |
| 120985 | .extra_temps = .{ |
| 120986 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 120987 | .unused, |
| 120988 | .unused, |
| 120989 | .unused, |
| 120990 | .unused, |
| 120991 | .unused, |
| 120992 | .unused, |
| 120993 | .unused, |
| 120994 | .unused, |
| 120995 | .unused, |
| 120996 | .unused, |
| 120997 | }, |
| 120998 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 120999 | .each = .{ .once = &.{ |
| 121000 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 121001 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 121002 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 121003 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 121004 | } }, |
| 121005 | }, .{ |
| 121006 | .required_features = .{ .avx, null, null, null }, |
| 121007 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121008 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 121009 | .patterns = &.{ |
| 121010 | .{ .src = .{ .to_sse, .none, .none } }, |
| 121011 | }, |
| 121012 | .extra_temps = .{ |
| 121013 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121014 | .unused, |
| 121015 | .unused, |
| 121016 | .unused, |
| 121017 | .unused, |
| 121018 | .unused, |
| 121019 | .unused, |
| 121020 | .unused, |
| 121021 | .unused, |
| 121022 | .unused, |
| 121023 | .unused, |
| 121024 | }, |
| 121025 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 121026 | .each = .{ .once = &.{ |
| 121027 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 121028 | .{ ._, .vp_, mir_tag, .tmp0x, .src0x, .tmp0x, ._ }, |
| 121029 | .{ ._, .vp_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 121030 | .{ ._, .vp_, mir_tag, .dst0x, .tmp0x, .dst0x, ._ }, |
| 121031 | } }, |
| 121032 | }, .{ |
| 121033 | .required_features = .{ .sse2, null, null, null }, |
| 121034 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121035 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 121036 | .patterns = &.{ |
| 121037 | .{ .src = .{ .to_sse, .none, .none } }, |
| 121038 | }, |
| 121039 | .extra_temps = .{ |
| 121040 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121041 | .unused, |
| 121042 | .unused, |
| 121043 | .unused, |
| 121044 | .unused, |
| 121045 | .unused, |
| 121046 | .unused, |
| 121047 | .unused, |
| 121048 | .unused, |
| 121049 | .unused, |
| 121050 | .unused, |
| 121051 | }, |
| 121052 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 121053 | .each = .{ .once = &.{ |
| 121054 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 121055 | .{ ._, .p_, mir_tag, .tmp0x, .src0x, ._, ._ }, |
| 121056 | .{ ._, .p_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 121057 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 121058 | } }, |
| 121059 | }, .{ |
| 121060 | .required_features = .{ .avx2, null, null, null }, |
| 121061 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121062 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 121063 | .patterns = &.{ |
| 121064 | .{ .src = .{ .to_sse, .none, .none } }, |
| 121065 | }, |
| 121066 | .extra_temps = .{ |
| 121067 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121068 | .unused, |
| 121069 | .unused, |
| 121070 | .unused, |
| 121071 | .unused, |
| 121072 | .unused, |
| 121073 | .unused, |
| 121074 | .unused, |
| 121075 | .unused, |
| 121076 | .unused, |
| 121077 | .unused, |
| 121078 | }, |
| 121079 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 121080 | .each = .{ .once = &.{ |
| 121081 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 121082 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 121083 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 121084 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 121085 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 121086 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 121087 | } }, |
| 121088 | }, .{ |
| 121089 | .required_features = .{ .avx, null, null, null }, |
| 121090 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121091 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 121092 | .patterns = &.{ |
| 121093 | .{ .src = .{ .to_sse, .none, .none } }, |
| 121094 | }, |
| 121095 | .extra_temps = .{ |
| 121096 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121097 | .unused, |
| 121098 | .unused, |
| 121099 | .unused, |
| 121100 | .unused, |
| 121101 | .unused, |
| 121102 | .unused, |
| 121103 | .unused, |
| 121104 | .unused, |
| 121105 | .unused, |
| 121106 | .unused, |
| 121107 | }, |
| 121108 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 121109 | .each = .{ .once = &.{ |
| 121110 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 121111 | .{ ._, .v_ps, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 121112 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 121113 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 121114 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 121115 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 121116 | } }, |
| 121117 | }, .{ |
| 121118 | .required_features = .{ .avx2, null, null, null }, |
| 121119 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121120 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 121121 | .patterns = &.{ |
| 121122 | .{ .src = .{ .to_sse, .none, .none } }, |
| 121123 | }, |
| 121124 | .extra_temps = .{ |
| 121125 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 121126 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 121127 | .ref = .src0, |
| 121128 | .invert = switch (mir_tag) { |
| 121129 | else => unreachable, |
| 121130 | .@"and" => true, |
| 121131 | .@"or", .xor => false, |
| 121132 | }, |
| 121133 | } } }, |
| 121134 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121135 | .unused, |
| 121136 | .unused, |
| 121137 | .unused, |
| 121138 | .unused, |
| 121139 | .unused, |
| 121140 | .unused, |
| 121141 | .unused, |
| 121142 | .unused, |
| 121143 | }, |
| 121144 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 121145 | .each = .{ .once = &.{ |
| 121146 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 121147 | .{ ._, .vp_, switch (mir_tag) { |
| 121148 | else => unreachable, |
| 121149 | .@"and" => .@"or", |
| 121150 | .@"or", .xor => .@"and", |
| 121151 | }, .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 121152 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 121153 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121154 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 121155 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121156 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 121157 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121158 | } }, |
| 121159 | }, .{ |
| 121160 | .required_features = .{ .avx, null, null, null }, |
| 121161 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121162 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 121163 | .patterns = &.{ |
| 121164 | .{ .src = .{ .to_sse, .none, .none } }, |
| 121165 | }, |
| 121166 | .extra_temps = .{ |
| 121167 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 121168 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 121169 | .ref = .src0, |
| 121170 | .invert = switch (mir_tag) { |
| 121171 | else => unreachable, |
| 121172 | .@"and" => true, |
| 121173 | .@"or", .xor => false, |
| 121174 | }, |
| 121175 | } } }, |
| 121176 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121177 | .unused, |
| 121178 | .unused, |
| 121179 | .unused, |
| 121180 | .unused, |
| 121181 | .unused, |
| 121182 | .unused, |
| 121183 | .unused, |
| 121184 | .unused, |
| 121185 | }, |
| 121186 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 121187 | .each = .{ .once = &.{ |
| 121188 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 121189 | .{ ._, .v_ps, switch (mir_tag) { |
| 121190 | else => unreachable, |
| 121191 | .@"and" => .@"or", |
| 121192 | .@"or", .xor => .@"and", |
| 121193 | }, .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 121194 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 121195 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121196 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 121197 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121198 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 121199 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121200 | } }, |
| 121201 | }, .{ |
| 121202 | .required_features = .{ .avx512f, null, null, null }, |
| 121203 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121204 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 121205 | .patterns = &.{ |
| 121206 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121207 | }, |
| 121208 | .extra_temps = .{ |
| 121209 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121210 | .unused, |
| 121211 | .unused, |
| 121212 | .unused, |
| 121213 | .unused, |
| 121214 | .unused, |
| 121215 | .unused, |
| 121216 | .unused, |
| 121217 | .unused, |
| 121218 | .unused, |
| 121219 | .unused, |
| 121220 | }, |
| 121221 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121222 | .each = .{ .once = &.{ |
| 121223 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 121224 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 121225 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 121226 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 121227 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 121228 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 121229 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 121230 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 121231 | } }, |
| 121232 | }, .{ |
| 121233 | .required_features = .{ .avx512f, null, null, null }, |
| 121234 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121235 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 121236 | .patterns = &.{ |
| 121237 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121238 | }, |
| 121239 | .extra_temps = .{ |
| 121240 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 121241 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ |
| 121242 | .ref = .src0, |
| 121243 | .invert = switch (mir_tag) { |
| 121244 | else => unreachable, |
| 121245 | .@"and" => true, |
| 121246 | .@"or", .xor => false, |
| 121247 | }, |
| 121248 | } } }, |
| 121249 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 121250 | .unused, |
| 121251 | .unused, |
| 121252 | .unused, |
| 121253 | .unused, |
| 121254 | .unused, |
| 121255 | .unused, |
| 121256 | .unused, |
| 121257 | .unused, |
| 121258 | }, |
| 121259 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121260 | .each = .{ .once = &.{ |
| 121261 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 121262 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 121263 | .{ ._, .v_dqa, .mov, .tmp2y, .memd(.src0y, 32), ._, ._ }, |
| 121264 | .{ ._, .vp_, switch (mir_tag) { |
| 121265 | else => unreachable, |
| 121266 | .@"and" => .@"or", |
| 121267 | .@"or", .xor => .@"and", |
| 121268 | }, .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 121269 | .{ ._, .vp_, switch (mir_tag) { |
| 121270 | else => unreachable, |
| 121271 | .@"and" => .@"or", |
| 121272 | .@"or", .xor => .@"and", |
| 121273 | }, .tmp2y, .tmp2y, .lead(.tmp0y, 32), ._ }, |
| 121274 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .tmp2y, ._ }, |
| 121275 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 121276 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121277 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 121278 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121279 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 121280 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121281 | } }, |
| 121282 | }, .{ |
| 121283 | .required_features = .{ .avx2, null, null, null }, |
| 121284 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121285 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 121286 | .patterns = &.{ |
| 121287 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121288 | }, |
| 121289 | .extra_temps = .{ |
| 121290 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 121291 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121292 | .unused, |
| 121293 | .unused, |
| 121294 | .unused, |
| 121295 | .unused, |
| 121296 | .unused, |
| 121297 | .unused, |
| 121298 | .unused, |
| 121299 | .unused, |
| 121300 | .unused, |
| 121301 | }, |
| 121302 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121303 | .clobbers = .{ .eflags = true }, |
| 121304 | .each = .{ .once = &.{ |
| 121305 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 121306 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 121307 | .{ .@"0:", .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 121308 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 121309 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 121310 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 121311 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 121312 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 121313 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 121314 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 121315 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 121316 | } }, |
| 121317 | }, .{ |
| 121318 | .required_features = .{ .avx, null, null, null }, |
| 121319 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121320 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 121321 | .patterns = &.{ |
| 121322 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121323 | }, |
| 121324 | .extra_temps = .{ |
| 121325 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 121326 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121327 | .unused, |
| 121328 | .unused, |
| 121329 | .unused, |
| 121330 | .unused, |
| 121331 | .unused, |
| 121332 | .unused, |
| 121333 | .unused, |
| 121334 | .unused, |
| 121335 | .unused, |
| 121336 | }, |
| 121337 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121338 | .clobbers = .{ .eflags = true }, |
| 121339 | .each = .{ .once = &.{ |
| 121340 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 121341 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 121342 | .{ .@"0:", .v_ps, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 121343 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 121344 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 121345 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 121346 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 121347 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 121348 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 121349 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 121350 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 121351 | } }, |
| 121352 | }, .{ |
| 121353 | .required_features = .{ .sse2, null, null, null }, |
| 121354 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121355 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 121356 | .patterns = &.{ |
| 121357 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121358 | }, |
| 121359 | .extra_temps = .{ |
| 121360 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 121361 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121362 | .unused, |
| 121363 | .unused, |
| 121364 | .unused, |
| 121365 | .unused, |
| 121366 | .unused, |
| 121367 | .unused, |
| 121368 | .unused, |
| 121369 | .unused, |
| 121370 | .unused, |
| 121371 | }, |
| 121372 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121373 | .clobbers = .{ .eflags = true }, |
| 121374 | .each = .{ .once = &.{ |
| 121375 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 121376 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 121377 | .{ .@"0:", .p_, mir_tag, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 121378 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 121379 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 121380 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 121381 | .{ ._, .p_, mir_tag, .dst0x, .tmp1x, ._, ._ }, |
| 121382 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 121383 | .{ ._, .p_, mir_tag, .dst0x, .tmp1x, ._, ._ }, |
| 121384 | } }, |
| 121385 | }, .{ |
| 121386 | .required_features = .{ .avx512f, null, null, null }, |
| 121387 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121388 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 121389 | .patterns = &.{ |
| 121390 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121391 | }, |
| 121392 | .extra_temps = .{ |
| 121393 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 121394 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ |
| 121395 | .ref = .src0, |
| 121396 | .invert = switch (mir_tag) { |
| 121397 | else => unreachable, |
| 121398 | .@"and" => true, |
| 121399 | .@"or", .xor => false, |
| 121400 | }, |
| 121401 | } } }, |
| 121402 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 121403 | .unused, |
| 121404 | .unused, |
| 121405 | .unused, |
| 121406 | .unused, |
| 121407 | .unused, |
| 121408 | .unused, |
| 121409 | .unused, |
| 121410 | .unused, |
| 121411 | }, |
| 121412 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121413 | .clobbers = .{ .eflags = true }, |
| 121414 | .each = .{ .once = &.{ |
| 121415 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 121416 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 121417 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 121418 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 121419 | .{ ._, .vp_, switch (mir_tag) { |
| 121420 | else => unreachable, |
| 121421 | .@"and" => .@"or", |
| 121422 | .@"or", .xor => .@"and", |
| 121423 | }, .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 121424 | .{ ._, .vp_, switch (mir_tag) { |
| 121425 | else => unreachable, |
| 121426 | .@"and" => .@"or", |
| 121427 | .@"or", .xor => .@"and", |
| 121428 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 121429 | .{ .@"0:", .vp_, mir_tag, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 121430 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 121431 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 121432 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 121433 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .tmp2y, ._ }, |
| 121434 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 121435 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121436 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 121437 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121438 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 121439 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121440 | } }, |
| 121441 | }, .{ |
| 121442 | .required_features = .{ .avx2, null, null, null }, |
| 121443 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121444 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 121445 | .patterns = &.{ |
| 121446 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121447 | }, |
| 121448 | .extra_temps = .{ |
| 121449 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 121450 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 121451 | .ref = .src0, |
| 121452 | .invert = switch (mir_tag) { |
| 121453 | else => unreachable, |
| 121454 | .@"and" => true, |
| 121455 | .@"or", .xor => false, |
| 121456 | }, |
| 121457 | } } }, |
| 121458 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121459 | .unused, |
| 121460 | .unused, |
| 121461 | .unused, |
| 121462 | .unused, |
| 121463 | .unused, |
| 121464 | .unused, |
| 121465 | .unused, |
| 121466 | .unused, |
| 121467 | }, |
| 121468 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121469 | .clobbers = .{ .eflags = true }, |
| 121470 | .each = .{ .once = &.{ |
| 121471 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 121472 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 121473 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 121474 | .{ ._, .vp_, switch (mir_tag) { |
| 121475 | else => unreachable, |
| 121476 | .@"and" => .@"or", |
| 121477 | .@"or", .xor => .@"and", |
| 121478 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 121479 | .{ .@"0:", .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 121480 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 121481 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 121482 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 121483 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121484 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 121485 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121486 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 121487 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121488 | } }, |
| 121489 | }, .{ |
| 121490 | .required_features = .{ .avx, null, null, null }, |
| 121491 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121492 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 121493 | .patterns = &.{ |
| 121494 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121495 | }, |
| 121496 | .extra_temps = .{ |
| 121497 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 121498 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 121499 | .ref = .src0, |
| 121500 | .invert = switch (mir_tag) { |
| 121501 | else => unreachable, |
| 121502 | .@"and" => true, |
| 121503 | .@"or", .xor => false, |
| 121504 | }, |
| 121505 | } } }, |
| 121506 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121507 | .unused, |
| 121508 | .unused, |
| 121509 | .unused, |
| 121510 | .unused, |
| 121511 | .unused, |
| 121512 | .unused, |
| 121513 | .unused, |
| 121514 | .unused, |
| 121515 | }, |
| 121516 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121517 | .clobbers = .{ .eflags = true }, |
| 121518 | .each = .{ .once = &.{ |
| 121519 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 121520 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 121521 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 121522 | .{ ._, .v_ps, switch (mir_tag) { |
| 121523 | else => unreachable, |
| 121524 | .@"and" => .@"or", |
| 121525 | .@"or", .xor => .@"and", |
| 121526 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 121527 | .{ .@"0:", .v_ps, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 121528 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 121529 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 121530 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 121531 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121532 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 121533 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121534 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 121535 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121536 | } }, |
| 121537 | }, .{ |
| 121538 | .required_features = .{ .sse2, null, null, null }, |
| 121539 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121540 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 121541 | .patterns = &.{ |
| 121542 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121543 | }, |
| 121544 | .extra_temps = .{ |
| 121545 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 121546 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ |
| 121547 | .ref = .src0, |
| 121548 | .invert = switch (mir_tag) { |
| 121549 | else => unreachable, |
| 121550 | .@"and" => true, |
| 121551 | .@"or", .xor => false, |
| 121552 | }, |
| 121553 | } } }, |
| 121554 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 121555 | .unused, |
| 121556 | .unused, |
| 121557 | .unused, |
| 121558 | .unused, |
| 121559 | .unused, |
| 121560 | .unused, |
| 121561 | .unused, |
| 121562 | .unused, |
| 121563 | }, |
| 121564 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121565 | .clobbers = .{ .eflags = true }, |
| 121566 | .each = .{ .once = &.{ |
| 121567 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 121568 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 121569 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 121570 | .{ ._, .p_, switch (mir_tag) { |
| 121571 | else => unreachable, |
| 121572 | .@"and" => .@"or", |
| 121573 | .@"or", .xor => .@"and", |
| 121574 | }, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 121575 | .{ .@"0:", .p_, mir_tag, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 121576 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 121577 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 121578 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 121579 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 121580 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 121581 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 121582 | } }, |
| 121583 | }, .{ |
| 121584 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 121585 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 121586 | .patterns = &.{ |
| 121587 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121588 | }, |
| 121589 | .extra_temps = .{ |
| 121590 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 121591 | .unused, |
| 121592 | .unused, |
| 121593 | .unused, |
| 121594 | .unused, |
| 121595 | .unused, |
| 121596 | .unused, |
| 121597 | .unused, |
| 121598 | .unused, |
| 121599 | .unused, |
| 121600 | .unused, |
| 121601 | }, |
| 121602 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 121603 | .clobbers = .{ .eflags = true }, |
| 121604 | .each = .{ .once = &.{ |
| 121605 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size), ._, ._ }, |
| 121606 | .{ ._, ._, .mov, .dst0d, .memad(.src0d, .add_unaligned_size, -4), ._, ._ }, |
| 121607 | .{ .@"0:", ._, mir_tag, .dst0d, .memi(.src0d, .tmp0), ._, ._ }, |
| 121608 | .{ ._, ._, .sub, .tmp0d, .si(4), ._, ._ }, |
| 121609 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 121610 | } }, |
| 121611 | }, .{ |
| 121612 | .required_features = .{ .avx, null, null, null }, |
| 121613 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 121614 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 121615 | .patterns = &.{ |
| 121616 | .{ .src = .{ .to_sse, .none, .none } }, |
| 121617 | }, |
| 121618 | .extra_temps = .{ |
| 121619 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 121620 | .unused, |
| 121621 | .unused, |
| 121622 | .unused, |
| 121623 | .unused, |
| 121624 | .unused, |
| 121625 | .unused, |
| 121626 | .unused, |
| 121627 | .unused, |
| 121628 | .unused, |
| 121629 | .unused, |
| 121630 | }, |
| 121631 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 121632 | .each = .{ .once = &.{ |
| 121633 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 121634 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 121635 | } }, |
| 121636 | }, .{ |
| 121637 | .required_features = .{ .sse2, null, null, null }, |
| 121638 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 121639 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 121640 | .patterns = &.{ |
| 121641 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 121642 | }, |
| 121643 | .extra_temps = .{ |
| 121644 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 121645 | .unused, |
| 121646 | .unused, |
| 121647 | .unused, |
| 121648 | .unused, |
| 121649 | .unused, |
| 121650 | .unused, |
| 121651 | .unused, |
| 121652 | .unused, |
| 121653 | .unused, |
| 121654 | .unused, |
| 121655 | }, |
| 121656 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 121657 | .each = .{ .once = &.{ |
| 121658 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 121659 | .{ ._, .p_, mir_tag, .dst0x, .tmp0x, ._, ._ }, |
| 121660 | } }, |
| 121661 | }, .{ |
| 121662 | .required_features = .{ .avx2, null, null, null }, |
| 121663 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 121664 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 121665 | .patterns = &.{ |
| 121666 | .{ .src = .{ .to_sse, .none, .none } }, |
| 121667 | }, |
| 121668 | .extra_temps = .{ |
| 121669 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 121670 | .unused, |
| 121671 | .unused, |
| 121672 | .unused, |
| 121673 | .unused, |
| 121674 | .unused, |
| 121675 | .unused, |
| 121676 | .unused, |
| 121677 | .unused, |
| 121678 | .unused, |
| 121679 | .unused, |
| 121680 | }, |
| 121681 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 121682 | .each = .{ .once = &.{ |
| 121683 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 121684 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 121685 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 121686 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 121687 | } }, |
| 121688 | }, .{ |
| 121689 | .required_features = .{ .avx, null, null, null }, |
| 121690 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 121691 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 121692 | .patterns = &.{ |
| 121693 | .{ .src = .{ .to_sse, .none, .none } }, |
| 121694 | }, |
| 121695 | .extra_temps = .{ |
| 121696 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 121697 | .unused, |
| 121698 | .unused, |
| 121699 | .unused, |
| 121700 | .unused, |
| 121701 | .unused, |
| 121702 | .unused, |
| 121703 | .unused, |
| 121704 | .unused, |
| 121705 | .unused, |
| 121706 | .unused, |
| 121707 | }, |
| 121708 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 121709 | .each = .{ .once = &.{ |
| 121710 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 121711 | .{ ._, .v_ps, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 121712 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 121713 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 121714 | } }, |
| 121715 | }, .{ |
| 121716 | .required_features = .{ .avx2, null, null, null }, |
| 121717 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 121718 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 121719 | .patterns = &.{ |
| 121720 | .{ .src = .{ .to_sse, .none, .none } }, |
| 121721 | }, |
| 121722 | .extra_temps = .{ |
| 121723 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 121724 | .unused, |
| 121725 | .unused, |
| 121726 | .unused, |
| 121727 | .unused, |
| 121728 | .unused, |
| 121729 | .unused, |
| 121730 | .unused, |
| 121731 | .unused, |
| 121732 | .unused, |
| 121733 | .unused, |
| 121734 | }, |
| 121735 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 121736 | .each = .{ .once = &.{ |
| 121737 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 121738 | .{ ._, .vp_, mir_tag, .tmp0x, .src0x, .tmp0x, ._ }, |
| 121739 | .{ ._, .vp_d, .shuf, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 121740 | .{ ._, .vp_, mir_tag, .dst0x, .tmp0x, .dst0x, ._ }, |
| 121741 | } }, |
| 121742 | }, .{ |
| 121743 | .required_features = .{ .avx, null, null, null }, |
| 121744 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 121745 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 121746 | .patterns = &.{ |
| 121747 | .{ .src = .{ .to_sse, .none, .none } }, |
| 121748 | }, |
| 121749 | .extra_temps = .{ |
| 121750 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 121751 | .unused, |
| 121752 | .unused, |
| 121753 | .unused, |
| 121754 | .unused, |
| 121755 | .unused, |
| 121756 | .unused, |
| 121757 | .unused, |
| 121758 | .unused, |
| 121759 | .unused, |
| 121760 | .unused, |
| 121761 | }, |
| 121762 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 121763 | .each = .{ .once = &.{ |
| 121764 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 121765 | .{ ._, .v_ps, mir_tag, .tmp0x, .src0x, .tmp0x, ._ }, |
| 121766 | .{ ._, .v_ps, .movhl, .dst0x, .src0x, .src0x, ._ }, |
| 121767 | .{ ._, .v_ps, mir_tag, .dst0x, .tmp0x, .dst0x, ._ }, |
| 121768 | } }, |
| 121769 | }, .{ |
| 121770 | .required_features = .{ .avx512f, null, null, null }, |
| 121771 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 121772 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 121773 | .patterns = &.{ |
| 121774 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121775 | }, |
| 121776 | .extra_temps = .{ |
| 121777 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 121778 | .unused, |
| 121779 | .unused, |
| 121780 | .unused, |
| 121781 | .unused, |
| 121782 | .unused, |
| 121783 | .unused, |
| 121784 | .unused, |
| 121785 | .unused, |
| 121786 | .unused, |
| 121787 | .unused, |
| 121788 | }, |
| 121789 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121790 | .each = .{ .once = &.{ |
| 121791 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 121792 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 121793 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 121794 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 121795 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 121796 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 121797 | } }, |
| 121798 | }, .{ |
| 121799 | .required_features = .{ .avx512f, null, null, null }, |
| 121800 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 121801 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 121802 | .patterns = &.{ |
| 121803 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121804 | }, |
| 121805 | .extra_temps = .{ |
| 121806 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 121807 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ |
| 121808 | .ref = .src0, |
| 121809 | .invert = switch (mir_tag) { |
| 121810 | else => unreachable, |
| 121811 | .@"and" => true, |
| 121812 | .@"or", .xor => false, |
| 121813 | }, |
| 121814 | } } }, |
| 121815 | .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } }, |
| 121816 | .unused, |
| 121817 | .unused, |
| 121818 | .unused, |
| 121819 | .unused, |
| 121820 | .unused, |
| 121821 | .unused, |
| 121822 | .unused, |
| 121823 | .unused, |
| 121824 | }, |
| 121825 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121826 | .each = .{ .once = &.{ |
| 121827 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 121828 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 121829 | .{ ._, .v_dqa, .mov, .tmp2y, .memd(.src0y, 32), ._, ._ }, |
| 121830 | .{ ._, .vp_, switch (mir_tag) { |
| 121831 | else => unreachable, |
| 121832 | .@"and" => .@"or", |
| 121833 | .@"or", .xor => .@"and", |
| 121834 | }, .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 121835 | .{ ._, .vp_, switch (mir_tag) { |
| 121836 | else => unreachable, |
| 121837 | .@"and" => .@"or", |
| 121838 | .@"or", .xor => .@"and", |
| 121839 | }, .tmp2y, .tmp2y, .lead(.tmp0y, 32), ._ }, |
| 121840 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .tmp2y, ._ }, |
| 121841 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 121842 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121843 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 121844 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121845 | } }, |
| 121846 | }, .{ |
| 121847 | .required_features = .{ .avx2, null, null, null }, |
| 121848 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 121849 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 121850 | .patterns = &.{ |
| 121851 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121852 | }, |
| 121853 | .extra_temps = .{ |
| 121854 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 121855 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 121856 | .unused, |
| 121857 | .unused, |
| 121858 | .unused, |
| 121859 | .unused, |
| 121860 | .unused, |
| 121861 | .unused, |
| 121862 | .unused, |
| 121863 | .unused, |
| 121864 | .unused, |
| 121865 | }, |
| 121866 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121867 | .clobbers = .{ .eflags = true }, |
| 121868 | .each = .{ .once = &.{ |
| 121869 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 121870 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 121871 | .{ .@"0:", .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 121872 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 121873 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 121874 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 121875 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 121876 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 121877 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 121878 | } }, |
| 121879 | }, .{ |
| 121880 | .required_features = .{ .avx, null, null, null }, |
| 121881 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 121882 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 121883 | .patterns = &.{ |
| 121884 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121885 | }, |
| 121886 | .extra_temps = .{ |
| 121887 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 121888 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 121889 | .unused, |
| 121890 | .unused, |
| 121891 | .unused, |
| 121892 | .unused, |
| 121893 | .unused, |
| 121894 | .unused, |
| 121895 | .unused, |
| 121896 | .unused, |
| 121897 | .unused, |
| 121898 | }, |
| 121899 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121900 | .clobbers = .{ .eflags = true }, |
| 121901 | .each = .{ .once = &.{ |
| 121902 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 121903 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 121904 | .{ .@"0:", .v_ps, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 121905 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 121906 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 121907 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 121908 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 121909 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 121910 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 121911 | } }, |
| 121912 | }, .{ |
| 121913 | .required_features = .{ .sse2, null, null, null }, |
| 121914 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 121915 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 121916 | .patterns = &.{ |
| 121917 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121918 | }, |
| 121919 | .extra_temps = .{ |
| 121920 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 121921 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 121922 | .unused, |
| 121923 | .unused, |
| 121924 | .unused, |
| 121925 | .unused, |
| 121926 | .unused, |
| 121927 | .unused, |
| 121928 | .unused, |
| 121929 | .unused, |
| 121930 | .unused, |
| 121931 | }, |
| 121932 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121933 | .clobbers = .{ .eflags = true }, |
| 121934 | .each = .{ .once = &.{ |
| 121935 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 121936 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 121937 | .{ .@"0:", .p_, mir_tag, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 121938 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 121939 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 121940 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 121941 | .{ ._, .p_, mir_tag, .dst0x, .tmp1x, ._, ._ }, |
| 121942 | } }, |
| 121943 | }, .{ |
| 121944 | .required_features = .{ .avx512f, null, null, null }, |
| 121945 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 121946 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 121947 | .patterns = &.{ |
| 121948 | .{ .src = .{ .to_mem, .none, .none } }, |
| 121949 | }, |
| 121950 | .extra_temps = .{ |
| 121951 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 121952 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ |
| 121953 | .ref = .src0, |
| 121954 | .invert = switch (mir_tag) { |
| 121955 | else => unreachable, |
| 121956 | .@"and" => true, |
| 121957 | .@"or", .xor => false, |
| 121958 | }, |
| 121959 | } } }, |
| 121960 | .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } }, |
| 121961 | .unused, |
| 121962 | .unused, |
| 121963 | .unused, |
| 121964 | .unused, |
| 121965 | .unused, |
| 121966 | .unused, |
| 121967 | .unused, |
| 121968 | .unused, |
| 121969 | }, |
| 121970 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 121971 | .clobbers = .{ .eflags = true }, |
| 121972 | .each = .{ .once = &.{ |
| 121973 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 121974 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 121975 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 121976 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 121977 | .{ ._, .vp_, switch (mir_tag) { |
| 121978 | else => unreachable, |
| 121979 | .@"and" => .@"or", |
| 121980 | .@"or", .xor => .@"and", |
| 121981 | }, .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 121982 | .{ ._, .vp_, switch (mir_tag) { |
| 121983 | else => unreachable, |
| 121984 | .@"and" => .@"or", |
| 121985 | .@"or", .xor => .@"and", |
| 121986 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 121987 | .{ .@"0:", .vp_, mir_tag, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 121988 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 121989 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 121990 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 121991 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .tmp2y, ._ }, |
| 121992 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 121993 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121994 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 121995 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 121996 | } }, |
| 121997 | }, .{ |
| 121998 | .required_features = .{ .avx2, null, null, null }, |
| 121999 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 122000 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 122001 | .patterns = &.{ |
| 122002 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122003 | }, |
| 122004 | .extra_temps = .{ |
| 122005 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122006 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 122007 | .ref = .src0, |
| 122008 | .invert = switch (mir_tag) { |
| 122009 | else => unreachable, |
| 122010 | .@"and" => true, |
| 122011 | .@"or", .xor => false, |
| 122012 | }, |
| 122013 | } } }, |
| 122014 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 122015 | .unused, |
| 122016 | .unused, |
| 122017 | .unused, |
| 122018 | .unused, |
| 122019 | .unused, |
| 122020 | .unused, |
| 122021 | .unused, |
| 122022 | .unused, |
| 122023 | }, |
| 122024 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122025 | .clobbers = .{ .eflags = true }, |
| 122026 | .each = .{ .once = &.{ |
| 122027 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 122028 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 122029 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 122030 | .{ ._, .vp_, switch (mir_tag) { |
| 122031 | else => unreachable, |
| 122032 | .@"and" => .@"or", |
| 122033 | .@"or", .xor => .@"and", |
| 122034 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 122035 | .{ .@"0:", .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 122036 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 122037 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122038 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 122039 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 122040 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 122041 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 122042 | } }, |
| 122043 | }, .{ |
| 122044 | .required_features = .{ .avx, null, null, null }, |
| 122045 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 122046 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 122047 | .patterns = &.{ |
| 122048 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122049 | }, |
| 122050 | .extra_temps = .{ |
| 122051 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122052 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 122053 | .ref = .src0, |
| 122054 | .invert = switch (mir_tag) { |
| 122055 | else => unreachable, |
| 122056 | .@"and" => true, |
| 122057 | .@"or", .xor => false, |
| 122058 | }, |
| 122059 | } } }, |
| 122060 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 122061 | .unused, |
| 122062 | .unused, |
| 122063 | .unused, |
| 122064 | .unused, |
| 122065 | .unused, |
| 122066 | .unused, |
| 122067 | .unused, |
| 122068 | .unused, |
| 122069 | }, |
| 122070 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122071 | .clobbers = .{ .eflags = true }, |
| 122072 | .each = .{ .once = &.{ |
| 122073 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 122074 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 122075 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 122076 | .{ ._, .v_ps, switch (mir_tag) { |
| 122077 | else => unreachable, |
| 122078 | .@"and" => .@"or", |
| 122079 | .@"or", .xor => .@"and", |
| 122080 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 122081 | .{ .@"0:", .v_ps, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 122082 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 122083 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122084 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 122085 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 122086 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 122087 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 122088 | } }, |
| 122089 | }, .{ |
| 122090 | .required_features = .{ .sse2, null, null, null }, |
| 122091 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 122092 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 122093 | .patterns = &.{ |
| 122094 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122095 | }, |
| 122096 | .extra_temps = .{ |
| 122097 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122098 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ |
| 122099 | .ref = .src0, |
| 122100 | .invert = switch (mir_tag) { |
| 122101 | else => unreachable, |
| 122102 | .@"and" => true, |
| 122103 | .@"or", .xor => false, |
| 122104 | }, |
| 122105 | } } }, |
| 122106 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 122107 | .unused, |
| 122108 | .unused, |
| 122109 | .unused, |
| 122110 | .unused, |
| 122111 | .unused, |
| 122112 | .unused, |
| 122113 | .unused, |
| 122114 | .unused, |
| 122115 | }, |
| 122116 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122117 | .clobbers = .{ .eflags = true }, |
| 122118 | .each = .{ .once = &.{ |
| 122119 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 122120 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 122121 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 122122 | .{ ._, .p_, switch (mir_tag) { |
| 122123 | else => unreachable, |
| 122124 | .@"and" => .@"or", |
| 122125 | .@"or", .xor => .@"and", |
| 122126 | }, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 122127 | .{ .@"0:", .p_, mir_tag, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 122128 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 122129 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122130 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 122131 | .{ ._, .p_, mir_tag, .dst0x, .tmp2x, ._, ._ }, |
| 122132 | } }, |
| 122133 | }, .{ |
| 122134 | .required_features = .{ .@"64bit", null, null, null }, |
| 122135 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 122136 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 122137 | .patterns = &.{ |
| 122138 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122139 | }, |
| 122140 | .extra_temps = .{ |
| 122141 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122142 | .unused, |
| 122143 | .unused, |
| 122144 | .unused, |
| 122145 | .unused, |
| 122146 | .unused, |
| 122147 | .unused, |
| 122148 | .unused, |
| 122149 | .unused, |
| 122150 | .unused, |
| 122151 | .unused, |
| 122152 | }, |
| 122153 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 122154 | .clobbers = .{ .eflags = true }, |
| 122155 | .each = .{ .once = &.{ |
| 122156 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 122157 | .{ ._, ._, .mov, .dst0q, .memad(.src0q, .add_unaligned_size, -8), ._, ._ }, |
| 122158 | .{ .@"0:", ._, mir_tag, .dst0q, .memi(.src0q, .tmp0), ._, ._ }, |
| 122159 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 122160 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122161 | } }, |
| 122162 | }, .{ |
| 122163 | .required_features = .{ .avx2, null, null, null }, |
| 122164 | .dst_constraints = .{ .{ .int = .xword }, .any }, |
| 122165 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .xword } }, .any, .any }, |
| 122166 | .patterns = &.{ |
| 122167 | .{ .src = .{ .to_sse, .none, .none } }, |
| 122168 | }, |
| 122169 | .extra_temps = .{ |
| 122170 | .{ .type = .vector_1_u128, .kind = .{ .rc = .sse } }, |
| 122171 | .unused, |
| 122172 | .unused, |
| 122173 | .unused, |
| 122174 | .unused, |
| 122175 | .unused, |
| 122176 | .unused, |
| 122177 | .unused, |
| 122178 | .unused, |
| 122179 | .unused, |
| 122180 | .unused, |
| 122181 | }, |
| 122182 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 122183 | .each = .{ .once = &.{ |
| 122184 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 122185 | .{ ._, .vp_, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 122186 | } }, |
| 122187 | }, .{ |
| 122188 | .required_features = .{ .avx, null, null, null }, |
| 122189 | .dst_constraints = .{ .{ .int = .xword }, .any }, |
| 122190 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .xword } }, .any, .any }, |
| 122191 | .patterns = &.{ |
| 122192 | .{ .src = .{ .to_sse, .none, .none } }, |
| 122193 | }, |
| 122194 | .extra_temps = .{ |
| 122195 | .{ .type = .vector_1_u128, .kind = .{ .rc = .sse } }, |
| 122196 | .unused, |
| 122197 | .unused, |
| 122198 | .unused, |
| 122199 | .unused, |
| 122200 | .unused, |
| 122201 | .unused, |
| 122202 | .unused, |
| 122203 | .unused, |
| 122204 | .unused, |
| 122205 | .unused, |
| 122206 | }, |
| 122207 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 122208 | .each = .{ .once = &.{ |
| 122209 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 122210 | .{ ._, .v_ps, mir_tag, .dst0x, .src0x, .tmp0x, ._ }, |
| 122211 | } }, |
| 122212 | }, .{ |
| 122213 | .required_features = .{ .avx512f, null, null, null }, |
| 122214 | .dst_constraints = .{ .{ .int = .xword }, .any }, |
| 122215 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .zword, .is = .xword } }, .any, .any }, |
| 122216 | .patterns = &.{ |
| 122217 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122218 | }, |
| 122219 | .extra_temps = .{ |
| 122220 | .{ .type = .vector_1_u128, .kind = .{ .rc = .sse } }, |
| 122221 | .unused, |
| 122222 | .unused, |
| 122223 | .unused, |
| 122224 | .unused, |
| 122225 | .unused, |
| 122226 | .unused, |
| 122227 | .unused, |
| 122228 | .unused, |
| 122229 | .unused, |
| 122230 | .unused, |
| 122231 | }, |
| 122232 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122233 | .each = .{ .once = &.{ |
| 122234 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 122235 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 122236 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 122237 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 122238 | } }, |
| 122239 | }, .{ |
| 122240 | .required_features = .{ .avx512f, null, null, null }, |
| 122241 | .dst_constraints = .{ .{ .int = .xword }, .any }, |
| 122242 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .xword } }, .any, .any }, |
| 122243 | .patterns = &.{ |
| 122244 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122245 | }, |
| 122246 | .extra_temps = .{ |
| 122247 | .{ .type = .vector_2_u128, .kind = .{ .rc = .sse } }, |
| 122248 | .unused, |
| 122249 | .unused, |
| 122250 | .unused, |
| 122251 | .unused, |
| 122252 | .unused, |
| 122253 | .unused, |
| 122254 | .unused, |
| 122255 | .unused, |
| 122256 | .unused, |
| 122257 | .unused, |
| 122258 | }, |
| 122259 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122260 | .each = .{ .once = &.{ |
| 122261 | .{ ._, .v_dqa, .mov, .tmp0y, .mem(.src0y), ._, ._ }, |
| 122262 | .{ ._, .vp_, mir_tag, .dst0x, .tmp0x, .memd(.src0x, 32), ._ }, |
| 122263 | .{ ._, .v_i128, .extract, .tmp0x, .tmp0y, .ui(1), ._ }, |
| 122264 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp0x, ._ }, |
| 122265 | } }, |
| 122266 | }, .{ |
| 122267 | .required_features = .{ .avx2, null, null, null }, |
| 122268 | .dst_constraints = .{ .{ .int = .xword }, .any }, |
| 122269 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .xword } }, .any, .any }, |
| 122270 | .patterns = &.{ |
| 122271 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122272 | }, |
| 122273 | .extra_temps = .{ |
| 122274 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122275 | .{ .type = .vector_1_u128, .kind = .{ .rc = .sse } }, |
| 122276 | .unused, |
| 122277 | .unused, |
| 122278 | .unused, |
| 122279 | .unused, |
| 122280 | .unused, |
| 122281 | .unused, |
| 122282 | .unused, |
| 122283 | .unused, |
| 122284 | .unused, |
| 122285 | }, |
| 122286 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122287 | .clobbers = .{ .eflags = true }, |
| 122288 | .each = .{ .once = &.{ |
| 122289 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 122290 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 122291 | .{ .@"0:", .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 122292 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 122293 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122294 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 122295 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 122296 | } }, |
| 122297 | }, .{ |
| 122298 | .required_features = .{ .avx, null, null, null }, |
| 122299 | .dst_constraints = .{ .{ .int = .xword }, .any }, |
| 122300 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .xword } }, .any, .any }, |
| 122301 | .patterns = &.{ |
| 122302 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122303 | }, |
| 122304 | .extra_temps = .{ |
| 122305 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122306 | .{ .type = .vector_1_u128, .kind = .{ .rc = .sse } }, |
| 122307 | .unused, |
| 122308 | .unused, |
| 122309 | .unused, |
| 122310 | .unused, |
| 122311 | .unused, |
| 122312 | .unused, |
| 122313 | .unused, |
| 122314 | .unused, |
| 122315 | .unused, |
| 122316 | }, |
| 122317 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122318 | .clobbers = .{ .eflags = true }, |
| 122319 | .each = .{ .once = &.{ |
| 122320 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 122321 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 122322 | .{ .@"0:", .v_ps, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 122323 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 122324 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122325 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 122326 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp1x, ._ }, |
| 122327 | } }, |
| 122328 | }, .{ |
| 122329 | .required_features = .{ .sse2, null, null, null }, |
| 122330 | .dst_constraints = .{ .{ .int = .xword }, .any }, |
| 122331 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 122332 | .patterns = &.{ |
| 122333 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122334 | }, |
| 122335 | .extra_temps = .{ |
| 122336 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122337 | .unused, |
| 122338 | .unused, |
| 122339 | .unused, |
| 122340 | .unused, |
| 122341 | .unused, |
| 122342 | .unused, |
| 122343 | .unused, |
| 122344 | .unused, |
| 122345 | .unused, |
| 122346 | .unused, |
| 122347 | }, |
| 122348 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122349 | .clobbers = .{ .eflags = true }, |
| 122350 | .each = .{ .once = &.{ |
| 122351 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 122352 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 122353 | .{ .@"0:", .p_, mir_tag, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 122354 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 122355 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122356 | } }, |
| 122357 | }, .{ |
| 122358 | .required_features = .{ .avx512f, null, null, null }, |
| 122359 | .dst_constraints = .{ .{ .int = .xword }, .any }, |
| 122360 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .xword } }, .any, .any }, |
| 122361 | .patterns = &.{ |
| 122362 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122363 | }, |
| 122364 | .extra_temps = .{ |
| 122365 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122366 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ |
| 122367 | .ref = .src0, |
| 122368 | .invert = switch (mir_tag) { |
| 122369 | else => unreachable, |
| 122370 | .@"and" => true, |
| 122371 | .@"or", .xor => false, |
| 122372 | }, |
| 122373 | } } }, |
| 122374 | .{ .type = .vector_2_u128, .kind = .{ .rc = .sse } }, |
| 122375 | .unused, |
| 122376 | .unused, |
| 122377 | .unused, |
| 122378 | .unused, |
| 122379 | .unused, |
| 122380 | .unused, |
| 122381 | .unused, |
| 122382 | .unused, |
| 122383 | }, |
| 122384 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122385 | .clobbers = .{ .eflags = true }, |
| 122386 | .each = .{ .once = &.{ |
| 122387 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 122388 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 122389 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 122390 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 122391 | .{ ._, .vp_, switch (mir_tag) { |
| 122392 | else => unreachable, |
| 122393 | .@"and" => .@"or", |
| 122394 | .@"or", .xor => .@"and", |
| 122395 | }, .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 122396 | .{ ._, .vp_, switch (mir_tag) { |
| 122397 | else => unreachable, |
| 122398 | .@"and" => .@"or", |
| 122399 | .@"or", .xor => .@"and", |
| 122400 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 122401 | .{ .@"0:", .vp_, mir_tag, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 122402 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 122403 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 122404 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122405 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .tmp2y, ._ }, |
| 122406 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 122407 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 122408 | } }, |
| 122409 | }, .{ |
| 122410 | .required_features = .{ .avx2, null, null, null }, |
| 122411 | .dst_constraints = .{ .{ .int = .xword }, .any }, |
| 122412 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .xword } }, .any, .any }, |
| 122413 | .patterns = &.{ |
| 122414 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122415 | }, |
| 122416 | .extra_temps = .{ |
| 122417 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122418 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 122419 | .ref = .src0, |
| 122420 | .invert = switch (mir_tag) { |
| 122421 | else => unreachable, |
| 122422 | .@"and" => true, |
| 122423 | .@"or", .xor => false, |
| 122424 | }, |
| 122425 | } } }, |
| 122426 | .{ .type = .vector_1_u128, .kind = .{ .rc = .sse } }, |
| 122427 | .unused, |
| 122428 | .unused, |
| 122429 | .unused, |
| 122430 | .unused, |
| 122431 | .unused, |
| 122432 | .unused, |
| 122433 | .unused, |
| 122434 | .unused, |
| 122435 | }, |
| 122436 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122437 | .clobbers = .{ .eflags = true }, |
| 122438 | .each = .{ .once = &.{ |
| 122439 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 122440 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 122441 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 122442 | .{ ._, .vp_, switch (mir_tag) { |
| 122443 | else => unreachable, |
| 122444 | .@"and" => .@"or", |
| 122445 | .@"or", .xor => .@"and", |
| 122446 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 122447 | .{ .@"0:", .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 122448 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 122449 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122450 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 122451 | .{ ._, .vp_, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 122452 | } }, |
| 122453 | }, .{ |
| 122454 | .required_features = .{ .avx, null, null, null }, |
| 122455 | .dst_constraints = .{ .{ .int = .xword }, .any }, |
| 122456 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .xword } }, .any, .any }, |
| 122457 | .patterns = &.{ |
| 122458 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122459 | }, |
| 122460 | .extra_temps = .{ |
| 122461 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122462 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 122463 | .ref = .src0, |
| 122464 | .invert = switch (mir_tag) { |
| 122465 | else => unreachable, |
| 122466 | .@"and" => true, |
| 122467 | .@"or", .xor => false, |
| 122468 | }, |
| 122469 | } } }, |
| 122470 | .{ .type = .vector_1_u128, .kind = .{ .rc = .sse } }, |
| 122471 | .unused, |
| 122472 | .unused, |
| 122473 | .unused, |
| 122474 | .unused, |
| 122475 | .unused, |
| 122476 | .unused, |
| 122477 | .unused, |
| 122478 | .unused, |
| 122479 | }, |
| 122480 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122481 | .clobbers = .{ .eflags = true }, |
| 122482 | .each = .{ .once = &.{ |
| 122483 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 122484 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 122485 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 122486 | .{ ._, .v_ps, switch (mir_tag) { |
| 122487 | else => unreachable, |
| 122488 | .@"and" => .@"or", |
| 122489 | .@"or", .xor => .@"and", |
| 122490 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 122491 | .{ .@"0:", .v_ps, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 122492 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 122493 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122494 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 122495 | .{ ._, .v_ps, mir_tag, .dst0x, .dst0x, .tmp2x, ._ }, |
| 122496 | } }, |
| 122497 | }, .{ |
| 122498 | .required_features = .{ .sse2, null, null, null }, |
| 122499 | .dst_constraints = .{ .{ .int = .xword }, .any }, |
| 122500 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 122501 | .patterns = &.{ |
| 122502 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122503 | }, |
| 122504 | .extra_temps = .{ |
| 122505 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122506 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ |
| 122507 | .ref = .src0, |
| 122508 | .invert = switch (mir_tag) { |
| 122509 | else => unreachable, |
| 122510 | .@"and" => true, |
| 122511 | .@"or", .xor => false, |
| 122512 | }, |
| 122513 | } } }, |
| 122514 | .unused, |
| 122515 | .unused, |
| 122516 | .unused, |
| 122517 | .unused, |
| 122518 | .unused, |
| 122519 | .unused, |
| 122520 | .unused, |
| 122521 | .unused, |
| 122522 | .unused, |
| 122523 | }, |
| 122524 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122525 | .clobbers = .{ .eflags = true }, |
| 122526 | .each = .{ .once = &.{ |
| 122527 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 122528 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 122529 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 122530 | .{ ._, .p_, switch (mir_tag) { |
| 122531 | else => unreachable, |
| 122532 | .@"and" => .@"or", |
| 122533 | .@"or", .xor => .@"and", |
| 122534 | }, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 122535 | .{ .@"0:", .p_, mir_tag, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 122536 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 122537 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122538 | } }, |
| 122539 | }, .{ |
| 122540 | .required_features = .{ .avx512f, null, null, null }, |
| 122541 | .dst_constraints = .{ .{ .int = .yword }, .any }, |
| 122542 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .yword } }, .any, .any }, |
| 122543 | .patterns = &.{ |
| 122544 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122545 | }, |
| 122546 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122547 | .each = .{ .once = &.{ |
| 122548 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 122549 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 122550 | } }, |
| 122551 | }, .{ |
| 122552 | .required_features = .{ .avx2, null, null, null }, |
| 122553 | .dst_constraints = .{ .{ .int = .yword }, .any }, |
| 122554 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .yword } }, .any, .any }, |
| 122555 | .patterns = &.{ |
| 122556 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122557 | }, |
| 122558 | .extra_temps = .{ |
| 122559 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122560 | .unused, |
| 122561 | .unused, |
| 122562 | .unused, |
| 122563 | .unused, |
| 122564 | .unused, |
| 122565 | .unused, |
| 122566 | .unused, |
| 122567 | .unused, |
| 122568 | .unused, |
| 122569 | .unused, |
| 122570 | }, |
| 122571 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122572 | .clobbers = .{ .eflags = true }, |
| 122573 | .each = .{ .once = &.{ |
| 122574 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 122575 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 122576 | .{ .@"0:", .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 122577 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 122578 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122579 | } }, |
| 122580 | }, .{ |
| 122581 | .required_features = .{ .avx, null, null, null }, |
| 122582 | .dst_constraints = .{ .{ .int = .yword }, .any }, |
| 122583 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .yword } }, .any, .any }, |
| 122584 | .patterns = &.{ |
| 122585 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122586 | }, |
| 122587 | .extra_temps = .{ |
| 122588 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122589 | .unused, |
| 122590 | .unused, |
| 122591 | .unused, |
| 122592 | .unused, |
| 122593 | .unused, |
| 122594 | .unused, |
| 122595 | .unused, |
| 122596 | .unused, |
| 122597 | .unused, |
| 122598 | .unused, |
| 122599 | }, |
| 122600 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122601 | .clobbers = .{ .eflags = true }, |
| 122602 | .each = .{ .once = &.{ |
| 122603 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 122604 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 122605 | .{ .@"0:", .v_ps, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 122606 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 122607 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122608 | } }, |
| 122609 | }, .{ |
| 122610 | .required_features = .{ .avx512f, null, null, null }, |
| 122611 | .dst_constraints = .{ .{ .int = .yword }, .any }, |
| 122612 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .yword } }, .any, .any }, |
| 122613 | .patterns = &.{ |
| 122614 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122615 | }, |
| 122616 | .extra_temps = .{ |
| 122617 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122618 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ |
| 122619 | .ref = .src0, |
| 122620 | .invert = switch (mir_tag) { |
| 122621 | else => unreachable, |
| 122622 | .@"and" => true, |
| 122623 | .@"or", .xor => false, |
| 122624 | }, |
| 122625 | } } }, |
| 122626 | .{ .type = .vector_1_u256, .kind = .{ .rc = .sse } }, |
| 122627 | .unused, |
| 122628 | .unused, |
| 122629 | .unused, |
| 122630 | .unused, |
| 122631 | .unused, |
| 122632 | .unused, |
| 122633 | .unused, |
| 122634 | .unused, |
| 122635 | }, |
| 122636 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122637 | .clobbers = .{ .eflags = true }, |
| 122638 | .each = .{ .once = &.{ |
| 122639 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 122640 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 122641 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 122642 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 122643 | .{ ._, .vp_, switch (mir_tag) { |
| 122644 | else => unreachable, |
| 122645 | .@"and" => .@"or", |
| 122646 | .@"or", .xor => .@"and", |
| 122647 | }, .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 122648 | .{ ._, .vp_, switch (mir_tag) { |
| 122649 | else => unreachable, |
| 122650 | .@"and" => .@"or", |
| 122651 | .@"or", .xor => .@"and", |
| 122652 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 122653 | .{ .@"0:", .vp_, mir_tag, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 122654 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 122655 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 122656 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122657 | .{ ._, .vp_, mir_tag, .dst0y, .dst0y, .tmp2y, ._ }, |
| 122658 | } }, |
| 122659 | }, .{ |
| 122660 | .required_features = .{ .avx2, null, null, null }, |
| 122661 | .dst_constraints = .{ .{ .int = .yword }, .any }, |
| 122662 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .yword } }, .any, .any }, |
| 122663 | .patterns = &.{ |
| 122664 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122665 | }, |
| 122666 | .extra_temps = .{ |
| 122667 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122668 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 122669 | .ref = .src0, |
| 122670 | .invert = switch (mir_tag) { |
| 122671 | else => unreachable, |
| 122672 | .@"and" => true, |
| 122673 | .@"or", .xor => false, |
| 122674 | }, |
| 122675 | } } }, |
| 122676 | .unused, |
| 122677 | .unused, |
| 122678 | .unused, |
| 122679 | .unused, |
| 122680 | .unused, |
| 122681 | .unused, |
| 122682 | .unused, |
| 122683 | .unused, |
| 122684 | .unused, |
| 122685 | }, |
| 122686 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122687 | .clobbers = .{ .eflags = true }, |
| 122688 | .each = .{ .once = &.{ |
| 122689 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 122690 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 122691 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 122692 | .{ ._, .vp_, switch (mir_tag) { |
| 122693 | else => unreachable, |
| 122694 | .@"and" => .@"or", |
| 122695 | .@"or", .xor => .@"and", |
| 122696 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 122697 | .{ .@"0:", .vp_, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 122698 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 122699 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122700 | } }, |
| 122701 | }, .{ |
| 122702 | .required_features = .{ .avx, null, null, null }, |
| 122703 | .dst_constraints = .{ .{ .int = .yword }, .any }, |
| 122704 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .yword } }, .any, .any }, |
| 122705 | .patterns = &.{ |
| 122706 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122707 | }, |
| 122708 | .extra_temps = .{ |
| 122709 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122710 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ |
| 122711 | .ref = .src0, |
| 122712 | .invert = switch (mir_tag) { |
| 122713 | else => unreachable, |
| 122714 | .@"and" => true, |
| 122715 | .@"or", .xor => false, |
| 122716 | }, |
| 122717 | } } }, |
| 122718 | .unused, |
| 122719 | .unused, |
| 122720 | .unused, |
| 122721 | .unused, |
| 122722 | .unused, |
| 122723 | .unused, |
| 122724 | .unused, |
| 122725 | .unused, |
| 122726 | .unused, |
| 122727 | }, |
| 122728 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 122729 | .clobbers = .{ .eflags = true }, |
| 122730 | .each = .{ .once = &.{ |
| 122731 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 122732 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 122733 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 122734 | .{ ._, .v_ps, switch (mir_tag) { |
| 122735 | else => unreachable, |
| 122736 | .@"and" => .@"or", |
| 122737 | .@"or", .xor => .@"and", |
| 122738 | }, .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 122739 | .{ .@"0:", .v_ps, mir_tag, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 122740 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 122741 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122742 | } }, |
| 122743 | }, .{ |
| 122744 | .required_features = .{ .@"64bit", null, null, null }, |
| 122745 | .dst_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 122746 | .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 122747 | .patterns = &.{ |
| 122748 | .{ .src = .{ .to_mem, .none, .none } }, |
| 122749 | }, |
| 122750 | .extra_temps = .{ |
| 122751 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 122752 | .{ .type = .u32, .kind = .{ .reg = .rsi } }, |
| 122753 | .{ .type = .usize, .kind = .{ .reg = .rdi } }, |
| 122754 | .{ .type = .u64, .kind = .{ .reg = .rcx } }, |
| 122755 | .unused, |
| 122756 | .unused, |
| 122757 | .unused, |
| 122758 | .unused, |
| 122759 | .unused, |
| 122760 | .unused, |
| 122761 | .unused, |
| 122762 | }, |
| 122763 | .dst_temps = .{ .mem, .unused }, |
| 122764 | .clobbers = .{ .eflags = true }, |
| 122765 | .each = .{ .once = &.{ |
| 122766 | .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 122767 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 122768 | .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ }, |
| 122769 | .{ ._, ._, .mov, .tmp3d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| 122770 | .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ }, |
| 122771 | .{ .@"0:", ._, .mov, .tmp1d, .sia(-8, .dst0, .add_size), ._, ._ }, |
| 122772 | .{ ._, ._, .lea, .tmp2q, .memi(.src0, .tmp0), ._, ._ }, |
| 122773 | .{ .@"1:", ._, .mov, .tmp3q, .leai(.tmp2q, .tmp1), ._, ._ }, |
| 122774 | .{ ._, ._, mir_tag, .memi(.dst0q, .tmp1), .tmp3q, ._, ._ }, |
| 122775 | .{ ._, ._, .sub, .tmp1d, .si(8), ._, ._ }, |
| 122776 | .{ ._, ._nb, .j, .@"1b", ._, ._, ._ }, |
| 122777 | .{ ._, ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 122778 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 122779 | } }, |
| 122780 | } }, |
| 122781 | }, |
| 122782 | .Min => comptime &.{ .{ |
| 122783 | .required_features = .{ .avx, null, null, null }, |
| 122784 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 122785 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 122786 | .patterns = &.{ |
| 122787 | .{ .src = .{ .to_sse, .none, .none } }, |
| 122788 | }, |
| 122789 | .extra_temps = .{ |
| 122790 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 122791 | .unused, |
| 122792 | .unused, |
| 122793 | .unused, |
| 122794 | .unused, |
| 122795 | .unused, |
| 122796 | .unused, |
| 122797 | .unused, |
| 122798 | .unused, |
| 122799 | .unused, |
| 122800 | .unused, |
| 122801 | }, |
| 122802 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 122803 | .each = .{ .once = &.{ |
| 122804 | .{ ._, .vp_w, .srl, .tmp0x, .src0x, .ui(8), ._ }, |
| 122805 | .{ ._, .vp_b, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 122806 | } }, |
| 122807 | }, .{ |
| 122808 | .required_features = .{ .sse4_1, null, null, null }, |
| 122809 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 122810 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 122811 | .patterns = &.{ |
| 122812 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 122813 | }, |
| 122814 | .extra_temps = .{ |
| 122815 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 122816 | .unused, |
| 122817 | .unused, |
| 122818 | .unused, |
| 122819 | .unused, |
| 122820 | .unused, |
| 122821 | .unused, |
| 122822 | .unused, |
| 122823 | .unused, |
| 122824 | .unused, |
| 122825 | .unused, |
| 122826 | }, |
| 122827 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 122828 | .each = .{ .once = &.{ |
| 122829 | .{ ._, ._dqa, .mov, .tmp0x, .src0x, ._, ._ }, |
| 122830 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 122831 | .{ ._, .p_b, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 122832 | } }, |
| 122833 | }, .{ |
| 122834 | .required_features = .{ .sse2, null, null, null }, |
| 122835 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 122836 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 122837 | .patterns = &.{ |
| 122838 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 122839 | }, |
| 122840 | .extra_temps = .{ |
| 122841 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 122842 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 122843 | .unused, |
| 122844 | .unused, |
| 122845 | .unused, |
| 122846 | .unused, |
| 122847 | .unused, |
| 122848 | .unused, |
| 122849 | .unused, |
| 122850 | .unused, |
| 122851 | .unused, |
| 122852 | }, |
| 122853 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 122854 | .each = .{ .once = &.{ |
| 122855 | .{ ._, ._dqa, .mov, .tmp0x, .src0x, ._, ._ }, |
| 122856 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 122857 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 122858 | .{ ._, .p_b, .cmpgt, .tmp1x, .src0x, ._, ._ }, |
| 122859 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 122860 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 122861 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 122862 | } }, |
| 122863 | }, .{ |
| 122864 | .required_features = .{ .avx, null, null, null }, |
| 122865 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 122866 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 122867 | .patterns = &.{ |
| 122868 | .{ .src = .{ .to_sse, .none, .none } }, |
| 122869 | }, |
| 122870 | .extra_temps = .{ |
| 122871 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 122872 | .unused, |
| 122873 | .unused, |
| 122874 | .unused, |
| 122875 | .unused, |
| 122876 | .unused, |
| 122877 | .unused, |
| 122878 | .unused, |
| 122879 | .unused, |
| 122880 | .unused, |
| 122881 | .unused, |
| 122882 | }, |
| 122883 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 122884 | .each = .{ .once = &.{ |
| 122885 | .{ ._, .vp_w, .srl, .tmp0x, .src0x, .ui(8), ._ }, |
| 122886 | .{ ._, .vp_b, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 122887 | } }, |
| 122888 | }, .{ |
| 122889 | .required_features = .{ .sse2, null, null, null }, |
| 122890 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 122891 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 122892 | .patterns = &.{ |
| 122893 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 122894 | }, |
| 122895 | .extra_temps = .{ |
| 122896 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 122897 | .unused, |
| 122898 | .unused, |
| 122899 | .unused, |
| 122900 | .unused, |
| 122901 | .unused, |
| 122902 | .unused, |
| 122903 | .unused, |
| 122904 | .unused, |
| 122905 | .unused, |
| 122906 | .unused, |
| 122907 | }, |
| 122908 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 122909 | .each = .{ .once = &.{ |
| 122910 | .{ ._, ._dqa, .mov, .tmp0x, .src0x, ._, ._ }, |
| 122911 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 122912 | .{ ._, .p_b, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 122913 | } }, |
| 122914 | }, .{ |
| 122915 | .required_features = .{ .avx, null, null, null }, |
| 122916 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 122917 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 122918 | .patterns = &.{ |
| 122919 | .{ .src = .{ .to_sse, .none, .none } }, |
| 122920 | }, |
| 122921 | .extra_temps = .{ |
| 122922 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 122923 | .unused, |
| 122924 | .unused, |
| 122925 | .unused, |
| 122926 | .unused, |
| 122927 | .unused, |
| 122928 | .unused, |
| 122929 | .unused, |
| 122930 | .unused, |
| 122931 | .unused, |
| 122932 | .unused, |
| 122933 | }, |
| 122934 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 122935 | .each = .{ .once = &.{ |
| 122936 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 122937 | .{ ._, .vp_b, .mins, .tmp0x, .src0x, .tmp0x, ._ }, |
| 122938 | .{ ._, .vp_w, .srl, .dst0x, .src0x, .ui(8), ._ }, |
| 122939 | .{ ._, .vp_b, .mins, .dst0x, .tmp0x, .dst0x, ._ }, |
| 122940 | } }, |
| 122941 | }, .{ |
| 122942 | .required_features = .{ .sse4_1, null, null, null }, |
| 122943 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 122944 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 122945 | .patterns = &.{ |
| 122946 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 122947 | }, |
| 122948 | .extra_temps = .{ |
| 122949 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 122950 | .unused, |
| 122951 | .unused, |
| 122952 | .unused, |
| 122953 | .unused, |
| 122954 | .unused, |
| 122955 | .unused, |
| 122956 | .unused, |
| 122957 | .unused, |
| 122958 | .unused, |
| 122959 | .unused, |
| 122960 | }, |
| 122961 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 122962 | .each = .{ .once = &.{ |
| 122963 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 122964 | .{ ._, .p_b, .mins, .tmp0x, .src0x, ._, ._ }, |
| 122965 | .{ ._, .p_w, .srl, .dst0x, .ui(8), ._, ._ }, |
| 122966 | .{ ._, .p_b, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 122967 | } }, |
| 122968 | }, .{ |
| 122969 | .required_features = .{ .sse2, null, null, null }, |
| 122970 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 122971 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 122972 | .patterns = &.{ |
| 122973 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 122974 | }, |
| 122975 | .extra_temps = .{ |
| 122976 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 122977 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 122978 | .unused, |
| 122979 | .unused, |
| 122980 | .unused, |
| 122981 | .unused, |
| 122982 | .unused, |
| 122983 | .unused, |
| 122984 | .unused, |
| 122985 | .unused, |
| 122986 | .unused, |
| 122987 | }, |
| 122988 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 122989 | .each = .{ .once = &.{ |
| 122990 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 122991 | .{ ._, ._dqa, .mov, .tmp1x, .src0x, ._, ._ }, |
| 122992 | .{ ._, .p_b, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 122993 | .{ ._, .p_, .@"and", .tmp0x, .tmp1x, ._, ._ }, |
| 122994 | .{ ._, .p_, .andn, .tmp1x, .src0x, ._, ._ }, |
| 122995 | .{ ._, .p_, .@"or", .tmp0x, .tmp1x, ._, ._ }, |
| 122996 | .{ ._, .p_w, .srl, .dst0x, .ui(8), ._, ._ }, |
| 122997 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 122998 | .{ ._, .p_b, .cmpgt, .tmp1x, .dst0x, ._, ._ }, |
| 122999 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 123000 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 123001 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 123002 | } }, |
| 123003 | }, .{ |
| 123004 | .required_features = .{ .avx, null, null, null }, |
| 123005 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123006 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 123007 | .patterns = &.{ |
| 123008 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123009 | }, |
| 123010 | .extra_temps = .{ |
| 123011 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123012 | .unused, |
| 123013 | .unused, |
| 123014 | .unused, |
| 123015 | .unused, |
| 123016 | .unused, |
| 123017 | .unused, |
| 123018 | .unused, |
| 123019 | .unused, |
| 123020 | .unused, |
| 123021 | .unused, |
| 123022 | }, |
| 123023 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123024 | .each = .{ .once = &.{ |
| 123025 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 123026 | .{ ._, .vp_b, .minu, .tmp0x, .src0x, .tmp0x, ._ }, |
| 123027 | .{ ._, .vp_w, .srl, .dst0x, .src0x, .ui(8), ._ }, |
| 123028 | .{ ._, .vp_b, .minu, .dst0x, .tmp0x, .dst0x, ._ }, |
| 123029 | } }, |
| 123030 | }, .{ |
| 123031 | .required_features = .{ .sse2, null, null, null }, |
| 123032 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123033 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 123034 | .patterns = &.{ |
| 123035 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123036 | }, |
| 123037 | .extra_temps = .{ |
| 123038 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123039 | .unused, |
| 123040 | .unused, |
| 123041 | .unused, |
| 123042 | .unused, |
| 123043 | .unused, |
| 123044 | .unused, |
| 123045 | .unused, |
| 123046 | .unused, |
| 123047 | .unused, |
| 123048 | .unused, |
| 123049 | }, |
| 123050 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123051 | .each = .{ .once = &.{ |
| 123052 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 123053 | .{ ._, .p_b, .minu, .tmp0x, .src0x, ._, ._ }, |
| 123054 | .{ ._, .p_w, .srl, .dst0x, .ui(8), ._, ._ }, |
| 123055 | .{ ._, .p_b, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 123056 | } }, |
| 123057 | }, .{ |
| 123058 | .required_features = .{ .avx, null, null, null }, |
| 123059 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123060 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 123061 | .patterns = &.{ |
| 123062 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123063 | }, |
| 123064 | .extra_temps = .{ |
| 123065 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123066 | .unused, |
| 123067 | .unused, |
| 123068 | .unused, |
| 123069 | .unused, |
| 123070 | .unused, |
| 123071 | .unused, |
| 123072 | .unused, |
| 123073 | .unused, |
| 123074 | .unused, |
| 123075 | .unused, |
| 123076 | }, |
| 123077 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123078 | .each = .{ .once = &.{ |
| 123079 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 123080 | .{ ._, .vp_b, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 123081 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 123082 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 123083 | } }, |
| 123084 | }, .{ |
| 123085 | .required_features = .{ .sse4_1, null, null, null }, |
| 123086 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123087 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 123088 | .patterns = &.{ |
| 123089 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123090 | }, |
| 123091 | .extra_temps = .{ |
| 123092 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123093 | .unused, |
| 123094 | .unused, |
| 123095 | .unused, |
| 123096 | .unused, |
| 123097 | .unused, |
| 123098 | .unused, |
| 123099 | .unused, |
| 123100 | .unused, |
| 123101 | .unused, |
| 123102 | .unused, |
| 123103 | }, |
| 123104 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123105 | .each = .{ .once = &.{ |
| 123106 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 123107 | .{ ._, .p_b, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 123108 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 123109 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 123110 | .{ ._, .p_b, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 123111 | } }, |
| 123112 | }, .{ |
| 123113 | .required_features = .{ .sse2, null, null, null }, |
| 123114 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123115 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 123116 | .patterns = &.{ |
| 123117 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123118 | }, |
| 123119 | .extra_temps = .{ |
| 123120 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123121 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123122 | .unused, |
| 123123 | .unused, |
| 123124 | .unused, |
| 123125 | .unused, |
| 123126 | .unused, |
| 123127 | .unused, |
| 123128 | .unused, |
| 123129 | .unused, |
| 123130 | .unused, |
| 123131 | }, |
| 123132 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123133 | .each = .{ .once = &.{ |
| 123134 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 123135 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 123136 | .{ ._, .p_b, .cmpgt, .tmp1x, .src0x, ._, ._ }, |
| 123137 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 123138 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 123139 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 123140 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 123141 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 123142 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 123143 | .{ ._, .p_b, .cmpgt, .tmp1x, .dst0x, ._, ._ }, |
| 123144 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 123145 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 123146 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 123147 | } }, |
| 123148 | }, .{ |
| 123149 | .required_features = .{ .avx, null, null, null }, |
| 123150 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123151 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 123152 | .patterns = &.{ |
| 123153 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123154 | }, |
| 123155 | .extra_temps = .{ |
| 123156 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123157 | .unused, |
| 123158 | .unused, |
| 123159 | .unused, |
| 123160 | .unused, |
| 123161 | .unused, |
| 123162 | .unused, |
| 123163 | .unused, |
| 123164 | .unused, |
| 123165 | .unused, |
| 123166 | .unused, |
| 123167 | }, |
| 123168 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123169 | .each = .{ .once = &.{ |
| 123170 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 123171 | .{ ._, .vp_b, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 123172 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 123173 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 123174 | } }, |
| 123175 | }, .{ |
| 123176 | .required_features = .{ .sse2, null, null, null }, |
| 123177 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123178 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 123179 | .patterns = &.{ |
| 123180 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123181 | }, |
| 123182 | .extra_temps = .{ |
| 123183 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123184 | .unused, |
| 123185 | .unused, |
| 123186 | .unused, |
| 123187 | .unused, |
| 123188 | .unused, |
| 123189 | .unused, |
| 123190 | .unused, |
| 123191 | .unused, |
| 123192 | .unused, |
| 123193 | .unused, |
| 123194 | }, |
| 123195 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123196 | .each = .{ .once = &.{ |
| 123197 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 123198 | .{ ._, .p_b, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 123199 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 123200 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 123201 | .{ ._, .p_b, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 123202 | } }, |
| 123203 | }, .{ |
| 123204 | .required_features = .{ .avx, null, null, null }, |
| 123205 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123206 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 123207 | .patterns = &.{ |
| 123208 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123209 | }, |
| 123210 | .extra_temps = .{ |
| 123211 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123212 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 123213 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 123214 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123215 | .unused, |
| 123216 | .unused, |
| 123217 | .unused, |
| 123218 | .unused, |
| 123219 | .unused, |
| 123220 | .unused, |
| 123221 | .unused, |
| 123222 | }, |
| 123223 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123224 | .each = .{ .once = &.{ |
| 123225 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 123226 | .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 123227 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 123228 | .{ ._, .vp_, .@"or", .dst0x, .dst0x, .lea(.tmp0x), ._ }, |
| 123229 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123230 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123231 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 123232 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123233 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 123234 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123235 | } }, |
| 123236 | }, .{ |
| 123237 | .required_features = .{ .sse4_1, null, null, null }, |
| 123238 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123239 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 123240 | .patterns = &.{ |
| 123241 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123242 | }, |
| 123243 | .extra_temps = .{ |
| 123244 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123245 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 123246 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 123247 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123248 | .unused, |
| 123249 | .unused, |
| 123250 | .unused, |
| 123251 | .unused, |
| 123252 | .unused, |
| 123253 | .unused, |
| 123254 | .unused, |
| 123255 | }, |
| 123256 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123257 | .each = .{ .once = &.{ |
| 123258 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 123259 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 123260 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 123261 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 123262 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123263 | .{ ._, .p_b, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 123264 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 123265 | .{ ._, .p_b, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 123266 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 123267 | .{ ._, .p_w, .srl, .tmp3x, .ui(8), ._, ._ }, |
| 123268 | .{ ._, .p_b, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 123269 | } }, |
| 123270 | }, .{ |
| 123271 | .required_features = .{ .sse2, null, null, null }, |
| 123272 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123273 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 123274 | .patterns = &.{ |
| 123275 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123276 | }, |
| 123277 | .extra_temps = .{ |
| 123278 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123279 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 123280 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 123281 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123282 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123283 | .unused, |
| 123284 | .unused, |
| 123285 | .unused, |
| 123286 | .unused, |
| 123287 | .unused, |
| 123288 | .unused, |
| 123289 | }, |
| 123290 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123291 | .each = .{ .once = &.{ |
| 123292 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 123293 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 123294 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 123295 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 123296 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123297 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 123298 | .{ ._, .p_b, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 123299 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 123300 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 123301 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 123302 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 123303 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 123304 | .{ ._, .p_b, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 123305 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 123306 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 123307 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 123308 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 123309 | .{ ._, .p_w, .srl, .tmp3x, .ui(8), ._, ._ }, |
| 123310 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 123311 | .{ ._, .p_b, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 123312 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 123313 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 123314 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 123315 | } }, |
| 123316 | }, .{ |
| 123317 | .required_features = .{ .avx, null, null, null }, |
| 123318 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123319 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 123320 | .patterns = &.{ |
| 123321 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123322 | }, |
| 123323 | .extra_temps = .{ |
| 123324 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123325 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 123326 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123327 | .unused, |
| 123328 | .unused, |
| 123329 | .unused, |
| 123330 | .unused, |
| 123331 | .unused, |
| 123332 | .unused, |
| 123333 | .unused, |
| 123334 | .unused, |
| 123335 | }, |
| 123336 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123337 | .each = .{ .once = &.{ |
| 123338 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 123339 | .{ ._, .vp_, .@"or", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 123340 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 123341 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 123342 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 123343 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 123344 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 123345 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 123346 | } }, |
| 123347 | }, .{ |
| 123348 | .required_features = .{ .sse2, null, null, null }, |
| 123349 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123350 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 123351 | .patterns = &.{ |
| 123352 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123353 | }, |
| 123354 | .extra_temps = .{ |
| 123355 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123356 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 123357 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123358 | .unused, |
| 123359 | .unused, |
| 123360 | .unused, |
| 123361 | .unused, |
| 123362 | .unused, |
| 123363 | .unused, |
| 123364 | .unused, |
| 123365 | .unused, |
| 123366 | }, |
| 123367 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123368 | .each = .{ .once = &.{ |
| 123369 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 123370 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 123371 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 123372 | .{ ._, .p_b, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 123373 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 123374 | .{ ._, .p_b, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 123375 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 123376 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 123377 | .{ ._, .p_b, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 123378 | } }, |
| 123379 | }, .{ |
| 123380 | .required_features = .{ .avx, null, null, null }, |
| 123381 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123382 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 123383 | .patterns = &.{ |
| 123384 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123385 | }, |
| 123386 | .extra_temps = .{ |
| 123387 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123388 | .unused, |
| 123389 | .unused, |
| 123390 | .unused, |
| 123391 | .unused, |
| 123392 | .unused, |
| 123393 | .unused, |
| 123394 | .unused, |
| 123395 | .unused, |
| 123396 | .unused, |
| 123397 | .unused, |
| 123398 | }, |
| 123399 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123400 | .each = .{ .once = &.{ |
| 123401 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 123402 | .{ ._, .vp_b, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 123403 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 123404 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 123405 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 123406 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 123407 | } }, |
| 123408 | }, .{ |
| 123409 | .required_features = .{ .sse4_1, null, null, null }, |
| 123410 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123411 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 123412 | .patterns = &.{ |
| 123413 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123414 | }, |
| 123415 | .extra_temps = .{ |
| 123416 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123417 | .unused, |
| 123418 | .unused, |
| 123419 | .unused, |
| 123420 | .unused, |
| 123421 | .unused, |
| 123422 | .unused, |
| 123423 | .unused, |
| 123424 | .unused, |
| 123425 | .unused, |
| 123426 | .unused, |
| 123427 | }, |
| 123428 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123429 | .each = .{ .once = &.{ |
| 123430 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 123431 | .{ ._, .p_b, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 123432 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 123433 | .{ ._, .p_b, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 123434 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 123435 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 123436 | .{ ._, .p_b, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 123437 | } }, |
| 123438 | }, .{ |
| 123439 | .required_features = .{ .sse2, null, null, null }, |
| 123440 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123441 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 123442 | .patterns = &.{ |
| 123443 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123444 | }, |
| 123445 | .extra_temps = .{ |
| 123446 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123447 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123448 | .unused, |
| 123449 | .unused, |
| 123450 | .unused, |
| 123451 | .unused, |
| 123452 | .unused, |
| 123453 | .unused, |
| 123454 | .unused, |
| 123455 | .unused, |
| 123456 | .unused, |
| 123457 | }, |
| 123458 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123459 | .each = .{ .once = &.{ |
| 123460 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 123461 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 123462 | .{ ._, .p_b, .cmpgt, .tmp1x, .src0x, ._, ._ }, |
| 123463 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 123464 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 123465 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 123466 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 123467 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 123468 | .{ ._, .p_b, .cmpgt, .tmp1x, .dst0x, ._, ._ }, |
| 123469 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 123470 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 123471 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 123472 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 123473 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 123474 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 123475 | .{ ._, .p_b, .cmpgt, .tmp1x, .dst0x, ._, ._ }, |
| 123476 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 123477 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 123478 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 123479 | } }, |
| 123480 | }, .{ |
| 123481 | .required_features = .{ .avx, null, null, null }, |
| 123482 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123483 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 123484 | .patterns = &.{ |
| 123485 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123486 | }, |
| 123487 | .extra_temps = .{ |
| 123488 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123489 | .unused, |
| 123490 | .unused, |
| 123491 | .unused, |
| 123492 | .unused, |
| 123493 | .unused, |
| 123494 | .unused, |
| 123495 | .unused, |
| 123496 | .unused, |
| 123497 | .unused, |
| 123498 | .unused, |
| 123499 | }, |
| 123500 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123501 | .each = .{ .once = &.{ |
| 123502 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 123503 | .{ ._, .vp_b, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 123504 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 123505 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 123506 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 123507 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 123508 | } }, |
| 123509 | }, .{ |
| 123510 | .required_features = .{ .sse2, null, null, null }, |
| 123511 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123512 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 123513 | .patterns = &.{ |
| 123514 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123515 | }, |
| 123516 | .extra_temps = .{ |
| 123517 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123518 | .unused, |
| 123519 | .unused, |
| 123520 | .unused, |
| 123521 | .unused, |
| 123522 | .unused, |
| 123523 | .unused, |
| 123524 | .unused, |
| 123525 | .unused, |
| 123526 | .unused, |
| 123527 | .unused, |
| 123528 | }, |
| 123529 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123530 | .each = .{ .once = &.{ |
| 123531 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 123532 | .{ ._, .p_b, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 123533 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 123534 | .{ ._, .p_b, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 123535 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 123536 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 123537 | .{ ._, .p_b, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 123538 | } }, |
| 123539 | }, .{ |
| 123540 | .required_features = .{ .avx, null, null, null }, |
| 123541 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123542 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 123543 | .patterns = &.{ |
| 123544 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123545 | }, |
| 123546 | .extra_temps = .{ |
| 123547 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123548 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 123549 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 123550 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123551 | .unused, |
| 123552 | .unused, |
| 123553 | .unused, |
| 123554 | .unused, |
| 123555 | .unused, |
| 123556 | .unused, |
| 123557 | .unused, |
| 123558 | }, |
| 123559 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123560 | .each = .{ .once = &.{ |
| 123561 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 123562 | .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 123563 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 123564 | .{ ._, .vp_, .@"or", .dst0x, .dst0x, .lea(.tmp0x), ._ }, |
| 123565 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123566 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123567 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123568 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123569 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 123570 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123571 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 123572 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123573 | } }, |
| 123574 | }, .{ |
| 123575 | .required_features = .{ .sse4_1, null, null, null }, |
| 123576 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123577 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 123578 | .patterns = &.{ |
| 123579 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123580 | }, |
| 123581 | .extra_temps = .{ |
| 123582 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123583 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 123584 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 123585 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123586 | .unused, |
| 123587 | .unused, |
| 123588 | .unused, |
| 123589 | .unused, |
| 123590 | .unused, |
| 123591 | .unused, |
| 123592 | .unused, |
| 123593 | }, |
| 123594 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123595 | .each = .{ .once = &.{ |
| 123596 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 123597 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 123598 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 123599 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 123600 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123601 | .{ ._, .p_b, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 123602 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123603 | .{ ._, .p_b, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 123604 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 123605 | .{ ._, .p_b, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 123606 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 123607 | .{ ._, .p_w, .srl, .tmp3x, .ui(8), ._, ._ }, |
| 123608 | .{ ._, .p_b, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 123609 | } }, |
| 123610 | }, .{ |
| 123611 | .required_features = .{ .sse2, null, null, null }, |
| 123612 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123613 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 123614 | .patterns = &.{ |
| 123615 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123616 | }, |
| 123617 | .extra_temps = .{ |
| 123618 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123619 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 123620 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 123621 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123622 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123623 | .unused, |
| 123624 | .unused, |
| 123625 | .unused, |
| 123626 | .unused, |
| 123627 | .unused, |
| 123628 | .unused, |
| 123629 | }, |
| 123630 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123631 | .each = .{ .once = &.{ |
| 123632 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 123633 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 123634 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 123635 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 123636 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123637 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 123638 | .{ ._, .p_b, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 123639 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 123640 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 123641 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 123642 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123643 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 123644 | .{ ._, .p_b, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 123645 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 123646 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 123647 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 123648 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 123649 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 123650 | .{ ._, .p_b, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 123651 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 123652 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 123653 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 123654 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 123655 | .{ ._, .p_w, .srl, .tmp3x, .ui(8), ._, ._ }, |
| 123656 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 123657 | .{ ._, .p_b, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 123658 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 123659 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 123660 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 123661 | } }, |
| 123662 | }, .{ |
| 123663 | .required_features = .{ .avx, null, null, null }, |
| 123664 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123665 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 123666 | .patterns = &.{ |
| 123667 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123668 | }, |
| 123669 | .extra_temps = .{ |
| 123670 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123671 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 123672 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123673 | .unused, |
| 123674 | .unused, |
| 123675 | .unused, |
| 123676 | .unused, |
| 123677 | .unused, |
| 123678 | .unused, |
| 123679 | .unused, |
| 123680 | .unused, |
| 123681 | }, |
| 123682 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123683 | .each = .{ .once = &.{ |
| 123684 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 123685 | .{ ._, .vp_, .@"or", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 123686 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 123687 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 123688 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 123689 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 123690 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 123691 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 123692 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 123693 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 123694 | } }, |
| 123695 | }, .{ |
| 123696 | .required_features = .{ .sse2, null, null, null }, |
| 123697 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123698 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 123699 | .patterns = &.{ |
| 123700 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123701 | }, |
| 123702 | .extra_temps = .{ |
| 123703 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123704 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 123705 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123706 | .unused, |
| 123707 | .unused, |
| 123708 | .unused, |
| 123709 | .unused, |
| 123710 | .unused, |
| 123711 | .unused, |
| 123712 | .unused, |
| 123713 | .unused, |
| 123714 | }, |
| 123715 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123716 | .each = .{ .once = &.{ |
| 123717 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 123718 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 123719 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 123720 | .{ ._, .p_b, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 123721 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 123722 | .{ ._, .p_b, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 123723 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 123724 | .{ ._, .p_b, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 123725 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 123726 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 123727 | .{ ._, .p_b, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 123728 | } }, |
| 123729 | }, .{ |
| 123730 | .required_features = .{ .avx, null, null, null }, |
| 123731 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123732 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 123733 | .patterns = &.{ |
| 123734 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123735 | }, |
| 123736 | .extra_temps = .{ |
| 123737 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123738 | .unused, |
| 123739 | .unused, |
| 123740 | .unused, |
| 123741 | .unused, |
| 123742 | .unused, |
| 123743 | .unused, |
| 123744 | .unused, |
| 123745 | .unused, |
| 123746 | .unused, |
| 123747 | .unused, |
| 123748 | }, |
| 123749 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123750 | .each = .{ .once = &.{ |
| 123751 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 123752 | .{ ._, .vp_b, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 123753 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 123754 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 123755 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 123756 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 123757 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 123758 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 123759 | } }, |
| 123760 | }, .{ |
| 123761 | .required_features = .{ .sse4_1, null, null, null }, |
| 123762 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123763 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 123764 | .patterns = &.{ |
| 123765 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123766 | }, |
| 123767 | .extra_temps = .{ |
| 123768 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123769 | .unused, |
| 123770 | .unused, |
| 123771 | .unused, |
| 123772 | .unused, |
| 123773 | .unused, |
| 123774 | .unused, |
| 123775 | .unused, |
| 123776 | .unused, |
| 123777 | .unused, |
| 123778 | .unused, |
| 123779 | }, |
| 123780 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123781 | .each = .{ .once = &.{ |
| 123782 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 123783 | .{ ._, .p_b, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 123784 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 123785 | .{ ._, .p_b, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 123786 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 123787 | .{ ._, .p_b, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 123788 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 123789 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 123790 | .{ ._, .p_b, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 123791 | } }, |
| 123792 | }, .{ |
| 123793 | .required_features = .{ .sse2, null, null, null }, |
| 123794 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123795 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 123796 | .patterns = &.{ |
| 123797 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123798 | }, |
| 123799 | .extra_temps = .{ |
| 123800 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123801 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123802 | .unused, |
| 123803 | .unused, |
| 123804 | .unused, |
| 123805 | .unused, |
| 123806 | .unused, |
| 123807 | .unused, |
| 123808 | .unused, |
| 123809 | .unused, |
| 123810 | .unused, |
| 123811 | }, |
| 123812 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123813 | .each = .{ .once = &.{ |
| 123814 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 123815 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 123816 | .{ ._, .p_b, .cmpgt, .tmp1x, .src0x, ._, ._ }, |
| 123817 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 123818 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 123819 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 123820 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 123821 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 123822 | .{ ._, .p_b, .cmpgt, .tmp1x, .dst0x, ._, ._ }, |
| 123823 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 123824 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 123825 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 123826 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 123827 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 123828 | .{ ._, .p_b, .cmpgt, .tmp1x, .dst0x, ._, ._ }, |
| 123829 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 123830 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 123831 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 123832 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 123833 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 123834 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 123835 | .{ ._, .p_b, .cmpgt, .tmp1x, .dst0x, ._, ._ }, |
| 123836 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 123837 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 123838 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 123839 | } }, |
| 123840 | }, .{ |
| 123841 | .required_features = .{ .avx, null, null, null }, |
| 123842 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123843 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 123844 | .patterns = &.{ |
| 123845 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123846 | }, |
| 123847 | .extra_temps = .{ |
| 123848 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123849 | .unused, |
| 123850 | .unused, |
| 123851 | .unused, |
| 123852 | .unused, |
| 123853 | .unused, |
| 123854 | .unused, |
| 123855 | .unused, |
| 123856 | .unused, |
| 123857 | .unused, |
| 123858 | .unused, |
| 123859 | }, |
| 123860 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123861 | .each = .{ .once = &.{ |
| 123862 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 123863 | .{ ._, .vp_b, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 123864 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 123865 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 123866 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 123867 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 123868 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 123869 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 123870 | } }, |
| 123871 | }, .{ |
| 123872 | .required_features = .{ .sse2, null, null, null }, |
| 123873 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123874 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 123875 | .patterns = &.{ |
| 123876 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 123877 | }, |
| 123878 | .extra_temps = .{ |
| 123879 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123880 | .unused, |
| 123881 | .unused, |
| 123882 | .unused, |
| 123883 | .unused, |
| 123884 | .unused, |
| 123885 | .unused, |
| 123886 | .unused, |
| 123887 | .unused, |
| 123888 | .unused, |
| 123889 | .unused, |
| 123890 | }, |
| 123891 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 123892 | .each = .{ .once = &.{ |
| 123893 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 123894 | .{ ._, .p_b, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 123895 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 123896 | .{ ._, .p_b, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 123897 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 123898 | .{ ._, .p_b, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 123899 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 123900 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 123901 | .{ ._, .p_b, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 123902 | } }, |
| 123903 | }, .{ |
| 123904 | .required_features = .{ .avx2, null, null, null }, |
| 123905 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123906 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 123907 | .patterns = &.{ |
| 123908 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123909 | }, |
| 123910 | .extra_temps = .{ |
| 123911 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123912 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 123913 | .{ .type = .vector_32_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 123914 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123915 | .unused, |
| 123916 | .unused, |
| 123917 | .unused, |
| 123918 | .unused, |
| 123919 | .unused, |
| 123920 | .unused, |
| 123921 | .unused, |
| 123922 | }, |
| 123923 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123924 | .each = .{ .once = &.{ |
| 123925 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 123926 | .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 123927 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 123928 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 123929 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 123930 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123931 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123932 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123933 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123934 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123935 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 123936 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123937 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 123938 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123939 | } }, |
| 123940 | }, .{ |
| 123941 | .required_features = .{ .avx, null, null, null }, |
| 123942 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 123943 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 123944 | .patterns = &.{ |
| 123945 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123946 | }, |
| 123947 | .extra_temps = .{ |
| 123948 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123949 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 123950 | .{ .type = .vector_32_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 123951 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 123952 | .unused, |
| 123953 | .unused, |
| 123954 | .unused, |
| 123955 | .unused, |
| 123956 | .unused, |
| 123957 | .unused, |
| 123958 | .unused, |
| 123959 | }, |
| 123960 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123961 | .each = .{ .once = &.{ |
| 123962 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 123963 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 123964 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 123965 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 123966 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 123967 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123968 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123969 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123970 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 123971 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123972 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 123973 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123974 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 123975 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 123976 | } }, |
| 123977 | }, .{ |
| 123978 | .required_features = .{ .avx2, null, null, null }, |
| 123979 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 123980 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 123981 | .patterns = &.{ |
| 123982 | .{ .src = .{ .to_sse, .none, .none } }, |
| 123983 | }, |
| 123984 | .extra_temps = .{ |
| 123985 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 123986 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 123987 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 123988 | .unused, |
| 123989 | .unused, |
| 123990 | .unused, |
| 123991 | .unused, |
| 123992 | .unused, |
| 123993 | .unused, |
| 123994 | .unused, |
| 123995 | .unused, |
| 123996 | }, |
| 123997 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 123998 | .each = .{ .once = &.{ |
| 123999 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 124000 | .{ ._, .vp_, .@"or", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 124001 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 124002 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124003 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 124004 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124005 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 124006 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124007 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 124008 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124009 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 124010 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124011 | } }, |
| 124012 | }, .{ |
| 124013 | .required_features = .{ .avx, null, null, null }, |
| 124014 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 124015 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 124016 | .patterns = &.{ |
| 124017 | .{ .src = .{ .to_sse, .none, .none } }, |
| 124018 | }, |
| 124019 | .extra_temps = .{ |
| 124020 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 124021 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 124022 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 124023 | .unused, |
| 124024 | .unused, |
| 124025 | .unused, |
| 124026 | .unused, |
| 124027 | .unused, |
| 124028 | .unused, |
| 124029 | .unused, |
| 124030 | .unused, |
| 124031 | }, |
| 124032 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 124033 | .each = .{ .once = &.{ |
| 124034 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 124035 | .{ ._, .v_ps, .@"or", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 124036 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 124037 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124038 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 124039 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124040 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 124041 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124042 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 124043 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124044 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 124045 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124046 | } }, |
| 124047 | }, .{ |
| 124048 | .required_features = .{ .avx2, null, null, null }, |
| 124049 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124050 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 124051 | .patterns = &.{ |
| 124052 | .{ .src = .{ .to_sse, .none, .none } }, |
| 124053 | }, |
| 124054 | .extra_temps = .{ |
| 124055 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124056 | .unused, |
| 124057 | .unused, |
| 124058 | .unused, |
| 124059 | .unused, |
| 124060 | .unused, |
| 124061 | .unused, |
| 124062 | .unused, |
| 124063 | .unused, |
| 124064 | .unused, |
| 124065 | .unused, |
| 124066 | }, |
| 124067 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 124068 | .each = .{ .once = &.{ |
| 124069 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 124070 | .{ ._, .vp_b, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 124071 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 124072 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124073 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 124074 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124075 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 124076 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124077 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 124078 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124079 | } }, |
| 124080 | }, .{ |
| 124081 | .required_features = .{ .avx, null, null, null }, |
| 124082 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124083 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 124084 | .patterns = &.{ |
| 124085 | .{ .src = .{ .to_sse, .none, .none } }, |
| 124086 | }, |
| 124087 | .extra_temps = .{ |
| 124088 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124089 | .unused, |
| 124090 | .unused, |
| 124091 | .unused, |
| 124092 | .unused, |
| 124093 | .unused, |
| 124094 | .unused, |
| 124095 | .unused, |
| 124096 | .unused, |
| 124097 | .unused, |
| 124098 | .unused, |
| 124099 | }, |
| 124100 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 124101 | .each = .{ .once = &.{ |
| 124102 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 124103 | .{ ._, .vp_b, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 124104 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 124105 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124106 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 124107 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124108 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 124109 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124110 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 124111 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124112 | } }, |
| 124113 | }, .{ |
| 124114 | .required_features = .{ .avx2, null, null, null }, |
| 124115 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 124116 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 124117 | .patterns = &.{ |
| 124118 | .{ .src = .{ .to_sse, .none, .none } }, |
| 124119 | }, |
| 124120 | .extra_temps = .{ |
| 124121 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 124122 | .unused, |
| 124123 | .unused, |
| 124124 | .unused, |
| 124125 | .unused, |
| 124126 | .unused, |
| 124127 | .unused, |
| 124128 | .unused, |
| 124129 | .unused, |
| 124130 | .unused, |
| 124131 | .unused, |
| 124132 | }, |
| 124133 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 124134 | .each = .{ .once = &.{ |
| 124135 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 124136 | .{ ._, .vp_b, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 124137 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 124138 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124139 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 124140 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124141 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 124142 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124143 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 124144 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124145 | } }, |
| 124146 | }, .{ |
| 124147 | .required_features = .{ .avx, null, null, null }, |
| 124148 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 124149 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 124150 | .patterns = &.{ |
| 124151 | .{ .src = .{ .to_sse, .none, .none } }, |
| 124152 | }, |
| 124153 | .extra_temps = .{ |
| 124154 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 124155 | .unused, |
| 124156 | .unused, |
| 124157 | .unused, |
| 124158 | .unused, |
| 124159 | .unused, |
| 124160 | .unused, |
| 124161 | .unused, |
| 124162 | .unused, |
| 124163 | .unused, |
| 124164 | .unused, |
| 124165 | }, |
| 124166 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 124167 | .each = .{ .once = &.{ |
| 124168 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 124169 | .{ ._, .vp_b, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 124170 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 124171 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124172 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 124173 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124174 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 124175 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124176 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 124177 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124178 | } }, |
| 124179 | }, .{ |
| 124180 | .required_features = .{ .avx512f, null, null, null }, |
| 124181 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124182 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 124183 | .patterns = &.{ |
| 124184 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124185 | }, |
| 124186 | .extra_temps = .{ |
| 124187 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 124188 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 124189 | .{ .type = .vector_64_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 124190 | .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } }, |
| 124191 | .unused, |
| 124192 | .unused, |
| 124193 | .unused, |
| 124194 | .unused, |
| 124195 | .unused, |
| 124196 | .unused, |
| 124197 | .unused, |
| 124198 | }, |
| 124199 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124200 | .each = .{ .once = &.{ |
| 124201 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 124202 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 124203 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 124204 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 124205 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 124206 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 124207 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 124208 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 124209 | .{ ._, .vp_b, .mins, .dst0y, .dst0y, .tmp3y, ._ }, |
| 124210 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 124211 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124212 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 124213 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124214 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 124215 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124216 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 124217 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124218 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 124219 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124220 | } }, |
| 124221 | }, .{ |
| 124222 | .required_features = .{ .avx512f, null, null, null }, |
| 124223 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 124224 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 124225 | .patterns = &.{ |
| 124226 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124227 | }, |
| 124228 | .extra_temps = .{ |
| 124229 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 124230 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 124231 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 124232 | .unused, |
| 124233 | .unused, |
| 124234 | .unused, |
| 124235 | .unused, |
| 124236 | .unused, |
| 124237 | .unused, |
| 124238 | .unused, |
| 124239 | .unused, |
| 124240 | }, |
| 124241 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124242 | .each = .{ .once = &.{ |
| 124243 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 124244 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 124245 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 124246 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 124247 | .{ ._, .vp_, .@"or", .tmp2y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 124248 | .{ ._, .vp_b, .minu, .dst0y, .dst0y, .tmp2y, ._ }, |
| 124249 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 124250 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124251 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 124252 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124253 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 124254 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124255 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 124256 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124257 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 124258 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124259 | } }, |
| 124260 | }, .{ |
| 124261 | .required_features = .{ .avx512f, null, null, null }, |
| 124262 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124263 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 124264 | .patterns = &.{ |
| 124265 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124266 | }, |
| 124267 | .extra_temps = .{ |
| 124268 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124269 | .unused, |
| 124270 | .unused, |
| 124271 | .unused, |
| 124272 | .unused, |
| 124273 | .unused, |
| 124274 | .unused, |
| 124275 | .unused, |
| 124276 | .unused, |
| 124277 | .unused, |
| 124278 | .unused, |
| 124279 | }, |
| 124280 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124281 | .each = .{ .once = &.{ |
| 124282 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 124283 | .{ ._, .vp_b, .mins, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 124284 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 124285 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124286 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 124287 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124288 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 124289 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124290 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 124291 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124292 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 124293 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124294 | } }, |
| 124295 | }, .{ |
| 124296 | .required_features = .{ .avx512f, null, null, null }, |
| 124297 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 124298 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 124299 | .patterns = &.{ |
| 124300 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124301 | }, |
| 124302 | .extra_temps = .{ |
| 124303 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 124304 | .unused, |
| 124305 | .unused, |
| 124306 | .unused, |
| 124307 | .unused, |
| 124308 | .unused, |
| 124309 | .unused, |
| 124310 | .unused, |
| 124311 | .unused, |
| 124312 | .unused, |
| 124313 | .unused, |
| 124314 | }, |
| 124315 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124316 | .each = .{ .once = &.{ |
| 124317 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 124318 | .{ ._, .vp_b, .minu, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 124319 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 124320 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124321 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 124322 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124323 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 124324 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124325 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 124326 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124327 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 124328 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 124329 | } }, |
| 124330 | }, .{ |
| 124331 | .required_features = .{ .avx2, null, null, null }, |
| 124332 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124333 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 124334 | .patterns = &.{ |
| 124335 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124336 | }, |
| 124337 | .extra_temps = .{ |
| 124338 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124339 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124340 | .unused, |
| 124341 | .unused, |
| 124342 | .unused, |
| 124343 | .unused, |
| 124344 | .unused, |
| 124345 | .unused, |
| 124346 | .unused, |
| 124347 | .unused, |
| 124348 | .unused, |
| 124349 | }, |
| 124350 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124351 | .clobbers = .{ .eflags = true }, |
| 124352 | .each = .{ .once = &.{ |
| 124353 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 124354 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 124355 | .{ .@"0:", .vp_b, .mins, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 124356 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 124357 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124358 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 124359 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124360 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124361 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124362 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124363 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124364 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 124365 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124366 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 124367 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124368 | } }, |
| 124369 | }, .{ |
| 124370 | .required_features = .{ .avx, null, null, null }, |
| 124371 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124372 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 124373 | .patterns = &.{ |
| 124374 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124375 | }, |
| 124376 | .extra_temps = .{ |
| 124377 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124378 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124379 | .unused, |
| 124380 | .unused, |
| 124381 | .unused, |
| 124382 | .unused, |
| 124383 | .unused, |
| 124384 | .unused, |
| 124385 | .unused, |
| 124386 | .unused, |
| 124387 | .unused, |
| 124388 | }, |
| 124389 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124390 | .clobbers = .{ .eflags = true }, |
| 124391 | .each = .{ .once = &.{ |
| 124392 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 124393 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 124394 | .{ .@"0:", .vp_b, .mins, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 124395 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 124396 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124397 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124398 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124399 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124400 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124401 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 124402 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124403 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 124404 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124405 | } }, |
| 124406 | }, .{ |
| 124407 | .required_features = .{ .sse4_1, null, null, null }, |
| 124408 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124409 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 124410 | .patterns = &.{ |
| 124411 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124412 | }, |
| 124413 | .extra_temps = .{ |
| 124414 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124415 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124416 | .unused, |
| 124417 | .unused, |
| 124418 | .unused, |
| 124419 | .unused, |
| 124420 | .unused, |
| 124421 | .unused, |
| 124422 | .unused, |
| 124423 | .unused, |
| 124424 | .unused, |
| 124425 | }, |
| 124426 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124427 | .clobbers = .{ .eflags = true }, |
| 124428 | .each = .{ .once = &.{ |
| 124429 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 124430 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 124431 | .{ .@"0:", .p_b, .mins, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 124432 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 124433 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124434 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124435 | .{ ._, .p_b, .mins, .dst0x, .tmp1x, ._, ._ }, |
| 124436 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124437 | .{ ._, .p_b, .mins, .dst0x, .tmp1x, ._, ._ }, |
| 124438 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 124439 | .{ ._, .p_b, .mins, .dst0x, .tmp1x, ._, ._ }, |
| 124440 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 124441 | .{ ._, .p_w, .srl, .tmp1x, .ui(8), ._, ._ }, |
| 124442 | .{ ._, .p_b, .mins, .dst0x, .tmp1x, ._, ._ }, |
| 124443 | } }, |
| 124444 | }, .{ |
| 124445 | .required_features = .{ .sse2, null, null, null }, |
| 124446 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124447 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 124448 | .patterns = &.{ |
| 124449 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124450 | }, |
| 124451 | .extra_temps = .{ |
| 124452 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124453 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124454 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124455 | .unused, |
| 124456 | .unused, |
| 124457 | .unused, |
| 124458 | .unused, |
| 124459 | .unused, |
| 124460 | .unused, |
| 124461 | .unused, |
| 124462 | .unused, |
| 124463 | }, |
| 124464 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124465 | .clobbers = .{ .eflags = true }, |
| 124466 | .each = .{ .once = &.{ |
| 124467 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 124468 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 124469 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 124470 | .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ }, |
| 124471 | .{ ._, .p_b, .cmpgt, .tmp2x, .dst0x, ._, ._ }, |
| 124472 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 124473 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 124474 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 124475 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 124476 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124477 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124478 | .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ }, |
| 124479 | .{ ._, .p_b, .cmpgt, .tmp2x, .dst0x, ._, ._ }, |
| 124480 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 124481 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 124482 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 124483 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124484 | .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ }, |
| 124485 | .{ ._, .p_b, .cmpgt, .tmp2x, .dst0x, ._, ._ }, |
| 124486 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 124487 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 124488 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 124489 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 124490 | .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ }, |
| 124491 | .{ ._, .p_b, .cmpgt, .tmp2x, .dst0x, ._, ._ }, |
| 124492 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 124493 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 124494 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 124495 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 124496 | .{ ._, .p_w, .srl, .tmp1x, .ui(8), ._, ._ }, |
| 124497 | .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ }, |
| 124498 | .{ ._, .p_b, .cmpgt, .tmp2x, .dst0x, ._, ._ }, |
| 124499 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 124500 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 124501 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 124502 | } }, |
| 124503 | }, .{ |
| 124504 | .required_features = .{ .avx2, null, null, null }, |
| 124505 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 124506 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 124507 | .patterns = &.{ |
| 124508 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124509 | }, |
| 124510 | .extra_temps = .{ |
| 124511 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124512 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 124513 | .unused, |
| 124514 | .unused, |
| 124515 | .unused, |
| 124516 | .unused, |
| 124517 | .unused, |
| 124518 | .unused, |
| 124519 | .unused, |
| 124520 | .unused, |
| 124521 | .unused, |
| 124522 | }, |
| 124523 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124524 | .clobbers = .{ .eflags = true }, |
| 124525 | .each = .{ .once = &.{ |
| 124526 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 124527 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 124528 | .{ .@"0:", .vp_b, .minu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 124529 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 124530 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124531 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 124532 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124533 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124534 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124535 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124536 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124537 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 124538 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124539 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 124540 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124541 | } }, |
| 124542 | }, .{ |
| 124543 | .required_features = .{ .avx, null, null, null }, |
| 124544 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 124545 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 124546 | .patterns = &.{ |
| 124547 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124548 | }, |
| 124549 | .extra_temps = .{ |
| 124550 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124551 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 124552 | .unused, |
| 124553 | .unused, |
| 124554 | .unused, |
| 124555 | .unused, |
| 124556 | .unused, |
| 124557 | .unused, |
| 124558 | .unused, |
| 124559 | .unused, |
| 124560 | .unused, |
| 124561 | }, |
| 124562 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124563 | .clobbers = .{ .eflags = true }, |
| 124564 | .each = .{ .once = &.{ |
| 124565 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 124566 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 124567 | .{ .@"0:", .vp_b, .minu, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 124568 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 124569 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124570 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124571 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124572 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124573 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124574 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 124575 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124576 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 124577 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 124578 | } }, |
| 124579 | }, .{ |
| 124580 | .required_features = .{ .sse2, null, null, null }, |
| 124581 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 124582 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 124583 | .patterns = &.{ |
| 124584 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124585 | }, |
| 124586 | .extra_temps = .{ |
| 124587 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124588 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 124589 | .unused, |
| 124590 | .unused, |
| 124591 | .unused, |
| 124592 | .unused, |
| 124593 | .unused, |
| 124594 | .unused, |
| 124595 | .unused, |
| 124596 | .unused, |
| 124597 | .unused, |
| 124598 | }, |
| 124599 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124600 | .clobbers = .{ .eflags = true }, |
| 124601 | .each = .{ .once = &.{ |
| 124602 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 124603 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 124604 | .{ .@"0:", .p_b, .minu, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 124605 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 124606 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124607 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124608 | .{ ._, .p_b, .minu, .dst0x, .tmp1x, ._, ._ }, |
| 124609 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 124610 | .{ ._, .p_b, .minu, .dst0x, .tmp1x, ._, ._ }, |
| 124611 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 124612 | .{ ._, .p_b, .minu, .dst0x, .tmp1x, ._, ._ }, |
| 124613 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 124614 | .{ ._, .p_w, .srl, .tmp1x, .ui(8), ._, ._ }, |
| 124615 | .{ ._, .p_b, .minu, .dst0x, .tmp1x, ._, ._ }, |
| 124616 | } }, |
| 124617 | }, .{ |
| 124618 | .required_features = .{ .avx512f, null, null, null }, |
| 124619 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124620 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 124621 | .patterns = &.{ |
| 124622 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124623 | }, |
| 124624 | .extra_temps = .{ |
| 124625 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124626 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 124627 | .{ .type = .vector_64_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 124628 | .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } }, |
| 124629 | .unused, |
| 124630 | .unused, |
| 124631 | .unused, |
| 124632 | .unused, |
| 124633 | .unused, |
| 124634 | .unused, |
| 124635 | .unused, |
| 124636 | }, |
| 124637 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124638 | .clobbers = .{ .eflags = true }, |
| 124639 | .each = .{ .once = &.{ |
| 124640 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 124641 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 124642 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 124643 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 124644 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 124645 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 124646 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 124647 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 124648 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 124649 | .{ .@"0:", .vp_b, .mins, .tmp3y, .tmp3y, .memid(.src0y, .tmp0, 32), ._ }, |
| 124650 | .{ ._, .vp_b, .mins, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 124651 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 124652 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124653 | .{ ._, .vp_b, .mins, .dst0y, .dst0y, .tmp3y, ._ }, |
| 124654 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 124655 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124656 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 124657 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124658 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 124659 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124660 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 124661 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124662 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 124663 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124664 | } }, |
| 124665 | }, .{ |
| 124666 | .required_features = .{ .avx2, null, null, null }, |
| 124667 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124668 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 124669 | .patterns = &.{ |
| 124670 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124671 | }, |
| 124672 | .extra_temps = .{ |
| 124673 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124674 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 124675 | .{ .type = .vector_32_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 124676 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124677 | .unused, |
| 124678 | .unused, |
| 124679 | .unused, |
| 124680 | .unused, |
| 124681 | .unused, |
| 124682 | .unused, |
| 124683 | .unused, |
| 124684 | }, |
| 124685 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124686 | .clobbers = .{ .eflags = true }, |
| 124687 | .each = .{ .once = &.{ |
| 124688 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 124689 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 124690 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 124691 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 124692 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 124693 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 124694 | .{ .@"0:", .vp_b, .mins, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 124695 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 124696 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124697 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 124698 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124699 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 124700 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124701 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 124702 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124703 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 124704 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124705 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 124706 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124707 | } }, |
| 124708 | }, .{ |
| 124709 | .required_features = .{ .avx, null, null, null }, |
| 124710 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124711 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 124712 | .patterns = &.{ |
| 124713 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124714 | }, |
| 124715 | .extra_temps = .{ |
| 124716 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124717 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 124718 | .{ .type = .vector_32_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 124719 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124720 | .unused, |
| 124721 | .unused, |
| 124722 | .unused, |
| 124723 | .unused, |
| 124724 | .unused, |
| 124725 | .unused, |
| 124726 | .unused, |
| 124727 | }, |
| 124728 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124729 | .clobbers = .{ .eflags = true }, |
| 124730 | .each = .{ .once = &.{ |
| 124731 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 124732 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 124733 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 124734 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 124735 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 124736 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 124737 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 124738 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124739 | .{ .@"0:", .vp_b, .mins, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 124740 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 124741 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124742 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 124743 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124744 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 124745 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124746 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 124747 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124748 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 124749 | .{ ._, .vp_b, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 124750 | } }, |
| 124751 | }, .{ |
| 124752 | .required_features = .{ .sse4_1, null, null, null }, |
| 124753 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124754 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 124755 | .patterns = &.{ |
| 124756 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124757 | }, |
| 124758 | .extra_temps = .{ |
| 124759 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124760 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 124761 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 124762 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124763 | .unused, |
| 124764 | .unused, |
| 124765 | .unused, |
| 124766 | .unused, |
| 124767 | .unused, |
| 124768 | .unused, |
| 124769 | .unused, |
| 124770 | }, |
| 124771 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124772 | .clobbers = .{ .eflags = true }, |
| 124773 | .each = .{ .once = &.{ |
| 124774 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 124775 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 124776 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 124777 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 124778 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 124779 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 124780 | .{ .@"0:", .p_b, .mins, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 124781 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 124782 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124783 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 124784 | .{ ._, .p_b, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 124785 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 124786 | .{ ._, .p_b, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 124787 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 124788 | .{ ._, .p_b, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 124789 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 124790 | .{ ._, .p_w, .srl, .tmp3x, .ui(8), ._, ._ }, |
| 124791 | .{ ._, .p_b, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 124792 | } }, |
| 124793 | }, .{ |
| 124794 | .required_features = .{ .sse2, null, null, null }, |
| 124795 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 124796 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 124797 | .patterns = &.{ |
| 124798 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124799 | }, |
| 124800 | .extra_temps = .{ |
| 124801 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124802 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 124803 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 124804 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124805 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 124806 | .unused, |
| 124807 | .unused, |
| 124808 | .unused, |
| 124809 | .unused, |
| 124810 | .unused, |
| 124811 | .unused, |
| 124812 | }, |
| 124813 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124814 | .clobbers = .{ .eflags = true }, |
| 124815 | .each = .{ .once = &.{ |
| 124816 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 124817 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 124818 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 124819 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 124820 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 124821 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 124822 | .{ .@"0:", ._dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 124823 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 124824 | .{ ._, .p_b, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 124825 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 124826 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 124827 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 124828 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 124829 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124830 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 124831 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 124832 | .{ ._, .p_b, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 124833 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 124834 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 124835 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 124836 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 124837 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 124838 | .{ ._, .p_b, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 124839 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 124840 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 124841 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 124842 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 124843 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 124844 | .{ ._, .p_b, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 124845 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 124846 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 124847 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 124848 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 124849 | .{ ._, .p_w, .srl, .tmp3x, .ui(8), ._, ._ }, |
| 124850 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 124851 | .{ ._, .p_b, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 124852 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 124853 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 124854 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 124855 | } }, |
| 124856 | }, .{ |
| 124857 | .required_features = .{ .avx512f, null, null, null }, |
| 124858 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 124859 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 124860 | .patterns = &.{ |
| 124861 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124862 | }, |
| 124863 | .extra_temps = .{ |
| 124864 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124865 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 124866 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 124867 | .unused, |
| 124868 | .unused, |
| 124869 | .unused, |
| 124870 | .unused, |
| 124871 | .unused, |
| 124872 | .unused, |
| 124873 | .unused, |
| 124874 | .unused, |
| 124875 | }, |
| 124876 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124877 | .clobbers = .{ .eflags = true }, |
| 124878 | .each = .{ .once = &.{ |
| 124879 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 124880 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 124881 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 124882 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 124883 | .{ ._, .vp_, .@"or", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 124884 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 124885 | .{ .@"0:", .vp_b, .minu, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 124886 | .{ ._, .vp_b, .minu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 124887 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 124888 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124889 | .{ ._, .vp_b, .minu, .dst0y, .dst0y, .tmp2y, ._ }, |
| 124890 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 124891 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124892 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 124893 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124894 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 124895 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124896 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 124897 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124898 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 124899 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124900 | } }, |
| 124901 | }, .{ |
| 124902 | .required_features = .{ .avx2, null, null, null }, |
| 124903 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 124904 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 124905 | .patterns = &.{ |
| 124906 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124907 | }, |
| 124908 | .extra_temps = .{ |
| 124909 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124910 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 124911 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 124912 | .unused, |
| 124913 | .unused, |
| 124914 | .unused, |
| 124915 | .unused, |
| 124916 | .unused, |
| 124917 | .unused, |
| 124918 | .unused, |
| 124919 | .unused, |
| 124920 | }, |
| 124921 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124922 | .clobbers = .{ .eflags = true }, |
| 124923 | .each = .{ .once = &.{ |
| 124924 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 124925 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 124926 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 124927 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 124928 | .{ .@"0:", .vp_b, .minu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 124929 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 124930 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124931 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 124932 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124933 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 124934 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124935 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 124936 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124937 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 124938 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124939 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 124940 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124941 | } }, |
| 124942 | }, .{ |
| 124943 | .required_features = .{ .avx, null, null, null }, |
| 124944 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 124945 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 124946 | .patterns = &.{ |
| 124947 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124948 | }, |
| 124949 | .extra_temps = .{ |
| 124950 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124951 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 124952 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 124953 | .unused, |
| 124954 | .unused, |
| 124955 | .unused, |
| 124956 | .unused, |
| 124957 | .unused, |
| 124958 | .unused, |
| 124959 | .unused, |
| 124960 | .unused, |
| 124961 | }, |
| 124962 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 124963 | .clobbers = .{ .eflags = true }, |
| 124964 | .each = .{ .once = &.{ |
| 124965 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 124966 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 124967 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 124968 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 124969 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 124970 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124971 | .{ .@"0:", .vp_b, .minu, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 124972 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 124973 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 124974 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 124975 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124976 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 124977 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124978 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 124979 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124980 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 124981 | .{ ._, .vp_b, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 124982 | } }, |
| 124983 | }, .{ |
| 124984 | .required_features = .{ .sse2, null, null, null }, |
| 124985 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 124986 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 124987 | .patterns = &.{ |
| 124988 | .{ .src = .{ .to_mem, .none, .none } }, |
| 124989 | }, |
| 124990 | .extra_temps = .{ |
| 124991 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 124992 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 124993 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 124994 | .unused, |
| 124995 | .unused, |
| 124996 | .unused, |
| 124997 | .unused, |
| 124998 | .unused, |
| 124999 | .unused, |
| 125000 | .unused, |
| 125001 | .unused, |
| 125002 | }, |
| 125003 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 125004 | .clobbers = .{ .eflags = true }, |
| 125005 | .each = .{ .once = &.{ |
| 125006 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 125007 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 125008 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 125009 | .{ ._, .p_, .@"or", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 125010 | .{ .@"0:", .p_b, .minu, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 125011 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 125012 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 125013 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 125014 | .{ ._, .p_b, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 125015 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 125016 | .{ ._, .p_b, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 125017 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 125018 | .{ ._, .p_b, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 125019 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 125020 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 125021 | .{ ._, .p_b, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 125022 | } }, |
| 125023 | }, .{ |
| 125024 | .required_features = .{ .cmov, .slow_incdec, null, null }, |
| 125025 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 125026 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 125027 | .patterns = &.{ |
| 125028 | .{ .src = .{ .to_mem, .none, .none } }, |
| 125029 | }, |
| 125030 | .extra_temps = .{ |
| 125031 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 125032 | .{ .type = .i8, .kind = .{ .rc = .general_purpose } }, |
| 125033 | .unused, |
| 125034 | .unused, |
| 125035 | .unused, |
| 125036 | .unused, |
| 125037 | .unused, |
| 125038 | .unused, |
| 125039 | .unused, |
| 125040 | .unused, |
| 125041 | .unused, |
| 125042 | }, |
| 125043 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 125044 | .clobbers = .{ .eflags = true }, |
| 125045 | .each = .{ .once = &.{ |
| 125046 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 125047 | .{ ._, ._, .movsx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 125048 | .{ .@"0:", ._, .movsx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 125049 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 125050 | .{ ._, ._nl, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 125051 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| 125052 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 125053 | } }, |
| 125054 | }, .{ |
| 125055 | .required_features = .{ .cmov, null, null, null }, |
| 125056 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 125057 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 125058 | .patterns = &.{ |
| 125059 | .{ .src = .{ .to_mem, .none, .none } }, |
| 125060 | }, |
| 125061 | .extra_temps = .{ |
| 125062 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 125063 | .{ .type = .i8, .kind = .{ .rc = .general_purpose } }, |
| 125064 | .unused, |
| 125065 | .unused, |
| 125066 | .unused, |
| 125067 | .unused, |
| 125068 | .unused, |
| 125069 | .unused, |
| 125070 | .unused, |
| 125071 | .unused, |
| 125072 | .unused, |
| 125073 | }, |
| 125074 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 125075 | .clobbers = .{ .eflags = true }, |
| 125076 | .each = .{ .once = &.{ |
| 125077 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 125078 | .{ ._, ._, .movsx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 125079 | .{ .@"0:", ._, .movsx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 125080 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 125081 | .{ ._, ._nl, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 125082 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| 125083 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| 125084 | } }, |
| 125085 | }, .{ |
| 125086 | .required_features = .{ .slow_incdec, null, null, null }, |
| 125087 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 125088 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 125089 | .patterns = &.{ |
| 125090 | .{ .src = .{ .to_mem, .none, .none } }, |
| 125091 | }, |
| 125092 | .extra_temps = .{ |
| 125093 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 125094 | .{ .type = .i8, .kind = .{ .rc = .general_purpose } }, |
| 125095 | .unused, |
| 125096 | .unused, |
| 125097 | .unused, |
| 125098 | .unused, |
| 125099 | .unused, |
| 125100 | .unused, |
| 125101 | .unused, |
| 125102 | .unused, |
| 125103 | .unused, |
| 125104 | }, |
| 125105 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 125106 | .clobbers = .{ .eflags = true }, |
| 125107 | .each = .{ .once = &.{ |
| 125108 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 125109 | .{ ._, ._, .movsx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 125110 | .{ .@"0:", ._, .movsx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 125111 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 125112 | .{ ._, ._l, .j, .@"1f", ._, ._, ._ }, |
| 125113 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 125114 | .{ .@"1:", ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| 125115 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 125116 | } }, |
| 125117 | }, .{ |
| 125118 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 125119 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 125120 | .patterns = &.{ |
| 125121 | .{ .src = .{ .to_mem, .none, .none } }, |
| 125122 | }, |
| 125123 | .extra_temps = .{ |
| 125124 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 125125 | .{ .type = .i8, .kind = .{ .rc = .general_purpose } }, |
| 125126 | .unused, |
| 125127 | .unused, |
| 125128 | .unused, |
| 125129 | .unused, |
| 125130 | .unused, |
| 125131 | .unused, |
| 125132 | .unused, |
| 125133 | .unused, |
| 125134 | .unused, |
| 125135 | }, |
| 125136 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 125137 | .clobbers = .{ .eflags = true }, |
| 125138 | .each = .{ .once = &.{ |
| 125139 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 125140 | .{ ._, ._, .movsx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 125141 | .{ .@"0:", ._, .movsx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 125142 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 125143 | .{ ._, ._l, .j, .@"1f", ._, ._, ._ }, |
| 125144 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 125145 | .{ .@"1:", ._c, .de, .tmp0d, ._, ._, ._ }, |
| 125146 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| 125147 | } }, |
| 125148 | }, .{ |
| 125149 | .required_features = .{ .cmov, .slow_incdec, null, null }, |
| 125150 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 125151 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 125152 | .patterns = &.{ |
| 125153 | .{ .src = .{ .to_mem, .none, .none } }, |
| 125154 | }, |
| 125155 | .extra_temps = .{ |
| 125156 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 125157 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 125158 | .unused, |
| 125159 | .unused, |
| 125160 | .unused, |
| 125161 | .unused, |
| 125162 | .unused, |
| 125163 | .unused, |
| 125164 | .unused, |
| 125165 | .unused, |
| 125166 | .unused, |
| 125167 | }, |
| 125168 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 125169 | .clobbers = .{ .eflags = true }, |
| 125170 | .each = .{ .once = &.{ |
| 125171 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 125172 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 125173 | .{ .@"0:", ._, .movzx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 125174 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 125175 | .{ ._, ._nb, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 125176 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| 125177 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 125178 | } }, |
| 125179 | }, .{ |
| 125180 | .required_features = .{ .cmov, null, null, null }, |
| 125181 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 125182 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 125183 | .patterns = &.{ |
| 125184 | .{ .src = .{ .to_mem, .none, .none } }, |
| 125185 | }, |
| 125186 | .extra_temps = .{ |
| 125187 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 125188 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 125189 | .unused, |
| 125190 | .unused, |
| 125191 | .unused, |
| 125192 | .unused, |
| 125193 | .unused, |
| 125194 | .unused, |
| 125195 | .unused, |
| 125196 | .unused, |
| 125197 | .unused, |
| 125198 | }, |
| 125199 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 125200 | .clobbers = .{ .eflags = true }, |
| 125201 | .each = .{ .once = &.{ |
| 125202 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 125203 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 125204 | .{ .@"0:", ._, .movzx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 125205 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 125206 | .{ ._, ._nb, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 125207 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| 125208 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| 125209 | } }, |
| 125210 | }, .{ |
| 125211 | .required_features = .{ .slow_incdec, null, null, null }, |
| 125212 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 125213 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 125214 | .patterns = &.{ |
| 125215 | .{ .src = .{ .to_mem, .none, .none } }, |
| 125216 | }, |
| 125217 | .extra_temps = .{ |
| 125218 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 125219 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 125220 | .unused, |
| 125221 | .unused, |
| 125222 | .unused, |
| 125223 | .unused, |
| 125224 | .unused, |
| 125225 | .unused, |
| 125226 | .unused, |
| 125227 | .unused, |
| 125228 | .unused, |
| 125229 | }, |
| 125230 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 125231 | .clobbers = .{ .eflags = true }, |
| 125232 | .each = .{ .once = &.{ |
| 125233 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 125234 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 125235 | .{ .@"0:", ._, .movzx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 125236 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 125237 | .{ ._, ._b, .j, .@"1f", ._, ._, ._ }, |
| 125238 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 125239 | .{ .@"1:", ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| 125240 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 125241 | } }, |
| 125242 | }, .{ |
| 125243 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 125244 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 125245 | .patterns = &.{ |
| 125246 | .{ .src = .{ .to_mem, .none, .none } }, |
| 125247 | }, |
| 125248 | .extra_temps = .{ |
| 125249 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 125250 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 125251 | .unused, |
| 125252 | .unused, |
| 125253 | .unused, |
| 125254 | .unused, |
| 125255 | .unused, |
| 125256 | .unused, |
| 125257 | .unused, |
| 125258 | .unused, |
| 125259 | .unused, |
| 125260 | }, |
| 125261 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 125262 | .clobbers = .{ .eflags = true }, |
| 125263 | .each = .{ .once = &.{ |
| 125264 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 125265 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 125266 | .{ .@"0:", ._, .movzx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 125267 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 125268 | .{ ._, ._b, .j, .@"1f", ._, ._, ._ }, |
| 125269 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 125270 | .{ .@"1:", ._c, .de, .tmp0d, ._, ._, ._ }, |
| 125271 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| 125272 | } }, |
| 125273 | }, .{ |
| 125274 | .required_features = .{ .avx, null, null, null }, |
| 125275 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125276 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 125277 | .patterns = &.{ |
| 125278 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125279 | }, |
| 125280 | .extra_temps = .{ |
| 125281 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125282 | .unused, |
| 125283 | .unused, |
| 125284 | .unused, |
| 125285 | .unused, |
| 125286 | .unused, |
| 125287 | .unused, |
| 125288 | .unused, |
| 125289 | .unused, |
| 125290 | .unused, |
| 125291 | .unused, |
| 125292 | }, |
| 125293 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125294 | .each = .{ .once = &.{ |
| 125295 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 125296 | .{ ._, .vp_w, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 125297 | } }, |
| 125298 | }, .{ |
| 125299 | .required_features = .{ .sse2, null, null, null }, |
| 125300 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125301 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 125302 | .patterns = &.{ |
| 125303 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125304 | }, |
| 125305 | .extra_temps = .{ |
| 125306 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125307 | .unused, |
| 125308 | .unused, |
| 125309 | .unused, |
| 125310 | .unused, |
| 125311 | .unused, |
| 125312 | .unused, |
| 125313 | .unused, |
| 125314 | .unused, |
| 125315 | .unused, |
| 125316 | .unused, |
| 125317 | }, |
| 125318 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125319 | .each = .{ .once = &.{ |
| 125320 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 125321 | .{ ._, .p_w, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 125322 | } }, |
| 125323 | }, .{ |
| 125324 | .required_features = .{ .avx, null, null, null }, |
| 125325 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 125326 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 125327 | .patterns = &.{ |
| 125328 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125329 | }, |
| 125330 | .extra_temps = .{ |
| 125331 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125332 | .unused, |
| 125333 | .unused, |
| 125334 | .unused, |
| 125335 | .unused, |
| 125336 | .unused, |
| 125337 | .unused, |
| 125338 | .unused, |
| 125339 | .unused, |
| 125340 | .unused, |
| 125341 | .unused, |
| 125342 | }, |
| 125343 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125344 | .each = .{ .once = &.{ |
| 125345 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 125346 | .{ ._, .vp_w, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 125347 | } }, |
| 125348 | }, .{ |
| 125349 | .required_features = .{ .sse4_1, null, null, null }, |
| 125350 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 125351 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 125352 | .patterns = &.{ |
| 125353 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125354 | }, |
| 125355 | .extra_temps = .{ |
| 125356 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125357 | .unused, |
| 125358 | .unused, |
| 125359 | .unused, |
| 125360 | .unused, |
| 125361 | .unused, |
| 125362 | .unused, |
| 125363 | .unused, |
| 125364 | .unused, |
| 125365 | .unused, |
| 125366 | .unused, |
| 125367 | }, |
| 125368 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125369 | .each = .{ .once = &.{ |
| 125370 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 125371 | .{ ._, .p_w, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 125372 | } }, |
| 125373 | }, .{ |
| 125374 | .required_features = .{ .sse2, null, null, null }, |
| 125375 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 125376 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 125377 | .patterns = &.{ |
| 125378 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125379 | }, |
| 125380 | .extra_temps = .{ |
| 125381 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125382 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125383 | .unused, |
| 125384 | .unused, |
| 125385 | .unused, |
| 125386 | .unused, |
| 125387 | .unused, |
| 125388 | .unused, |
| 125389 | .unused, |
| 125390 | .unused, |
| 125391 | .unused, |
| 125392 | }, |
| 125393 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125394 | .each = .{ .once = &.{ |
| 125395 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 125396 | .{ ._, ._dqa, .mov, .tmp1x, .src0x, ._, ._ }, |
| 125397 | .{ ._, .p_w, .subus, .tmp1x, .tmp0x, ._, ._ }, |
| 125398 | .{ ._, .p_w, .sub, .dst0x, .tmp1x, ._, ._ }, |
| 125399 | } }, |
| 125400 | }, .{ |
| 125401 | .required_features = .{ .avx, null, null, null }, |
| 125402 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125403 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 125404 | .patterns = &.{ |
| 125405 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125406 | }, |
| 125407 | .extra_temps = .{ |
| 125408 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125409 | .unused, |
| 125410 | .unused, |
| 125411 | .unused, |
| 125412 | .unused, |
| 125413 | .unused, |
| 125414 | .unused, |
| 125415 | .unused, |
| 125416 | .unused, |
| 125417 | .unused, |
| 125418 | .unused, |
| 125419 | }, |
| 125420 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125421 | .each = .{ .once = &.{ |
| 125422 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 125423 | .{ ._, .vp_w, .mins, .tmp0x, .src0x, .tmp0x, ._ }, |
| 125424 | .{ ._, .vp_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 125425 | .{ ._, .vp_w, .mins, .dst0x, .tmp0x, .dst0x, ._ }, |
| 125426 | } }, |
| 125427 | }, .{ |
| 125428 | .required_features = .{ .sse2, null, null, null }, |
| 125429 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125430 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 125431 | .patterns = &.{ |
| 125432 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125433 | }, |
| 125434 | .extra_temps = .{ |
| 125435 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125436 | .unused, |
| 125437 | .unused, |
| 125438 | .unused, |
| 125439 | .unused, |
| 125440 | .unused, |
| 125441 | .unused, |
| 125442 | .unused, |
| 125443 | .unused, |
| 125444 | .unused, |
| 125445 | .unused, |
| 125446 | }, |
| 125447 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125448 | .each = .{ .once = &.{ |
| 125449 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 125450 | .{ ._, .p_w, .mins, .tmp0x, .src0x, ._, ._ }, |
| 125451 | .{ ._, .p_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 125452 | .{ ._, .p_w, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 125453 | } }, |
| 125454 | }, .{ |
| 125455 | .required_features = .{ .avx, null, null, null }, |
| 125456 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 125457 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 125458 | .patterns = &.{ |
| 125459 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125460 | }, |
| 125461 | .extra_temps = .{ |
| 125462 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125463 | .unused, |
| 125464 | .unused, |
| 125465 | .unused, |
| 125466 | .unused, |
| 125467 | .unused, |
| 125468 | .unused, |
| 125469 | .unused, |
| 125470 | .unused, |
| 125471 | .unused, |
| 125472 | .unused, |
| 125473 | }, |
| 125474 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125475 | .each = .{ .once = &.{ |
| 125476 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 125477 | .{ ._, .vp_w, .minu, .tmp0x, .src0x, .tmp0x, ._ }, |
| 125478 | .{ ._, .vp_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 125479 | .{ ._, .vp_w, .minu, .dst0x, .tmp0x, .dst0x, ._ }, |
| 125480 | } }, |
| 125481 | }, .{ |
| 125482 | .required_features = .{ .sse4_1, null, null, null }, |
| 125483 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 125484 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 125485 | .patterns = &.{ |
| 125486 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125487 | }, |
| 125488 | .extra_temps = .{ |
| 125489 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125490 | .unused, |
| 125491 | .unused, |
| 125492 | .unused, |
| 125493 | .unused, |
| 125494 | .unused, |
| 125495 | .unused, |
| 125496 | .unused, |
| 125497 | .unused, |
| 125498 | .unused, |
| 125499 | .unused, |
| 125500 | }, |
| 125501 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125502 | .each = .{ .once = &.{ |
| 125503 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 125504 | .{ ._, .p_w, .minu, .tmp0x, .src0x, ._, ._ }, |
| 125505 | .{ ._, .p_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 125506 | .{ ._, .p_w, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 125507 | } }, |
| 125508 | }, .{ |
| 125509 | .required_features = .{ .sse2, null, null, null }, |
| 125510 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 125511 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 125512 | .patterns = &.{ |
| 125513 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125514 | }, |
| 125515 | .extra_temps = .{ |
| 125516 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125517 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125518 | .unused, |
| 125519 | .unused, |
| 125520 | .unused, |
| 125521 | .unused, |
| 125522 | .unused, |
| 125523 | .unused, |
| 125524 | .unused, |
| 125525 | .unused, |
| 125526 | .unused, |
| 125527 | }, |
| 125528 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125529 | .each = .{ .once = &.{ |
| 125530 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 125531 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 125532 | .{ ._, .p_w, .subus, .tmp1x, .src0x, ._, ._ }, |
| 125533 | .{ ._, .p_w, .sub, .tmp0x, .tmp1x, ._, ._ }, |
| 125534 | .{ ._, .p_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 125535 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 125536 | .{ ._, .p_w, .subus, .tmp1x, .tmp0x, ._, ._ }, |
| 125537 | .{ ._, .p_w, .sub, .dst0x, .tmp1x, ._, ._ }, |
| 125538 | } }, |
| 125539 | }, .{ |
| 125540 | .required_features = .{ .avx, null, null, null }, |
| 125541 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125542 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 125543 | .patterns = &.{ |
| 125544 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125545 | }, |
| 125546 | .extra_temps = .{ |
| 125547 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125548 | .unused, |
| 125549 | .unused, |
| 125550 | .unused, |
| 125551 | .unused, |
| 125552 | .unused, |
| 125553 | .unused, |
| 125554 | .unused, |
| 125555 | .unused, |
| 125556 | .unused, |
| 125557 | .unused, |
| 125558 | }, |
| 125559 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125560 | .each = .{ .once = &.{ |
| 125561 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 125562 | .{ ._, .vp_w, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 125563 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 125564 | .{ ._, .vp_w, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 125565 | } }, |
| 125566 | }, .{ |
| 125567 | .required_features = .{ .sse2, null, null, null }, |
| 125568 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125569 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 125570 | .patterns = &.{ |
| 125571 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125572 | }, |
| 125573 | .extra_temps = .{ |
| 125574 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125575 | .unused, |
| 125576 | .unused, |
| 125577 | .unused, |
| 125578 | .unused, |
| 125579 | .unused, |
| 125580 | .unused, |
| 125581 | .unused, |
| 125582 | .unused, |
| 125583 | .unused, |
| 125584 | .unused, |
| 125585 | }, |
| 125586 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125587 | .each = .{ .once = &.{ |
| 125588 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 125589 | .{ ._, .p_w, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 125590 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 125591 | .{ ._, .p_w, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 125592 | } }, |
| 125593 | }, .{ |
| 125594 | .required_features = .{ .avx, null, null, null }, |
| 125595 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 125596 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 125597 | .patterns = &.{ |
| 125598 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125599 | }, |
| 125600 | .extra_temps = .{ |
| 125601 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125602 | .unused, |
| 125603 | .unused, |
| 125604 | .unused, |
| 125605 | .unused, |
| 125606 | .unused, |
| 125607 | .unused, |
| 125608 | .unused, |
| 125609 | .unused, |
| 125610 | .unused, |
| 125611 | .unused, |
| 125612 | }, |
| 125613 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125614 | .each = .{ .once = &.{ |
| 125615 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 125616 | .{ ._, .vp_w, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 125617 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 125618 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 125619 | } }, |
| 125620 | }, .{ |
| 125621 | .required_features = .{ .sse4_1, null, null, null }, |
| 125622 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 125623 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 125624 | .patterns = &.{ |
| 125625 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125626 | }, |
| 125627 | .extra_temps = .{ |
| 125628 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125629 | .unused, |
| 125630 | .unused, |
| 125631 | .unused, |
| 125632 | .unused, |
| 125633 | .unused, |
| 125634 | .unused, |
| 125635 | .unused, |
| 125636 | .unused, |
| 125637 | .unused, |
| 125638 | .unused, |
| 125639 | }, |
| 125640 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125641 | .each = .{ .once = &.{ |
| 125642 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 125643 | .{ ._, .p_w, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 125644 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 125645 | .{ ._, .p_w, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 125646 | } }, |
| 125647 | }, .{ |
| 125648 | .required_features = .{ .sse2, null, null, null }, |
| 125649 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 125650 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 125651 | .patterns = &.{ |
| 125652 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125653 | }, |
| 125654 | .extra_temps = .{ |
| 125655 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125656 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125657 | .unused, |
| 125658 | .unused, |
| 125659 | .unused, |
| 125660 | .unused, |
| 125661 | .unused, |
| 125662 | .unused, |
| 125663 | .unused, |
| 125664 | .unused, |
| 125665 | .unused, |
| 125666 | }, |
| 125667 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125668 | .each = .{ .once = &.{ |
| 125669 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 125670 | .{ ._, ._dqa, .mov, .tmp1x, .src0x, ._, ._ }, |
| 125671 | .{ ._, .p_w, .subus, .tmp1x, .tmp0x, ._, ._ }, |
| 125672 | .{ ._, .p_w, .sub, .dst0x, .tmp1x, ._, ._ }, |
| 125673 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 125674 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 125675 | .{ ._, .p_w, .subus, .tmp1x, .tmp0x, ._, ._ }, |
| 125676 | .{ ._, .p_w, .sub, .dst0x, .tmp1x, ._, ._ }, |
| 125677 | } }, |
| 125678 | }, .{ |
| 125679 | .required_features = .{ .avx2, null, null, null }, |
| 125680 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125681 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 125682 | .patterns = &.{ |
| 125683 | .{ .src = .{ .mem, .none, .none } }, |
| 125684 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125685 | }, |
| 125686 | .extra_temps = .{ |
| 125687 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 125688 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 125689 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125690 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 125691 | .unused, |
| 125692 | .unused, |
| 125693 | .unused, |
| 125694 | .unused, |
| 125695 | .unused, |
| 125696 | .unused, |
| 125697 | .unused, |
| 125698 | }, |
| 125699 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125700 | .each = .{ .once = &.{ |
| 125701 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 125702 | .{ ._, .vp_w, .broadcast, .tmp2x, .lea(.tmp0w), ._, ._ }, |
| 125703 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 125704 | .{ ._, .vp_, .xor, .dst0x, .tmp2x, .src0x, ._ }, |
| 125705 | .{ ._, .vp_, .@"or", .dst0x, .dst0x, .lea(.tmp0x), ._ }, |
| 125706 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 125707 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 125708 | } }, |
| 125709 | }, .{ |
| 125710 | .required_features = .{ .avx, null, null, null }, |
| 125711 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125712 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 125713 | .patterns = &.{ |
| 125714 | .{ .src = .{ .mem, .none, .none } }, |
| 125715 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125716 | }, |
| 125717 | .extra_temps = .{ |
| 125718 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 125719 | .{ .type = .vector_2_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 125720 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125721 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 125722 | .unused, |
| 125723 | .unused, |
| 125724 | .unused, |
| 125725 | .unused, |
| 125726 | .unused, |
| 125727 | .unused, |
| 125728 | .unused, |
| 125729 | }, |
| 125730 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125731 | .each = .{ .once = &.{ |
| 125732 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 125733 | .{ ._, .v_ss, .broadcast, .tmp2x, .lea(.tmp0d), ._, ._ }, |
| 125734 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 125735 | .{ ._, .vp_, .xor, .dst0x, .tmp2x, .src0x, ._ }, |
| 125736 | .{ ._, .vp_, .@"or", .dst0x, .dst0x, .lea(.tmp0x), ._ }, |
| 125737 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 125738 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 125739 | } }, |
| 125740 | }, .{ |
| 125741 | .required_features = .{ .sse4_1, null, null, null }, |
| 125742 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125743 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 125744 | .patterns = &.{ |
| 125745 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125746 | }, |
| 125747 | .extra_temps = .{ |
| 125748 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 125749 | .{ .type = .vector_4_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 125750 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 125751 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125752 | .unused, |
| 125753 | .unused, |
| 125754 | .unused, |
| 125755 | .unused, |
| 125756 | .unused, |
| 125757 | .unused, |
| 125758 | .unused, |
| 125759 | }, |
| 125760 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125761 | .each = .{ .once = &.{ |
| 125762 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 125763 | .{ ._, ._, .movddup, .tmp3x, .lea(.tmp0q), ._, ._ }, |
| 125764 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 125765 | .{ ._, .p_, .xor, .dst0x, .tmp3x, ._, ._ }, |
| 125766 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 125767 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 125768 | .{ ._, .p_, .xor, .dst0x, .tmp3x, ._, ._ }, |
| 125769 | } }, |
| 125770 | }, .{ |
| 125771 | .required_features = .{ .sse2, null, null, null }, |
| 125772 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125773 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 125774 | .patterns = &.{ |
| 125775 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125776 | }, |
| 125777 | .extra_temps = .{ |
| 125778 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 125779 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 125780 | .{ .type = .vector_8_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 125781 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125782 | .unused, |
| 125783 | .unused, |
| 125784 | .unused, |
| 125785 | .unused, |
| 125786 | .unused, |
| 125787 | .unused, |
| 125788 | .unused, |
| 125789 | }, |
| 125790 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125791 | .each = .{ .once = &.{ |
| 125792 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 125793 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 125794 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 125795 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 125796 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 125797 | .{ ._, .p_w, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 125798 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 125799 | .{ ._, .p_w, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 125800 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 125801 | .{ ._, .p_w, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 125802 | } }, |
| 125803 | }, .{ |
| 125804 | .required_features = .{ .avx, null, null, null }, |
| 125805 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 125806 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 125807 | .patterns = &.{ |
| 125808 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125809 | }, |
| 125810 | .extra_temps = .{ |
| 125811 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 125812 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 125813 | .unused, |
| 125814 | .unused, |
| 125815 | .unused, |
| 125816 | .unused, |
| 125817 | .unused, |
| 125818 | .unused, |
| 125819 | .unused, |
| 125820 | .unused, |
| 125821 | .unused, |
| 125822 | }, |
| 125823 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125824 | .each = .{ .once = &.{ |
| 125825 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 125826 | .{ ._, .vp_, .@"or", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 125827 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 125828 | } }, |
| 125829 | }, .{ |
| 125830 | .required_features = .{ .sse4_1, null, null, null }, |
| 125831 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 125832 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 125833 | .patterns = &.{ |
| 125834 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125835 | }, |
| 125836 | .extra_temps = .{ |
| 125837 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 125838 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 125839 | .unused, |
| 125840 | .unused, |
| 125841 | .unused, |
| 125842 | .unused, |
| 125843 | .unused, |
| 125844 | .unused, |
| 125845 | .unused, |
| 125846 | .unused, |
| 125847 | .unused, |
| 125848 | }, |
| 125849 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125850 | .each = .{ .once = &.{ |
| 125851 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 125852 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 125853 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 125854 | } }, |
| 125855 | }, .{ |
| 125856 | .required_features = .{ .sse2, null, null, null }, |
| 125857 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 125858 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 125859 | .patterns = &.{ |
| 125860 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125861 | }, |
| 125862 | .extra_temps = .{ |
| 125863 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 125864 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 125865 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125866 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 125867 | .unused, |
| 125868 | .unused, |
| 125869 | .unused, |
| 125870 | .unused, |
| 125871 | .unused, |
| 125872 | .unused, |
| 125873 | .unused, |
| 125874 | }, |
| 125875 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125876 | .each = .{ .once = &.{ |
| 125877 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 125878 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 125879 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 125880 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 125881 | .{ ._, .p_w, .subus, .tmp3x, .tmp2x, ._, ._ }, |
| 125882 | .{ ._, .p_w, .sub, .dst0x, .tmp3x, ._, ._ }, |
| 125883 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 125884 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 125885 | .{ ._, .p_w, .subus, .tmp3x, .tmp2x, ._, ._ }, |
| 125886 | .{ ._, .p_w, .sub, .dst0x, .tmp3x, ._, ._ }, |
| 125887 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 125888 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 125889 | .{ ._, .p_w, .subus, .tmp3x, .tmp2x, ._, ._ }, |
| 125890 | .{ ._, .p_w, .sub, .dst0x, .tmp3x, ._, ._ }, |
| 125891 | } }, |
| 125892 | }, .{ |
| 125893 | .required_features = .{ .avx2, null, null, null }, |
| 125894 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125895 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 125896 | .patterns = &.{ |
| 125897 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125898 | }, |
| 125899 | .extra_temps = .{ |
| 125900 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 125901 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 125902 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125903 | .unused, |
| 125904 | .unused, |
| 125905 | .unused, |
| 125906 | .unused, |
| 125907 | .unused, |
| 125908 | .unused, |
| 125909 | .unused, |
| 125910 | .unused, |
| 125911 | }, |
| 125912 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125913 | .each = .{ .once = &.{ |
| 125914 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 125915 | .{ ._, .vp_w, .broadcast, .tmp2x, .lea(.tmp0w), ._, ._ }, |
| 125916 | .{ ._, .vp_, .xor, .dst0x, .src0x, .tmp2x, ._ }, |
| 125917 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 125918 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 125919 | } }, |
| 125920 | }, .{ |
| 125921 | .required_features = .{ .avx, null, null, null }, |
| 125922 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125923 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 125924 | .patterns = &.{ |
| 125925 | .{ .src = .{ .to_sse, .none, .none } }, |
| 125926 | }, |
| 125927 | .extra_temps = .{ |
| 125928 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 125929 | .{ .type = .vector_2_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 125930 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125931 | .unused, |
| 125932 | .unused, |
| 125933 | .unused, |
| 125934 | .unused, |
| 125935 | .unused, |
| 125936 | .unused, |
| 125937 | .unused, |
| 125938 | .unused, |
| 125939 | }, |
| 125940 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 125941 | .each = .{ .once = &.{ |
| 125942 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 125943 | .{ ._, .v_ss, .broadcast, .tmp2x, .lea(.tmp0d), ._, ._ }, |
| 125944 | .{ ._, .vp_, .xor, .dst0x, .src0x, .tmp2x, ._ }, |
| 125945 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 125946 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 125947 | } }, |
| 125948 | }, .{ |
| 125949 | .required_features = .{ .sse4_1, null, null, null }, |
| 125950 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125951 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 125952 | .patterns = &.{ |
| 125953 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125954 | }, |
| 125955 | .extra_temps = .{ |
| 125956 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 125957 | .{ .type = .vector_4_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 125958 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125959 | .unused, |
| 125960 | .unused, |
| 125961 | .unused, |
| 125962 | .unused, |
| 125963 | .unused, |
| 125964 | .unused, |
| 125965 | .unused, |
| 125966 | .unused, |
| 125967 | }, |
| 125968 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125969 | .each = .{ .once = &.{ |
| 125970 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 125971 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 125972 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 125973 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 125974 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 125975 | } }, |
| 125976 | }, .{ |
| 125977 | .required_features = .{ .sse2, null, null, null }, |
| 125978 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 125979 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 125980 | .patterns = &.{ |
| 125981 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 125982 | }, |
| 125983 | .extra_temps = .{ |
| 125984 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 125985 | .unused, |
| 125986 | .unused, |
| 125987 | .unused, |
| 125988 | .unused, |
| 125989 | .unused, |
| 125990 | .unused, |
| 125991 | .unused, |
| 125992 | .unused, |
| 125993 | .unused, |
| 125994 | .unused, |
| 125995 | }, |
| 125996 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 125997 | .each = .{ .once = &.{ |
| 125998 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 125999 | .{ ._, .p_w, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 126000 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 126001 | .{ ._, .p_w, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 126002 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 126003 | .{ ._, .p_w, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 126004 | } }, |
| 126005 | }, .{ |
| 126006 | .required_features = .{ .avx, null, null, null }, |
| 126007 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126008 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 126009 | .patterns = &.{ |
| 126010 | .{ .src = .{ .to_sse, .none, .none } }, |
| 126011 | }, |
| 126012 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 126013 | .each = .{ .once = &.{ |
| 126014 | .{ ._, .vph_w, .minposu, .dst0x, .src0x, ._, ._ }, |
| 126015 | } }, |
| 126016 | }, .{ |
| 126017 | .required_features = .{ .sse4_1, null, null, null }, |
| 126018 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126019 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 126020 | .patterns = &.{ |
| 126021 | .{ .src = .{ .to_sse, .none, .none } }, |
| 126022 | }, |
| 126023 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 126024 | .each = .{ .once = &.{ |
| 126025 | .{ ._, .ph_w, .minposu, .dst0x, .src0x, ._, ._ }, |
| 126026 | } }, |
| 126027 | }, .{ |
| 126028 | .required_features = .{ .sse2, null, null, null }, |
| 126029 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126030 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 126031 | .patterns = &.{ |
| 126032 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 126033 | }, |
| 126034 | .extra_temps = .{ |
| 126035 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 126036 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 126037 | .unused, |
| 126038 | .unused, |
| 126039 | .unused, |
| 126040 | .unused, |
| 126041 | .unused, |
| 126042 | .unused, |
| 126043 | .unused, |
| 126044 | .unused, |
| 126045 | .unused, |
| 126046 | }, |
| 126047 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 126048 | .each = .{ .once = &.{ |
| 126049 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 126050 | .{ ._, ._dqa, .mov, .tmp1x, .src0x, ._, ._ }, |
| 126051 | .{ ._, .p_w, .subus, .tmp1x, .tmp0x, ._, ._ }, |
| 126052 | .{ ._, .p_w, .sub, .dst0x, .tmp1x, ._, ._ }, |
| 126053 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 126054 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 126055 | .{ ._, .p_w, .subus, .tmp1x, .tmp0x, ._, ._ }, |
| 126056 | .{ ._, .p_w, .sub, .dst0x, .tmp1x, ._, ._ }, |
| 126057 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 126058 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 126059 | .{ ._, .p_w, .subus, .tmp1x, .tmp0x, ._, ._ }, |
| 126060 | .{ ._, .p_w, .sub, .dst0x, .tmp1x, ._, ._ }, |
| 126061 | } }, |
| 126062 | }, .{ |
| 126063 | .required_features = .{ .avx2, null, null, null }, |
| 126064 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126065 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126066 | .patterns = &.{ |
| 126067 | .{ .src = .{ .mem, .none, .none } }, |
| 126068 | .{ .src = .{ .to_sse, .none, .none } }, |
| 126069 | }, |
| 126070 | .extra_temps = .{ |
| 126071 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 126072 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126073 | .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } }, |
| 126074 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 126075 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126076 | .unused, |
| 126077 | .unused, |
| 126078 | .unused, |
| 126079 | .unused, |
| 126080 | .unused, |
| 126081 | .unused, |
| 126082 | }, |
| 126083 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 126084 | .each = .{ .once = &.{ |
| 126085 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126086 | .{ ._, .vp_w, .broadcast, .tmp2y, .lea(.tmp0w), ._, ._ }, |
| 126087 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 126088 | .{ ._, .vp_, .xor, .dst0y, .tmp2y, .src0y, ._ }, |
| 126089 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 126090 | .{ ._, .v_i128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 126091 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp4x, ._ }, |
| 126092 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126093 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 126094 | } }, |
| 126095 | }, .{ |
| 126096 | .required_features = .{ .avx, null, null, null }, |
| 126097 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126098 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126099 | .patterns = &.{ |
| 126100 | .{ .src = .{ .mem, .none, .none } }, |
| 126101 | .{ .src = .{ .to_sse, .none, .none } }, |
| 126102 | }, |
| 126103 | .extra_temps = .{ |
| 126104 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 126105 | .{ .type = .vector_2_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126106 | .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } }, |
| 126107 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 126108 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126109 | .unused, |
| 126110 | .unused, |
| 126111 | .unused, |
| 126112 | .unused, |
| 126113 | .unused, |
| 126114 | .unused, |
| 126115 | }, |
| 126116 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 126117 | .each = .{ .once = &.{ |
| 126118 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126119 | .{ ._, .v_ss, .broadcast, .tmp2y, .lea(.tmp0d), ._, ._ }, |
| 126120 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 126121 | .{ ._, .v_ps, .xor, .dst0y, .tmp2y, .src0y, ._ }, |
| 126122 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 126123 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 126124 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp4x, ._ }, |
| 126125 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126126 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 126127 | } }, |
| 126128 | }, .{ |
| 126129 | .required_features = .{ .avx2, null, null, null }, |
| 126130 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126131 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126132 | .patterns = &.{ |
| 126133 | .{ .src = .{ .to_sse, .none, .none } }, |
| 126134 | }, |
| 126135 | .extra_temps = .{ |
| 126136 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 126137 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 126138 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 126139 | .unused, |
| 126140 | .unused, |
| 126141 | .unused, |
| 126142 | .unused, |
| 126143 | .unused, |
| 126144 | .unused, |
| 126145 | .unused, |
| 126146 | .unused, |
| 126147 | }, |
| 126148 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 126149 | .each = .{ .once = &.{ |
| 126150 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126151 | .{ ._, .vp_, .@"or", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 126152 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 126153 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 126154 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126155 | } }, |
| 126156 | }, .{ |
| 126157 | .required_features = .{ .avx, null, null, null }, |
| 126158 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126159 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126160 | .patterns = &.{ |
| 126161 | .{ .src = .{ .to_sse, .none, .none } }, |
| 126162 | }, |
| 126163 | .extra_temps = .{ |
| 126164 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 126165 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 126166 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 126167 | .unused, |
| 126168 | .unused, |
| 126169 | .unused, |
| 126170 | .unused, |
| 126171 | .unused, |
| 126172 | .unused, |
| 126173 | .unused, |
| 126174 | .unused, |
| 126175 | }, |
| 126176 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 126177 | .each = .{ .once = &.{ |
| 126178 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126179 | .{ ._, .v_ps, .@"or", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 126180 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 126181 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 126182 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126183 | } }, |
| 126184 | }, .{ |
| 126185 | .required_features = .{ .avx2, null, null, null }, |
| 126186 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126187 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126188 | .patterns = &.{ |
| 126189 | .{ .src = .{ .to_sse, .none, .none } }, |
| 126190 | }, |
| 126191 | .extra_temps = .{ |
| 126192 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126193 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 126194 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126195 | .unused, |
| 126196 | .unused, |
| 126197 | .unused, |
| 126198 | .unused, |
| 126199 | .unused, |
| 126200 | .unused, |
| 126201 | .unused, |
| 126202 | .unused, |
| 126203 | }, |
| 126204 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 126205 | .each = .{ .once = &.{ |
| 126206 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 126207 | .{ ._, .vp_w, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 126208 | .{ ._, ._, .lea, .tmp1p, .mem(.tmp2), ._, ._ }, |
| 126209 | .{ ._, .vp_w, .broadcast, .tmp0x, .lea(.tmp1w), ._, ._ }, |
| 126210 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 126211 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126212 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 126213 | } }, |
| 126214 | }, .{ |
| 126215 | .required_features = .{ .avx, null, null, null }, |
| 126216 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126217 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126218 | .patterns = &.{ |
| 126219 | .{ .src = .{ .to_sse, .none, .none } }, |
| 126220 | }, |
| 126221 | .extra_temps = .{ |
| 126222 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126223 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 126224 | .{ .type = .vector_2_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126225 | .unused, |
| 126226 | .unused, |
| 126227 | .unused, |
| 126228 | .unused, |
| 126229 | .unused, |
| 126230 | .unused, |
| 126231 | .unused, |
| 126232 | .unused, |
| 126233 | }, |
| 126234 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 126235 | .each = .{ .once = &.{ |
| 126236 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 126237 | .{ ._, .vp_w, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 126238 | .{ ._, ._, .lea, .tmp1p, .mem(.tmp2), ._, ._ }, |
| 126239 | .{ ._, .v_ss, .broadcast, .tmp0x, .lea(.tmp1d), ._, ._ }, |
| 126240 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 126241 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126242 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 126243 | } }, |
| 126244 | }, .{ |
| 126245 | .required_features = .{ .avx2, null, null, null }, |
| 126246 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126247 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126248 | .patterns = &.{ |
| 126249 | .{ .src = .{ .to_sse, .none, .none } }, |
| 126250 | }, |
| 126251 | .extra_temps = .{ |
| 126252 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 126253 | .unused, |
| 126254 | .unused, |
| 126255 | .unused, |
| 126256 | .unused, |
| 126257 | .unused, |
| 126258 | .unused, |
| 126259 | .unused, |
| 126260 | .unused, |
| 126261 | .unused, |
| 126262 | .unused, |
| 126263 | }, |
| 126264 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 126265 | .each = .{ .once = &.{ |
| 126266 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 126267 | .{ ._, .vp_w, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 126268 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126269 | } }, |
| 126270 | }, .{ |
| 126271 | .required_features = .{ .avx, null, null, null }, |
| 126272 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126273 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126274 | .patterns = &.{ |
| 126275 | .{ .src = .{ .to_sse, .none, .none } }, |
| 126276 | }, |
| 126277 | .extra_temps = .{ |
| 126278 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 126279 | .unused, |
| 126280 | .unused, |
| 126281 | .unused, |
| 126282 | .unused, |
| 126283 | .unused, |
| 126284 | .unused, |
| 126285 | .unused, |
| 126286 | .unused, |
| 126287 | .unused, |
| 126288 | .unused, |
| 126289 | }, |
| 126290 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 126291 | .each = .{ .once = &.{ |
| 126292 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 126293 | .{ ._, .vp_w, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 126294 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126295 | } }, |
| 126296 | }, .{ |
| 126297 | .required_features = .{ .avx512f, null, null, null }, |
| 126298 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126299 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 126300 | .patterns = &.{ |
| 126301 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126302 | }, |
| 126303 | .extra_temps = .{ |
| 126304 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 126305 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126306 | .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } }, |
| 126307 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 126308 | .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } }, |
| 126309 | .unused, |
| 126310 | .unused, |
| 126311 | .unused, |
| 126312 | .unused, |
| 126313 | .unused, |
| 126314 | .unused, |
| 126315 | }, |
| 126316 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126317 | .each = .{ .once = &.{ |
| 126318 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126319 | .{ ._, .vp_w, .broadcast, .tmp2y, .lea(.tmp0w), ._, ._ }, |
| 126320 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 126321 | .{ ._, .vp_, .xor, .dst0y, .tmp2y, .mem(.src0y), ._ }, |
| 126322 | .{ ._, .vp_, .xor, .tmp4y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 126323 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 126324 | .{ ._, .vp_, .@"or", .tmp4y, .tmp4y, .lead(.tmp0y, 32), ._ }, |
| 126325 | .{ ._, .vp_w, .minu, .dst0y, .dst0y, .tmp4y, ._ }, |
| 126326 | .{ ._, .v_i128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 126327 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp4x, ._ }, |
| 126328 | .{ ._, .vp_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 126329 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126330 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 126331 | } }, |
| 126332 | }, .{ |
| 126333 | .required_features = .{ .avx512f, null, null, null }, |
| 126334 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126335 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 126336 | .patterns = &.{ |
| 126337 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126338 | }, |
| 126339 | .extra_temps = .{ |
| 126340 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 126341 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 126342 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 126343 | .unused, |
| 126344 | .unused, |
| 126345 | .unused, |
| 126346 | .unused, |
| 126347 | .unused, |
| 126348 | .unused, |
| 126349 | .unused, |
| 126350 | .unused, |
| 126351 | }, |
| 126352 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126353 | .each = .{ .once = &.{ |
| 126354 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126355 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 126356 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 126357 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 126358 | .{ ._, .vp_, .@"or", .tmp2y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 126359 | .{ ._, .vp_w, .minu, .dst0y, .dst0y, .tmp2y, ._ }, |
| 126360 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 126361 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 126362 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126363 | } }, |
| 126364 | }, .{ |
| 126365 | .required_features = .{ .avx512f, null, null, null }, |
| 126366 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126367 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 126368 | .patterns = &.{ |
| 126369 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126370 | }, |
| 126371 | .extra_temps = .{ |
| 126372 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126373 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 126374 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126375 | .unused, |
| 126376 | .unused, |
| 126377 | .unused, |
| 126378 | .unused, |
| 126379 | .unused, |
| 126380 | .unused, |
| 126381 | .unused, |
| 126382 | .unused, |
| 126383 | }, |
| 126384 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126385 | .each = .{ .once = &.{ |
| 126386 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 126387 | .{ ._, .vp_w, .mins, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 126388 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 126389 | .{ ._, .vp_w, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 126390 | .{ ._, ._, .lea, .tmp1p, .mem(.tmp2), ._, ._ }, |
| 126391 | .{ ._, .vp_w, .broadcast, .tmp0x, .lea(.tmp1w), ._, ._ }, |
| 126392 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 126393 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126394 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 126395 | } }, |
| 126396 | }, .{ |
| 126397 | .required_features = .{ .avx512f, null, null, null }, |
| 126398 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126399 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 126400 | .patterns = &.{ |
| 126401 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126402 | }, |
| 126403 | .extra_temps = .{ |
| 126404 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 126405 | .unused, |
| 126406 | .unused, |
| 126407 | .unused, |
| 126408 | .unused, |
| 126409 | .unused, |
| 126410 | .unused, |
| 126411 | .unused, |
| 126412 | .unused, |
| 126413 | .unused, |
| 126414 | .unused, |
| 126415 | }, |
| 126416 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126417 | .each = .{ .once = &.{ |
| 126418 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 126419 | .{ ._, .vp_w, .minu, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 126420 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 126421 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 126422 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126423 | } }, |
| 126424 | }, .{ |
| 126425 | .required_features = .{ .avx2, null, null, null }, |
| 126426 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126427 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126428 | .patterns = &.{ |
| 126429 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126430 | }, |
| 126431 | .extra_temps = .{ |
| 126432 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126433 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126434 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126435 | .unused, |
| 126436 | .unused, |
| 126437 | .unused, |
| 126438 | .unused, |
| 126439 | .unused, |
| 126440 | .unused, |
| 126441 | .unused, |
| 126442 | .unused, |
| 126443 | }, |
| 126444 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126445 | .clobbers = .{ .eflags = true }, |
| 126446 | .each = .{ .once = &.{ |
| 126447 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 126448 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 126449 | .{ .@"0:", .vp_w, .mins, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 126450 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 126451 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126452 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 126453 | .{ ._, .vp_w, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 126454 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 126455 | .{ ._, .vp_w, .broadcast, .tmp1x, .lea(.tmp0w), ._, ._ }, |
| 126456 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp1x, ._ }, |
| 126457 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126458 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp1x, ._ }, |
| 126459 | } }, |
| 126460 | }, .{ |
| 126461 | .required_features = .{ .avx, null, null, null }, |
| 126462 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126463 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 126464 | .patterns = &.{ |
| 126465 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126466 | }, |
| 126467 | .extra_temps = .{ |
| 126468 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126469 | .{ .type = .vector_2_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126470 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126471 | .unused, |
| 126472 | .unused, |
| 126473 | .unused, |
| 126474 | .unused, |
| 126475 | .unused, |
| 126476 | .unused, |
| 126477 | .unused, |
| 126478 | .unused, |
| 126479 | }, |
| 126480 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126481 | .clobbers = .{ .eflags = true }, |
| 126482 | .each = .{ .once = &.{ |
| 126483 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 126484 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 126485 | .{ .@"0:", .vp_w, .mins, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 126486 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 126487 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126488 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126489 | .{ ._, .v_ss, .broadcast, .tmp2x, .lea(.tmp0d), ._, ._ }, |
| 126490 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 126491 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126492 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 126493 | } }, |
| 126494 | }, .{ |
| 126495 | .required_features = .{ .sse4_1, null, null, null }, |
| 126496 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126497 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 126498 | .patterns = &.{ |
| 126499 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126500 | }, |
| 126501 | .extra_temps = .{ |
| 126502 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126503 | .{ .type = .vector_4_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126504 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126505 | .unused, |
| 126506 | .unused, |
| 126507 | .unused, |
| 126508 | .unused, |
| 126509 | .unused, |
| 126510 | .unused, |
| 126511 | .unused, |
| 126512 | .unused, |
| 126513 | }, |
| 126514 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126515 | .clobbers = .{ .eflags = true }, |
| 126516 | .each = .{ .once = &.{ |
| 126517 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 126518 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 126519 | .{ .@"0:", .p_w, .mins, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 126520 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 126521 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126522 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126523 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 126524 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 126525 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126526 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 126527 | } }, |
| 126528 | }, .{ |
| 126529 | .required_features = .{ .sse2, null, null, null }, |
| 126530 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126531 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 126532 | .patterns = &.{ |
| 126533 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126534 | }, |
| 126535 | .extra_temps = .{ |
| 126536 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126537 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126538 | .unused, |
| 126539 | .unused, |
| 126540 | .unused, |
| 126541 | .unused, |
| 126542 | .unused, |
| 126543 | .unused, |
| 126544 | .unused, |
| 126545 | .unused, |
| 126546 | .unused, |
| 126547 | }, |
| 126548 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126549 | .clobbers = .{ .eflags = true }, |
| 126550 | .each = .{ .once = &.{ |
| 126551 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 126552 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 126553 | .{ .@"0:", .p_w, .mins, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 126554 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 126555 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126556 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 126557 | .{ ._, .p_w, .mins, .dst0x, .tmp1x, ._, ._ }, |
| 126558 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 126559 | .{ ._, .p_w, .mins, .dst0x, .tmp1x, ._, ._ }, |
| 126560 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 126561 | .{ ._, .p_w, .mins, .dst0x, .tmp1x, ._, ._ }, |
| 126562 | } }, |
| 126563 | }, .{ |
| 126564 | .required_features = .{ .avx2, null, null, null }, |
| 126565 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126566 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126567 | .patterns = &.{ |
| 126568 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126569 | }, |
| 126570 | .extra_temps = .{ |
| 126571 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126572 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 126573 | .unused, |
| 126574 | .unused, |
| 126575 | .unused, |
| 126576 | .unused, |
| 126577 | .unused, |
| 126578 | .unused, |
| 126579 | .unused, |
| 126580 | .unused, |
| 126581 | .unused, |
| 126582 | }, |
| 126583 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126584 | .clobbers = .{ .eflags = true }, |
| 126585 | .each = .{ .once = &.{ |
| 126586 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 126587 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 126588 | .{ .@"0:", .vp_w, .minu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 126589 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 126590 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126591 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 126592 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 126593 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126594 | } }, |
| 126595 | }, .{ |
| 126596 | .required_features = .{ .avx, null, null, null }, |
| 126597 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126598 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 126599 | .patterns = &.{ |
| 126600 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126601 | }, |
| 126602 | .extra_temps = .{ |
| 126603 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126604 | .unused, |
| 126605 | .unused, |
| 126606 | .unused, |
| 126607 | .unused, |
| 126608 | .unused, |
| 126609 | .unused, |
| 126610 | .unused, |
| 126611 | .unused, |
| 126612 | .unused, |
| 126613 | .unused, |
| 126614 | }, |
| 126615 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126616 | .clobbers = .{ .eflags = true }, |
| 126617 | .each = .{ .once = &.{ |
| 126618 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 126619 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 126620 | .{ .@"0:", .vp_w, .minu, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 126621 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 126622 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126623 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126624 | } }, |
| 126625 | }, .{ |
| 126626 | .required_features = .{ .sse4_1, null, null, null }, |
| 126627 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126628 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 126629 | .patterns = &.{ |
| 126630 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126631 | }, |
| 126632 | .extra_temps = .{ |
| 126633 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126634 | .unused, |
| 126635 | .unused, |
| 126636 | .unused, |
| 126637 | .unused, |
| 126638 | .unused, |
| 126639 | .unused, |
| 126640 | .unused, |
| 126641 | .unused, |
| 126642 | .unused, |
| 126643 | .unused, |
| 126644 | }, |
| 126645 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126646 | .clobbers = .{ .eflags = true }, |
| 126647 | .each = .{ .once = &.{ |
| 126648 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 126649 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 126650 | .{ .@"0:", .p_w, .minu, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 126651 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 126652 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126653 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126654 | } }, |
| 126655 | }, .{ |
| 126656 | .required_features = .{ .sse2, null, null, null }, |
| 126657 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126658 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 126659 | .patterns = &.{ |
| 126660 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126661 | }, |
| 126662 | .extra_temps = .{ |
| 126663 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126664 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 126665 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 126666 | .unused, |
| 126667 | .unused, |
| 126668 | .unused, |
| 126669 | .unused, |
| 126670 | .unused, |
| 126671 | .unused, |
| 126672 | .unused, |
| 126673 | .unused, |
| 126674 | }, |
| 126675 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126676 | .clobbers = .{ .eflags = true }, |
| 126677 | .each = .{ .once = &.{ |
| 126678 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 126679 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 126680 | .{ .@"0:", ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 126681 | .{ ._, .p_w, .subus, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 126682 | .{ ._, .p_w, .sub, .dst0x, .tmp1x, ._, ._ }, |
| 126683 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 126684 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126685 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 126686 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 126687 | .{ ._, .p_w, .subus, .tmp2x, .tmp1x, ._, ._ }, |
| 126688 | .{ ._, .p_w, .sub, .dst0x, .tmp2x, ._, ._ }, |
| 126689 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 126690 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 126691 | .{ ._, .p_w, .subus, .tmp2x, .tmp1x, ._, ._ }, |
| 126692 | .{ ._, .p_w, .sub, .dst0x, .tmp2x, ._, ._ }, |
| 126693 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 126694 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 126695 | .{ ._, .p_w, .subus, .tmp2x, .tmp1x, ._, ._ }, |
| 126696 | .{ ._, .p_w, .sub, .dst0x, .tmp2x, ._, ._ }, |
| 126697 | } }, |
| 126698 | }, .{ |
| 126699 | .required_features = .{ .avx512f, null, null, null }, |
| 126700 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126701 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 126702 | .patterns = &.{ |
| 126703 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126704 | }, |
| 126705 | .extra_temps = .{ |
| 126706 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126707 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 126708 | .{ .type = .vector_32_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 126709 | .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } }, |
| 126710 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126711 | .unused, |
| 126712 | .unused, |
| 126713 | .unused, |
| 126714 | .unused, |
| 126715 | .unused, |
| 126716 | .unused, |
| 126717 | }, |
| 126718 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126719 | .clobbers = .{ .eflags = true }, |
| 126720 | .each = .{ .once = &.{ |
| 126721 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126722 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 126723 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 126724 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 126725 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 126726 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 126727 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 126728 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 126729 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 126730 | .{ .@"0:", .vp_w, .mins, .tmp3y, .tmp3y, .memid(.src0y, .tmp0, 32), ._ }, |
| 126731 | .{ ._, .vp_w, .mins, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 126732 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 126733 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126734 | .{ ._, .vp_w, .mins, .dst0y, .dst0y, .tmp3y, ._ }, |
| 126735 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 126736 | .{ ._, .vp_w, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 126737 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ }, |
| 126738 | .{ ._, .vp_w, .broadcast, .tmp3x, .lea(.tmp0w), ._, ._ }, |
| 126739 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp3x, ._ }, |
| 126740 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126741 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp3x, ._ }, |
| 126742 | } }, |
| 126743 | }, .{ |
| 126744 | .required_features = .{ .avx2, null, null, null }, |
| 126745 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126746 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126747 | .patterns = &.{ |
| 126748 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126749 | }, |
| 126750 | .extra_temps = .{ |
| 126751 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126752 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 126753 | .{ .type = .vector_16_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 126754 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126755 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126756 | .unused, |
| 126757 | .unused, |
| 126758 | .unused, |
| 126759 | .unused, |
| 126760 | .unused, |
| 126761 | .unused, |
| 126762 | }, |
| 126763 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126764 | .clobbers = .{ .eflags = true }, |
| 126765 | .each = .{ .once = &.{ |
| 126766 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126767 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 126768 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 126769 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 126770 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 126771 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 126772 | .{ .@"0:", .vp_w, .mins, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 126773 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 126774 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126775 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 126776 | .{ ._, .vp_w, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 126777 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ }, |
| 126778 | .{ ._, .vp_w, .broadcast, .tmp3x, .lea(.tmp0w), ._, ._ }, |
| 126779 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp3x, ._ }, |
| 126780 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126781 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp3x, ._ }, |
| 126782 | } }, |
| 126783 | }, .{ |
| 126784 | .required_features = .{ .avx, null, null, null }, |
| 126785 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126786 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126787 | .patterns = &.{ |
| 126788 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126789 | }, |
| 126790 | .extra_temps = .{ |
| 126791 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126792 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 126793 | .{ .type = .vector_16_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 126794 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126795 | .{ .type = .vector_2_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126796 | .unused, |
| 126797 | .unused, |
| 126798 | .unused, |
| 126799 | .unused, |
| 126800 | .unused, |
| 126801 | .unused, |
| 126802 | }, |
| 126803 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126804 | .clobbers = .{ .eflags = true }, |
| 126805 | .each = .{ .once = &.{ |
| 126806 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126807 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 126808 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 126809 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 126810 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 126811 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 126812 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 126813 | .{ ._, .vp_w, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 126814 | .{ .@"0:", .vp_w, .mins, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 126815 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 126816 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126817 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ }, |
| 126818 | .{ ._, .v_ss, .broadcast, .tmp3x, .lea(.tmp0d), ._, ._ }, |
| 126819 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp3x, ._ }, |
| 126820 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126821 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp3x, ._ }, |
| 126822 | } }, |
| 126823 | }, .{ |
| 126824 | .required_features = .{ .sse4_1, null, null, null }, |
| 126825 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126826 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 126827 | .patterns = &.{ |
| 126828 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126829 | }, |
| 126830 | .extra_temps = .{ |
| 126831 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126832 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 126833 | .{ .type = .vector_8_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 126834 | .{ .type = .vector_4_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 126835 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126836 | .unused, |
| 126837 | .unused, |
| 126838 | .unused, |
| 126839 | .unused, |
| 126840 | .unused, |
| 126841 | .unused, |
| 126842 | }, |
| 126843 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126844 | .clobbers = .{ .eflags = true }, |
| 126845 | .each = .{ .once = &.{ |
| 126846 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126847 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 126848 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 126849 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 126850 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 126851 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 126852 | .{ .@"0:", .p_w, .mins, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 126853 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 126854 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126855 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 126856 | .{ ._, ._, .movddup, .tmp4x, .lea(.tmp0q), ._, ._ }, |
| 126857 | .{ ._, .p_, .xor, .dst0x, .tmp4x, ._, ._ }, |
| 126858 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126859 | .{ ._, .p_, .xor, .dst0x, .tmp4x, ._, ._ }, |
| 126860 | } }, |
| 126861 | }, .{ |
| 126862 | .required_features = .{ .sse2, null, null, null }, |
| 126863 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 126864 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 126865 | .patterns = &.{ |
| 126866 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126867 | }, |
| 126868 | .extra_temps = .{ |
| 126869 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126870 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 126871 | .{ .type = .vector_8_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 126872 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 126873 | .unused, |
| 126874 | .unused, |
| 126875 | .unused, |
| 126876 | .unused, |
| 126877 | .unused, |
| 126878 | .unused, |
| 126879 | .unused, |
| 126880 | }, |
| 126881 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126882 | .clobbers = .{ .eflags = true }, |
| 126883 | .each = .{ .once = &.{ |
| 126884 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126885 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 126886 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 126887 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 126888 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 126889 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 126890 | .{ .@"0:", .p_w, .mins, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 126891 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 126892 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126893 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 126894 | .{ ._, .p_w, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 126895 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 126896 | .{ ._, .p_w, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 126897 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 126898 | .{ ._, .p_w, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 126899 | } }, |
| 126900 | }, .{ |
| 126901 | .required_features = .{ .avx512f, null, null, null }, |
| 126902 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126903 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 126904 | .patterns = &.{ |
| 126905 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126906 | }, |
| 126907 | .extra_temps = .{ |
| 126908 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126909 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 126910 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 126911 | .unused, |
| 126912 | .unused, |
| 126913 | .unused, |
| 126914 | .unused, |
| 126915 | .unused, |
| 126916 | .unused, |
| 126917 | .unused, |
| 126918 | .unused, |
| 126919 | }, |
| 126920 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126921 | .clobbers = .{ .eflags = true }, |
| 126922 | .each = .{ .once = &.{ |
| 126923 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126924 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 126925 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 126926 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 126927 | .{ ._, .vp_, .@"or", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 126928 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 126929 | .{ .@"0:", .vp_w, .minu, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 126930 | .{ ._, .vp_w, .minu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 126931 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 126932 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126933 | .{ ._, .vp_w, .minu, .dst0y, .dst0y, .tmp2y, ._ }, |
| 126934 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 126935 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 126936 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126937 | } }, |
| 126938 | }, .{ |
| 126939 | .required_features = .{ .avx2, null, null, null }, |
| 126940 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126941 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126942 | .patterns = &.{ |
| 126943 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126944 | }, |
| 126945 | .extra_temps = .{ |
| 126946 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126947 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 126948 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 126949 | .unused, |
| 126950 | .unused, |
| 126951 | .unused, |
| 126952 | .unused, |
| 126953 | .unused, |
| 126954 | .unused, |
| 126955 | .unused, |
| 126956 | .unused, |
| 126957 | }, |
| 126958 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126959 | .clobbers = .{ .eflags = true }, |
| 126960 | .each = .{ .once = &.{ |
| 126961 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126962 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 126963 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 126964 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 126965 | .{ .@"0:", .vp_w, .minu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 126966 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 126967 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 126968 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 126969 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 126970 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 126971 | } }, |
| 126972 | }, .{ |
| 126973 | .required_features = .{ .avx, null, null, null }, |
| 126974 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 126975 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 126976 | .patterns = &.{ |
| 126977 | .{ .src = .{ .to_mem, .none, .none } }, |
| 126978 | }, |
| 126979 | .extra_temps = .{ |
| 126980 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 126981 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 126982 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 126983 | .unused, |
| 126984 | .unused, |
| 126985 | .unused, |
| 126986 | .unused, |
| 126987 | .unused, |
| 126988 | .unused, |
| 126989 | .unused, |
| 126990 | .unused, |
| 126991 | }, |
| 126992 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 126993 | .clobbers = .{ .eflags = true }, |
| 126994 | .each = .{ .once = &.{ |
| 126995 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 126996 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 126997 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 126998 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 126999 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 127000 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 127001 | .{ .@"0:", .vp_w, .minu, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 127002 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 127003 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 127004 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 127005 | } }, |
| 127006 | }, .{ |
| 127007 | .required_features = .{ .sse4_1, null, null, null }, |
| 127008 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 127009 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 127010 | .patterns = &.{ |
| 127011 | .{ .src = .{ .to_mem, .none, .none } }, |
| 127012 | }, |
| 127013 | .extra_temps = .{ |
| 127014 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 127015 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 127016 | .unused, |
| 127017 | .unused, |
| 127018 | .unused, |
| 127019 | .unused, |
| 127020 | .unused, |
| 127021 | .unused, |
| 127022 | .unused, |
| 127023 | .unused, |
| 127024 | .unused, |
| 127025 | }, |
| 127026 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 127027 | .clobbers = .{ .eflags = true }, |
| 127028 | .each = .{ .once = &.{ |
| 127029 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 127030 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 127031 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 127032 | .{ ._, .p_, .@"or", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 127033 | .{ .@"0:", .p_w, .minu, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 127034 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 127035 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 127036 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 127037 | } }, |
| 127038 | }, .{ |
| 127039 | .required_features = .{ .sse2, null, null, null }, |
| 127040 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 127041 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 127042 | .patterns = &.{ |
| 127043 | .{ .src = .{ .to_mem, .none, .none } }, |
| 127044 | }, |
| 127045 | .extra_temps = .{ |
| 127046 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 127047 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 127048 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 127049 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 127050 | .unused, |
| 127051 | .unused, |
| 127052 | .unused, |
| 127053 | .unused, |
| 127054 | .unused, |
| 127055 | .unused, |
| 127056 | .unused, |
| 127057 | }, |
| 127058 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 127059 | .clobbers = .{ .eflags = true }, |
| 127060 | .each = .{ .once = &.{ |
| 127061 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 127062 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 127063 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 127064 | .{ ._, .p_, .@"or", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 127065 | .{ .@"0:", ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 127066 | .{ ._, .p_w, .subus, .tmp2x, .memi(.src0x, .tmp0), ._, ._ }, |
| 127067 | .{ ._, .p_w, .sub, .dst0x, .tmp2x, ._, ._ }, |
| 127068 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 127069 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 127070 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 127071 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 127072 | .{ ._, .p_w, .subus, .tmp3x, .tmp2x, ._, ._ }, |
| 127073 | .{ ._, .p_w, .sub, .dst0x, .tmp3x, ._, ._ }, |
| 127074 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 127075 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 127076 | .{ ._, .p_w, .subus, .tmp3x, .tmp2x, ._, ._ }, |
| 127077 | .{ ._, .p_w, .sub, .dst0x, .tmp3x, ._, ._ }, |
| 127078 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 127079 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 127080 | .{ ._, .p_w, .subus, .tmp3x, .tmp2x, ._, ._ }, |
| 127081 | .{ ._, .p_w, .sub, .dst0x, .tmp3x, ._, ._ }, |
| 127082 | } }, |
| 127083 | }, .{ |
| 127084 | .required_features = .{ .cmov, null, null, null }, |
| 127085 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 127086 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any }, |
| 127087 | .patterns = &.{ |
| 127088 | .{ .src = .{ .to_mem, .none, .none } }, |
| 127089 | }, |
| 127090 | .extra_temps = .{ |
| 127091 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 127092 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 127093 | .unused, |
| 127094 | .unused, |
| 127095 | .unused, |
| 127096 | .unused, |
| 127097 | .unused, |
| 127098 | .unused, |
| 127099 | .unused, |
| 127100 | .unused, |
| 127101 | .unused, |
| 127102 | }, |
| 127103 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 127104 | .clobbers = .{ .eflags = true }, |
| 127105 | .each = .{ .once = &.{ |
| 127106 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 127107 | .{ ._, ._, .movsx, .dst0d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 127108 | .{ .@"0:", ._, .movsx, .tmp1d, .memi(.src0w, .tmp0), ._, ._ }, |
| 127109 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 127110 | .{ ._, ._nl, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 127111 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 127112 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 127113 | } }, |
| 127114 | }, .{ |
| 127115 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 127116 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any }, |
| 127117 | .patterns = &.{ |
| 127118 | .{ .src = .{ .to_mem, .none, .none } }, |
| 127119 | }, |
| 127120 | .extra_temps = .{ |
| 127121 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 127122 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 127123 | .unused, |
| 127124 | .unused, |
| 127125 | .unused, |
| 127126 | .unused, |
| 127127 | .unused, |
| 127128 | .unused, |
| 127129 | .unused, |
| 127130 | .unused, |
| 127131 | .unused, |
| 127132 | }, |
| 127133 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 127134 | .clobbers = .{ .eflags = true }, |
| 127135 | .each = .{ .once = &.{ |
| 127136 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 127137 | .{ ._, ._, .movsx, .dst0d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 127138 | .{ .@"0:", ._, .movsx, .tmp1d, .memi(.src0w, .tmp0), ._, ._ }, |
| 127139 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 127140 | .{ ._, ._l, .j, .@"1f", ._, ._, ._ }, |
| 127141 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 127142 | .{ .@"1:", ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 127143 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 127144 | } }, |
| 127145 | }, .{ |
| 127146 | .required_features = .{ .cmov, null, null, null }, |
| 127147 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 127148 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any, .any }, |
| 127149 | .patterns = &.{ |
| 127150 | .{ .src = .{ .to_mem, .none, .none } }, |
| 127151 | }, |
| 127152 | .extra_temps = .{ |
| 127153 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 127154 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 127155 | .unused, |
| 127156 | .unused, |
| 127157 | .unused, |
| 127158 | .unused, |
| 127159 | .unused, |
| 127160 | .unused, |
| 127161 | .unused, |
| 127162 | .unused, |
| 127163 | .unused, |
| 127164 | }, |
| 127165 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 127166 | .clobbers = .{ .eflags = true }, |
| 127167 | .each = .{ .once = &.{ |
| 127168 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 127169 | .{ ._, ._, .movzx, .dst0d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 127170 | .{ .@"0:", ._, .movzx, .tmp1d, .memi(.src0w, .tmp0), ._, ._ }, |
| 127171 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 127172 | .{ ._, ._nb, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 127173 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 127174 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 127175 | } }, |
| 127176 | }, .{ |
| 127177 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 127178 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any, .any }, |
| 127179 | .patterns = &.{ |
| 127180 | .{ .src = .{ .to_mem, .none, .none } }, |
| 127181 | }, |
| 127182 | .extra_temps = .{ |
| 127183 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 127184 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 127185 | .unused, |
| 127186 | .unused, |
| 127187 | .unused, |
| 127188 | .unused, |
| 127189 | .unused, |
| 127190 | .unused, |
| 127191 | .unused, |
| 127192 | .unused, |
| 127193 | .unused, |
| 127194 | }, |
| 127195 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 127196 | .clobbers = .{ .eflags = true }, |
| 127197 | .each = .{ .once = &.{ |
| 127198 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 127199 | .{ ._, ._, .movzx, .dst0d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 127200 | .{ .@"0:", ._, .movzx, .tmp1d, .memi(.src0w, .tmp0), ._, ._ }, |
| 127201 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 127202 | .{ ._, ._b, .j, .@"1f", ._, ._, ._ }, |
| 127203 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 127204 | .{ .@"1:", ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 127205 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 127206 | } }, |
| 127207 | }, .{ |
| 127208 | .required_features = .{ .avx, null, null, null }, |
| 127209 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 127210 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 127211 | .patterns = &.{ |
| 127212 | .{ .src = .{ .to_sse, .none, .none } }, |
| 127213 | }, |
| 127214 | .extra_temps = .{ |
| 127215 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127216 | .unused, |
| 127217 | .unused, |
| 127218 | .unused, |
| 127219 | .unused, |
| 127220 | .unused, |
| 127221 | .unused, |
| 127222 | .unused, |
| 127223 | .unused, |
| 127224 | .unused, |
| 127225 | .unused, |
| 127226 | }, |
| 127227 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 127228 | .each = .{ .once = &.{ |
| 127229 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127230 | .{ ._, .vp_d, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 127231 | } }, |
| 127232 | }, .{ |
| 127233 | .required_features = .{ .sse4_1, null, null, null }, |
| 127234 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 127235 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 127236 | .patterns = &.{ |
| 127237 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127238 | }, |
| 127239 | .extra_temps = .{ |
| 127240 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127241 | .unused, |
| 127242 | .unused, |
| 127243 | .unused, |
| 127244 | .unused, |
| 127245 | .unused, |
| 127246 | .unused, |
| 127247 | .unused, |
| 127248 | .unused, |
| 127249 | .unused, |
| 127250 | .unused, |
| 127251 | }, |
| 127252 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127253 | .each = .{ .once = &.{ |
| 127254 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127255 | .{ ._, .p_d, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 127256 | } }, |
| 127257 | }, .{ |
| 127258 | .required_features = .{ .sse2, null, null, null }, |
| 127259 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 127260 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 127261 | .patterns = &.{ |
| 127262 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127263 | }, |
| 127264 | .extra_temps = .{ |
| 127265 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127266 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127267 | .unused, |
| 127268 | .unused, |
| 127269 | .unused, |
| 127270 | .unused, |
| 127271 | .unused, |
| 127272 | .unused, |
| 127273 | .unused, |
| 127274 | .unused, |
| 127275 | .unused, |
| 127276 | }, |
| 127277 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127278 | .each = .{ .once = &.{ |
| 127279 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127280 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 127281 | .{ ._, .p_d, .cmpgt, .tmp1x, .src0x, ._, ._ }, |
| 127282 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 127283 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 127284 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 127285 | } }, |
| 127286 | }, .{ |
| 127287 | .required_features = .{ .avx, null, null, null }, |
| 127288 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127289 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 127290 | .patterns = &.{ |
| 127291 | .{ .src = .{ .to_sse, .none, .none } }, |
| 127292 | }, |
| 127293 | .extra_temps = .{ |
| 127294 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 127295 | .unused, |
| 127296 | .unused, |
| 127297 | .unused, |
| 127298 | .unused, |
| 127299 | .unused, |
| 127300 | .unused, |
| 127301 | .unused, |
| 127302 | .unused, |
| 127303 | .unused, |
| 127304 | .unused, |
| 127305 | }, |
| 127306 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 127307 | .each = .{ .once = &.{ |
| 127308 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127309 | .{ ._, .vp_d, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 127310 | } }, |
| 127311 | }, .{ |
| 127312 | .required_features = .{ .sse4_1, null, null, null }, |
| 127313 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127314 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 127315 | .patterns = &.{ |
| 127316 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127317 | }, |
| 127318 | .extra_temps = .{ |
| 127319 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 127320 | .unused, |
| 127321 | .unused, |
| 127322 | .unused, |
| 127323 | .unused, |
| 127324 | .unused, |
| 127325 | .unused, |
| 127326 | .unused, |
| 127327 | .unused, |
| 127328 | .unused, |
| 127329 | .unused, |
| 127330 | }, |
| 127331 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127332 | .each = .{ .once = &.{ |
| 127333 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127334 | .{ ._, .p_d, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 127335 | } }, |
| 127336 | }, .{ |
| 127337 | .required_features = .{ .sse3, null, null, null }, |
| 127338 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127339 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 127340 | .patterns = &.{ |
| 127341 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127342 | }, |
| 127343 | .extra_temps = .{ |
| 127344 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 127345 | .{ .type = .vector_2_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 127346 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127347 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127348 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127349 | .unused, |
| 127350 | .unused, |
| 127351 | .unused, |
| 127352 | .unused, |
| 127353 | .unused, |
| 127354 | .unused, |
| 127355 | }, |
| 127356 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127357 | .each = .{ .once = &.{ |
| 127358 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 127359 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 127360 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 127361 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 127362 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 127363 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 127364 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 127365 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 127366 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 127367 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 127368 | } }, |
| 127369 | }, .{ |
| 127370 | .required_features = .{ .sse2, null, null, null }, |
| 127371 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127372 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 127373 | .patterns = &.{ |
| 127374 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127375 | }, |
| 127376 | .extra_temps = .{ |
| 127377 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 127378 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 127379 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127380 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127381 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127382 | .unused, |
| 127383 | .unused, |
| 127384 | .unused, |
| 127385 | .unused, |
| 127386 | .unused, |
| 127387 | .unused, |
| 127388 | }, |
| 127389 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127390 | .each = .{ .once = &.{ |
| 127391 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 127392 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 127393 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 127394 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 127395 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 127396 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 127397 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 127398 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 127399 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 127400 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 127401 | } }, |
| 127402 | }, .{ |
| 127403 | .required_features = .{ .avx, null, null, null }, |
| 127404 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 127405 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127406 | .patterns = &.{ |
| 127407 | .{ .src = .{ .to_sse, .none, .none } }, |
| 127408 | }, |
| 127409 | .extra_temps = .{ |
| 127410 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127411 | .unused, |
| 127412 | .unused, |
| 127413 | .unused, |
| 127414 | .unused, |
| 127415 | .unused, |
| 127416 | .unused, |
| 127417 | .unused, |
| 127418 | .unused, |
| 127419 | .unused, |
| 127420 | .unused, |
| 127421 | }, |
| 127422 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 127423 | .each = .{ .once = &.{ |
| 127424 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127425 | .{ ._, .vp_d, .mins, .tmp0x, .src0x, .tmp0x, ._ }, |
| 127426 | .{ ._, .vp_d, .shuf, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 127427 | .{ ._, .vp_d, .mins, .dst0x, .tmp0x, .dst0x, ._ }, |
| 127428 | } }, |
| 127429 | }, .{ |
| 127430 | .required_features = .{ .sse4_1, null, null, null }, |
| 127431 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127432 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127433 | .patterns = &.{ |
| 127434 | .{ .src = .{ .to_sse, .none, .none } }, |
| 127435 | }, |
| 127436 | .extra_temps = .{ |
| 127437 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127438 | .unused, |
| 127439 | .unused, |
| 127440 | .unused, |
| 127441 | .unused, |
| 127442 | .unused, |
| 127443 | .unused, |
| 127444 | .unused, |
| 127445 | .unused, |
| 127446 | .unused, |
| 127447 | .unused, |
| 127448 | }, |
| 127449 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 127450 | .each = .{ .once = &.{ |
| 127451 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127452 | .{ ._, .p_d, .mins, .tmp0x, .src0x, ._, ._ }, |
| 127453 | .{ ._, .p_d, .shuf, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 127454 | .{ ._, .p_d, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 127455 | } }, |
| 127456 | }, .{ |
| 127457 | .required_features = .{ .sse2, null, null, null }, |
| 127458 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 127459 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127460 | .patterns = &.{ |
| 127461 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127462 | }, |
| 127463 | .extra_temps = .{ |
| 127464 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127465 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127466 | .unused, |
| 127467 | .unused, |
| 127468 | .unused, |
| 127469 | .unused, |
| 127470 | .unused, |
| 127471 | .unused, |
| 127472 | .unused, |
| 127473 | .unused, |
| 127474 | .unused, |
| 127475 | }, |
| 127476 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127477 | .each = .{ .once = &.{ |
| 127478 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127479 | .{ ._, ._dqa, .mov, .tmp1x, .src0x, ._, ._ }, |
| 127480 | .{ ._, .p_d, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 127481 | .{ ._, .p_, .@"and", .tmp0x, .tmp1x, ._, ._ }, |
| 127482 | .{ ._, .p_, .andn, .tmp1x, .src0x, ._, ._ }, |
| 127483 | .{ ._, .p_, .@"or", .tmp0x, .tmp1x, ._, ._ }, |
| 127484 | .{ ._, .p_w, .shufl, .dst0x, .dst0x, .ui(0b11_10), ._ }, |
| 127485 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 127486 | .{ ._, .p_d, .cmpgt, .tmp1x, .dst0x, ._, ._ }, |
| 127487 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 127488 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 127489 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 127490 | } }, |
| 127491 | }, .{ |
| 127492 | .required_features = .{ .avx, null, null, null }, |
| 127493 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127494 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127495 | .patterns = &.{ |
| 127496 | .{ .src = .{ .to_sse, .none, .none } }, |
| 127497 | }, |
| 127498 | .extra_temps = .{ |
| 127499 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 127500 | .unused, |
| 127501 | .unused, |
| 127502 | .unused, |
| 127503 | .unused, |
| 127504 | .unused, |
| 127505 | .unused, |
| 127506 | .unused, |
| 127507 | .unused, |
| 127508 | .unused, |
| 127509 | .unused, |
| 127510 | }, |
| 127511 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 127512 | .each = .{ .once = &.{ |
| 127513 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127514 | .{ ._, .vp_d, .minu, .tmp0x, .src0x, .tmp0x, ._ }, |
| 127515 | .{ ._, .vp_d, .shuf, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 127516 | .{ ._, .vp_d, .minu, .dst0x, .tmp0x, .dst0x, ._ }, |
| 127517 | } }, |
| 127518 | }, .{ |
| 127519 | .required_features = .{ .sse4_1, null, null, null }, |
| 127520 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127521 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127522 | .patterns = &.{ |
| 127523 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127524 | }, |
| 127525 | .extra_temps = .{ |
| 127526 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 127527 | .unused, |
| 127528 | .unused, |
| 127529 | .unused, |
| 127530 | .unused, |
| 127531 | .unused, |
| 127532 | .unused, |
| 127533 | .unused, |
| 127534 | .unused, |
| 127535 | .unused, |
| 127536 | .unused, |
| 127537 | }, |
| 127538 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127539 | .each = .{ .once = &.{ |
| 127540 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127541 | .{ ._, .p_d, .minu, .tmp0x, .src0x, ._, ._ }, |
| 127542 | .{ ._, .p_d, .shuf, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 127543 | .{ ._, .p_d, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 127544 | } }, |
| 127545 | }, .{ |
| 127546 | .required_features = .{ .sse3, null, null, null }, |
| 127547 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127548 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127549 | .patterns = &.{ |
| 127550 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127551 | }, |
| 127552 | .extra_temps = .{ |
| 127553 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 127554 | .{ .type = .vector_2_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 127555 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127556 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127557 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127558 | .unused, |
| 127559 | .unused, |
| 127560 | .unused, |
| 127561 | .unused, |
| 127562 | .unused, |
| 127563 | .unused, |
| 127564 | }, |
| 127565 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127566 | .each = .{ .once = &.{ |
| 127567 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 127568 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 127569 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 127570 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 127571 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 127572 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 127573 | .{ ._, .p_, .@"and", .tmp3x, .tmp4x, ._, ._ }, |
| 127574 | .{ ._, .p_, .andn, .tmp4x, .dst0x, ._, ._ }, |
| 127575 | .{ ._, .p_, .@"or", .tmp3x, .tmp4x, ._, ._ }, |
| 127576 | .{ ._, .p_w, .shufl, .dst0x, .dst0x, .ui(0b11_10), ._ }, |
| 127577 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 127578 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 127579 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 127580 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 127581 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 127582 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 127583 | } }, |
| 127584 | }, .{ |
| 127585 | .required_features = .{ .sse2, null, null, null }, |
| 127586 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127587 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127588 | .patterns = &.{ |
| 127589 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127590 | }, |
| 127591 | .extra_temps = .{ |
| 127592 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 127593 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 127594 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127595 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127596 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127597 | .unused, |
| 127598 | .unused, |
| 127599 | .unused, |
| 127600 | .unused, |
| 127601 | .unused, |
| 127602 | .unused, |
| 127603 | }, |
| 127604 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127605 | .each = .{ .once = &.{ |
| 127606 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 127607 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 127608 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 127609 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 127610 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 127611 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 127612 | .{ ._, .p_, .@"and", .tmp3x, .tmp4x, ._, ._ }, |
| 127613 | .{ ._, .p_, .andn, .tmp4x, .dst0x, ._, ._ }, |
| 127614 | .{ ._, .p_, .@"or", .tmp3x, .tmp4x, ._, ._ }, |
| 127615 | .{ ._, .p_w, .shufl, .dst0x, .dst0x, .ui(0b11_10), ._ }, |
| 127616 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 127617 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 127618 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 127619 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 127620 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 127621 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 127622 | } }, |
| 127623 | }, .{ |
| 127624 | .required_features = .{ .avx, null, null, null }, |
| 127625 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 127626 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127627 | .patterns = &.{ |
| 127628 | .{ .src = .{ .to_sse, .none, .none } }, |
| 127629 | }, |
| 127630 | .extra_temps = .{ |
| 127631 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 127632 | .unused, |
| 127633 | .unused, |
| 127634 | .unused, |
| 127635 | .unused, |
| 127636 | .unused, |
| 127637 | .unused, |
| 127638 | .unused, |
| 127639 | .unused, |
| 127640 | .unused, |
| 127641 | .unused, |
| 127642 | }, |
| 127643 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 127644 | .each = .{ .once = &.{ |
| 127645 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127646 | .{ ._, .vp_d, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 127647 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 127648 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 127649 | } }, |
| 127650 | }, .{ |
| 127651 | .required_features = .{ .sse4_1, null, null, null }, |
| 127652 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 127653 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127654 | .patterns = &.{ |
| 127655 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127656 | }, |
| 127657 | .extra_temps = .{ |
| 127658 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127659 | .unused, |
| 127660 | .unused, |
| 127661 | .unused, |
| 127662 | .unused, |
| 127663 | .unused, |
| 127664 | .unused, |
| 127665 | .unused, |
| 127666 | .unused, |
| 127667 | .unused, |
| 127668 | .unused, |
| 127669 | }, |
| 127670 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127671 | .each = .{ .once = &.{ |
| 127672 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127673 | .{ ._, .p_d, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 127674 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 127675 | .{ ._, .p_d, .mins, .dst0x, .tmp0x, ._, ._ }, |
| 127676 | } }, |
| 127677 | }, .{ |
| 127678 | .required_features = .{ .sse2, null, null, null }, |
| 127679 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 127680 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127681 | .patterns = &.{ |
| 127682 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127683 | }, |
| 127684 | .extra_temps = .{ |
| 127685 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127686 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127687 | .unused, |
| 127688 | .unused, |
| 127689 | .unused, |
| 127690 | .unused, |
| 127691 | .unused, |
| 127692 | .unused, |
| 127693 | .unused, |
| 127694 | .unused, |
| 127695 | .unused, |
| 127696 | }, |
| 127697 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127698 | .each = .{ .once = &.{ |
| 127699 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127700 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 127701 | .{ ._, .p_d, .cmpgt, .tmp1x, .src0x, ._, ._ }, |
| 127702 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 127703 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 127704 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 127705 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 127706 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 127707 | .{ ._, .p_d, .cmpgt, .tmp1x, .dst0x, ._, ._ }, |
| 127708 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 127709 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 127710 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 127711 | } }, |
| 127712 | }, .{ |
| 127713 | .required_features = .{ .avx, null, null, null }, |
| 127714 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127715 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127716 | .patterns = &.{ |
| 127717 | .{ .src = .{ .to_sse, .none, .none } }, |
| 127718 | }, |
| 127719 | .extra_temps = .{ |
| 127720 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 127721 | .unused, |
| 127722 | .unused, |
| 127723 | .unused, |
| 127724 | .unused, |
| 127725 | .unused, |
| 127726 | .unused, |
| 127727 | .unused, |
| 127728 | .unused, |
| 127729 | .unused, |
| 127730 | .unused, |
| 127731 | }, |
| 127732 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 127733 | .each = .{ .once = &.{ |
| 127734 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127735 | .{ ._, .vp_d, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 127736 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 127737 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 127738 | } }, |
| 127739 | }, .{ |
| 127740 | .required_features = .{ .sse4_1, null, null, null }, |
| 127741 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127742 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127743 | .patterns = &.{ |
| 127744 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127745 | }, |
| 127746 | .extra_temps = .{ |
| 127747 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 127748 | .unused, |
| 127749 | .unused, |
| 127750 | .unused, |
| 127751 | .unused, |
| 127752 | .unused, |
| 127753 | .unused, |
| 127754 | .unused, |
| 127755 | .unused, |
| 127756 | .unused, |
| 127757 | .unused, |
| 127758 | }, |
| 127759 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127760 | .each = .{ .once = &.{ |
| 127761 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 127762 | .{ ._, .p_d, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 127763 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 127764 | .{ ._, .p_d, .minu, .dst0x, .tmp0x, ._, ._ }, |
| 127765 | } }, |
| 127766 | }, .{ |
| 127767 | .required_features = .{ .sse3, null, null, null }, |
| 127768 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127769 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127770 | .patterns = &.{ |
| 127771 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127772 | }, |
| 127773 | .extra_temps = .{ |
| 127774 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 127775 | .{ .type = .vector_2_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 127776 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127777 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127778 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127779 | .unused, |
| 127780 | .unused, |
| 127781 | .unused, |
| 127782 | .unused, |
| 127783 | .unused, |
| 127784 | .unused, |
| 127785 | }, |
| 127786 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127787 | .each = .{ .once = &.{ |
| 127788 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 127789 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 127790 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 127791 | .{ ._, .p_d, .shuf, .tmp3x, .src0x, .ui(0b11_10), ._ }, |
| 127792 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 127793 | .{ ._, .p_d, .cmpgt, .tmp4x, .src0x, ._, ._ }, |
| 127794 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 127795 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 127796 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 127797 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 127798 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 127799 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 127800 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 127801 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 127802 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 127803 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 127804 | } }, |
| 127805 | }, .{ |
| 127806 | .required_features = .{ .sse2, null, null, null }, |
| 127807 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127808 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 127809 | .patterns = &.{ |
| 127810 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 127811 | }, |
| 127812 | .extra_temps = .{ |
| 127813 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 127814 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 127815 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127816 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127817 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127818 | .unused, |
| 127819 | .unused, |
| 127820 | .unused, |
| 127821 | .unused, |
| 127822 | .unused, |
| 127823 | .unused, |
| 127824 | }, |
| 127825 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 127826 | .each = .{ .once = &.{ |
| 127827 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 127828 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 127829 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 127830 | .{ ._, .p_d, .shuf, .tmp3x, .src0x, .ui(0b11_10), ._ }, |
| 127831 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 127832 | .{ ._, .p_d, .cmpgt, .tmp4x, .src0x, ._, ._ }, |
| 127833 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 127834 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 127835 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 127836 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 127837 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 127838 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 127839 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 127840 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 127841 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 127842 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 127843 | } }, |
| 127844 | }, .{ |
| 127845 | .required_features = .{ .avx2, null, null, null }, |
| 127846 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 127847 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 127848 | .patterns = &.{ |
| 127849 | .{ .src = .{ .to_sse, .none, .none } }, |
| 127850 | }, |
| 127851 | .extra_temps = .{ |
| 127852 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 127853 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 127854 | .{ .type = .vector_8_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 127855 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127856 | .unused, |
| 127857 | .unused, |
| 127858 | .unused, |
| 127859 | .unused, |
| 127860 | .unused, |
| 127861 | .unused, |
| 127862 | .unused, |
| 127863 | }, |
| 127864 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 127865 | .each = .{ .once = &.{ |
| 127866 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 127867 | .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 127868 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 127869 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 127870 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 127871 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 127872 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 127873 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 127874 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 127875 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 127876 | } }, |
| 127877 | }, .{ |
| 127878 | .required_features = .{ .avx, null, null, null }, |
| 127879 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 127880 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 127881 | .patterns = &.{ |
| 127882 | .{ .src = .{ .to_sse, .none, .none } }, |
| 127883 | }, |
| 127884 | .extra_temps = .{ |
| 127885 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 127886 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 127887 | .{ .type = .vector_8_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 127888 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127889 | .unused, |
| 127890 | .unused, |
| 127891 | .unused, |
| 127892 | .unused, |
| 127893 | .unused, |
| 127894 | .unused, |
| 127895 | .unused, |
| 127896 | }, |
| 127897 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 127898 | .each = .{ .once = &.{ |
| 127899 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 127900 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 127901 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 127902 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 127903 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 127904 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 127905 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 127906 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 127907 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 127908 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 127909 | } }, |
| 127910 | }, .{ |
| 127911 | .required_features = .{ .avx2, null, null, null }, |
| 127912 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127913 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 127914 | .patterns = &.{ |
| 127915 | .{ .src = .{ .to_sse, .none, .none } }, |
| 127916 | }, |
| 127917 | .extra_temps = .{ |
| 127918 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 127919 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 127920 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 127921 | .unused, |
| 127922 | .unused, |
| 127923 | .unused, |
| 127924 | .unused, |
| 127925 | .unused, |
| 127926 | .unused, |
| 127927 | .unused, |
| 127928 | .unused, |
| 127929 | }, |
| 127930 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 127931 | .each = .{ .once = &.{ |
| 127932 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 127933 | .{ ._, .vp_, .@"or", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 127934 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 127935 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 127936 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 127937 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 127938 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 127939 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 127940 | } }, |
| 127941 | }, .{ |
| 127942 | .required_features = .{ .avx, null, null, null }, |
| 127943 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 127944 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 127945 | .patterns = &.{ |
| 127946 | .{ .src = .{ .to_sse, .none, .none } }, |
| 127947 | }, |
| 127948 | .extra_temps = .{ |
| 127949 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 127950 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 127951 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 127952 | .unused, |
| 127953 | .unused, |
| 127954 | .unused, |
| 127955 | .unused, |
| 127956 | .unused, |
| 127957 | .unused, |
| 127958 | .unused, |
| 127959 | .unused, |
| 127960 | }, |
| 127961 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 127962 | .each = .{ .once = &.{ |
| 127963 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 127964 | .{ ._, .v_ps, .@"or", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 127965 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 127966 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 127967 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 127968 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 127969 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 127970 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 127971 | } }, |
| 127972 | }, .{ |
| 127973 | .required_features = .{ .avx2, null, null, null }, |
| 127974 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 127975 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 127976 | .patterns = &.{ |
| 127977 | .{ .src = .{ .to_sse, .none, .none } }, |
| 127978 | }, |
| 127979 | .extra_temps = .{ |
| 127980 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 127981 | .unused, |
| 127982 | .unused, |
| 127983 | .unused, |
| 127984 | .unused, |
| 127985 | .unused, |
| 127986 | .unused, |
| 127987 | .unused, |
| 127988 | .unused, |
| 127989 | .unused, |
| 127990 | .unused, |
| 127991 | }, |
| 127992 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 127993 | .each = .{ .once = &.{ |
| 127994 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 127995 | .{ ._, .vp_d, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 127996 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 127997 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 127998 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 127999 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128000 | } }, |
| 128001 | }, .{ |
| 128002 | .required_features = .{ .avx, null, null, null }, |
| 128003 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 128004 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 128005 | .patterns = &.{ |
| 128006 | .{ .src = .{ .to_sse, .none, .none } }, |
| 128007 | }, |
| 128008 | .extra_temps = .{ |
| 128009 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128010 | .unused, |
| 128011 | .unused, |
| 128012 | .unused, |
| 128013 | .unused, |
| 128014 | .unused, |
| 128015 | .unused, |
| 128016 | .unused, |
| 128017 | .unused, |
| 128018 | .unused, |
| 128019 | .unused, |
| 128020 | }, |
| 128021 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 128022 | .each = .{ .once = &.{ |
| 128023 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 128024 | .{ ._, .vp_d, .mins, .dst0x, .src0x, .tmp0x, ._ }, |
| 128025 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 128026 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128027 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 128028 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128029 | } }, |
| 128030 | }, .{ |
| 128031 | .required_features = .{ .avx2, null, null, null }, |
| 128032 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128033 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 128034 | .patterns = &.{ |
| 128035 | .{ .src = .{ .to_sse, .none, .none } }, |
| 128036 | }, |
| 128037 | .extra_temps = .{ |
| 128038 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 128039 | .unused, |
| 128040 | .unused, |
| 128041 | .unused, |
| 128042 | .unused, |
| 128043 | .unused, |
| 128044 | .unused, |
| 128045 | .unused, |
| 128046 | .unused, |
| 128047 | .unused, |
| 128048 | .unused, |
| 128049 | }, |
| 128050 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 128051 | .each = .{ .once = &.{ |
| 128052 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 128053 | .{ ._, .vp_d, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 128054 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 128055 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128056 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 128057 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128058 | } }, |
| 128059 | }, .{ |
| 128060 | .required_features = .{ .avx, null, null, null }, |
| 128061 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128062 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 128063 | .patterns = &.{ |
| 128064 | .{ .src = .{ .to_sse, .none, .none } }, |
| 128065 | }, |
| 128066 | .extra_temps = .{ |
| 128067 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 128068 | .unused, |
| 128069 | .unused, |
| 128070 | .unused, |
| 128071 | .unused, |
| 128072 | .unused, |
| 128073 | .unused, |
| 128074 | .unused, |
| 128075 | .unused, |
| 128076 | .unused, |
| 128077 | .unused, |
| 128078 | }, |
| 128079 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 128080 | .each = .{ .once = &.{ |
| 128081 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 128082 | .{ ._, .vp_d, .minu, .dst0x, .src0x, .tmp0x, ._ }, |
| 128083 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 128084 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128085 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 128086 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128087 | } }, |
| 128088 | }, .{ |
| 128089 | .required_features = .{ .avx512f, null, null, null }, |
| 128090 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 128091 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 128092 | .patterns = &.{ |
| 128093 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128094 | }, |
| 128095 | .extra_temps = .{ |
| 128096 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 128097 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 128098 | .{ .type = .vector_16_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 128099 | .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } }, |
| 128100 | .unused, |
| 128101 | .unused, |
| 128102 | .unused, |
| 128103 | .unused, |
| 128104 | .unused, |
| 128105 | .unused, |
| 128106 | .unused, |
| 128107 | }, |
| 128108 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128109 | .each = .{ .once = &.{ |
| 128110 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128111 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 128112 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 128113 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 128114 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 128115 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 128116 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 128117 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 128118 | .{ ._, .vp_d, .mins, .dst0y, .dst0y, .tmp3y, ._ }, |
| 128119 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 128120 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 128121 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128122 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 128123 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128124 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 128125 | } }, |
| 128126 | }, .{ |
| 128127 | .required_features = .{ .avx512f, null, null, null }, |
| 128128 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128129 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 128130 | .patterns = &.{ |
| 128131 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128132 | }, |
| 128133 | .extra_temps = .{ |
| 128134 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 128135 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 128136 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 128137 | .unused, |
| 128138 | .unused, |
| 128139 | .unused, |
| 128140 | .unused, |
| 128141 | .unused, |
| 128142 | .unused, |
| 128143 | .unused, |
| 128144 | .unused, |
| 128145 | }, |
| 128146 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128147 | .each = .{ .once = &.{ |
| 128148 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128149 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 128150 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 128151 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 128152 | .{ ._, .vp_, .@"or", .tmp2y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 128153 | .{ ._, .vp_d, .minu, .dst0y, .dst0y, .tmp2y, ._ }, |
| 128154 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 128155 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 128156 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 128157 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 128158 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 128159 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 128160 | } }, |
| 128161 | }, .{ |
| 128162 | .required_features = .{ .avx512f, null, null, null }, |
| 128163 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 128164 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 128165 | .patterns = &.{ |
| 128166 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128167 | }, |
| 128168 | .extra_temps = .{ |
| 128169 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128170 | .unused, |
| 128171 | .unused, |
| 128172 | .unused, |
| 128173 | .unused, |
| 128174 | .unused, |
| 128175 | .unused, |
| 128176 | .unused, |
| 128177 | .unused, |
| 128178 | .unused, |
| 128179 | .unused, |
| 128180 | }, |
| 128181 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128182 | .each = .{ .once = &.{ |
| 128183 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 128184 | .{ ._, .vp_d, .mins, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 128185 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 128186 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128187 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 128188 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128189 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 128190 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128191 | } }, |
| 128192 | }, .{ |
| 128193 | .required_features = .{ .avx512f, null, null, null }, |
| 128194 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128195 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 128196 | .patterns = &.{ |
| 128197 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128198 | }, |
| 128199 | .extra_temps = .{ |
| 128200 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 128201 | .unused, |
| 128202 | .unused, |
| 128203 | .unused, |
| 128204 | .unused, |
| 128205 | .unused, |
| 128206 | .unused, |
| 128207 | .unused, |
| 128208 | .unused, |
| 128209 | .unused, |
| 128210 | .unused, |
| 128211 | }, |
| 128212 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128213 | .each = .{ .once = &.{ |
| 128214 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 128215 | .{ ._, .vp_d, .minu, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 128216 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 128217 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128218 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 128219 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128220 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 128221 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 128222 | } }, |
| 128223 | }, .{ |
| 128224 | .required_features = .{ .avx2, null, null, null }, |
| 128225 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 128226 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 128227 | .patterns = &.{ |
| 128228 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128229 | }, |
| 128230 | .extra_temps = .{ |
| 128231 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128232 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128233 | .unused, |
| 128234 | .unused, |
| 128235 | .unused, |
| 128236 | .unused, |
| 128237 | .unused, |
| 128238 | .unused, |
| 128239 | .unused, |
| 128240 | .unused, |
| 128241 | .unused, |
| 128242 | }, |
| 128243 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128244 | .clobbers = .{ .eflags = true }, |
| 128245 | .each = .{ .once = &.{ |
| 128246 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 128247 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 128248 | .{ .@"0:", .vp_d, .mins, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 128249 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 128250 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128251 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 128252 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 128253 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128254 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 128255 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128256 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 128257 | } }, |
| 128258 | }, .{ |
| 128259 | .required_features = .{ .avx, null, null, null }, |
| 128260 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 128261 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 128262 | .patterns = &.{ |
| 128263 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128264 | }, |
| 128265 | .extra_temps = .{ |
| 128266 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128267 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128268 | .unused, |
| 128269 | .unused, |
| 128270 | .unused, |
| 128271 | .unused, |
| 128272 | .unused, |
| 128273 | .unused, |
| 128274 | .unused, |
| 128275 | .unused, |
| 128276 | .unused, |
| 128277 | }, |
| 128278 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128279 | .clobbers = .{ .eflags = true }, |
| 128280 | .each = .{ .once = &.{ |
| 128281 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 128282 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 128283 | .{ .@"0:", .vp_d, .mins, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 128284 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128285 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128286 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128287 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 128288 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128289 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp1x, ._ }, |
| 128290 | } }, |
| 128291 | }, .{ |
| 128292 | .required_features = .{ .sse4_1, null, null, null }, |
| 128293 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 128294 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 128295 | .patterns = &.{ |
| 128296 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128297 | }, |
| 128298 | .extra_temps = .{ |
| 128299 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128300 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128301 | .unused, |
| 128302 | .unused, |
| 128303 | .unused, |
| 128304 | .unused, |
| 128305 | .unused, |
| 128306 | .unused, |
| 128307 | .unused, |
| 128308 | .unused, |
| 128309 | .unused, |
| 128310 | }, |
| 128311 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128312 | .clobbers = .{ .eflags = true }, |
| 128313 | .each = .{ .once = &.{ |
| 128314 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 128315 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 128316 | .{ .@"0:", .p_d, .mins, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 128317 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128318 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128319 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128320 | .{ ._, .p_d, .mins, .dst0x, .tmp1x, ._, ._ }, |
| 128321 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128322 | .{ ._, .p_d, .mins, .dst0x, .tmp1x, ._, ._ }, |
| 128323 | } }, |
| 128324 | }, .{ |
| 128325 | .required_features = .{ .sse2, null, null, null }, |
| 128326 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 128327 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 128328 | .patterns = &.{ |
| 128329 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128330 | }, |
| 128331 | .extra_temps = .{ |
| 128332 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128333 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128334 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128335 | .unused, |
| 128336 | .unused, |
| 128337 | .unused, |
| 128338 | .unused, |
| 128339 | .unused, |
| 128340 | .unused, |
| 128341 | .unused, |
| 128342 | .unused, |
| 128343 | }, |
| 128344 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128345 | .clobbers = .{ .eflags = true }, |
| 128346 | .each = .{ .once = &.{ |
| 128347 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 128348 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 128349 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 128350 | .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ }, |
| 128351 | .{ ._, .p_d, .cmpgt, .tmp2x, .dst0x, ._, ._ }, |
| 128352 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 128353 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 128354 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 128355 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128356 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128357 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128358 | .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ }, |
| 128359 | .{ ._, .p_d, .cmpgt, .tmp2x, .dst0x, ._, ._ }, |
| 128360 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 128361 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 128362 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 128363 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128364 | .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ }, |
| 128365 | .{ ._, .p_d, .cmpgt, .tmp2x, .dst0x, ._, ._ }, |
| 128366 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 128367 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 128368 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 128369 | } }, |
| 128370 | }, .{ |
| 128371 | .required_features = .{ .avx2, null, null, null }, |
| 128372 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128373 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 128374 | .patterns = &.{ |
| 128375 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128376 | }, |
| 128377 | .extra_temps = .{ |
| 128378 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128379 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 128380 | .unused, |
| 128381 | .unused, |
| 128382 | .unused, |
| 128383 | .unused, |
| 128384 | .unused, |
| 128385 | .unused, |
| 128386 | .unused, |
| 128387 | .unused, |
| 128388 | .unused, |
| 128389 | }, |
| 128390 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128391 | .clobbers = .{ .eflags = true }, |
| 128392 | .each = .{ .once = &.{ |
| 128393 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 128394 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 128395 | .{ .@"0:", .vp_d, .minu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 128396 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 128397 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128398 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 128399 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 128400 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128401 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 128402 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128403 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 128404 | } }, |
| 128405 | }, .{ |
| 128406 | .required_features = .{ .avx, null, null, null }, |
| 128407 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128408 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 128409 | .patterns = &.{ |
| 128410 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128411 | }, |
| 128412 | .extra_temps = .{ |
| 128413 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128414 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 128415 | .unused, |
| 128416 | .unused, |
| 128417 | .unused, |
| 128418 | .unused, |
| 128419 | .unused, |
| 128420 | .unused, |
| 128421 | .unused, |
| 128422 | .unused, |
| 128423 | .unused, |
| 128424 | }, |
| 128425 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128426 | .clobbers = .{ .eflags = true }, |
| 128427 | .each = .{ .once = &.{ |
| 128428 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 128429 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 128430 | .{ .@"0:", .vp_d, .minu, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 128431 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128432 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128433 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128434 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 128435 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128436 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 128437 | } }, |
| 128438 | }, .{ |
| 128439 | .required_features = .{ .sse4_1, null, null, null }, |
| 128440 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128441 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 128442 | .patterns = &.{ |
| 128443 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128444 | }, |
| 128445 | .extra_temps = .{ |
| 128446 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128447 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 128448 | .unused, |
| 128449 | .unused, |
| 128450 | .unused, |
| 128451 | .unused, |
| 128452 | .unused, |
| 128453 | .unused, |
| 128454 | .unused, |
| 128455 | .unused, |
| 128456 | .unused, |
| 128457 | }, |
| 128458 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128459 | .clobbers = .{ .eflags = true }, |
| 128460 | .each = .{ .once = &.{ |
| 128461 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 128462 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 128463 | .{ .@"0:", .p_d, .minu, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 128464 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128465 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128466 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128467 | .{ ._, .p_d, .minu, .dst0x, .tmp1x, ._, ._ }, |
| 128468 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 128469 | .{ ._, .p_d, .minu, .dst0x, .tmp1x, ._, ._ }, |
| 128470 | } }, |
| 128471 | }, .{ |
| 128472 | .required_features = .{ .sse3, null, null, null }, |
| 128473 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128474 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 128475 | .patterns = &.{ |
| 128476 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128477 | }, |
| 128478 | .extra_temps = .{ |
| 128479 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128480 | .{ .type = .vector_2_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 128481 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128482 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128483 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128484 | .unused, |
| 128485 | .unused, |
| 128486 | .unused, |
| 128487 | .unused, |
| 128488 | .unused, |
| 128489 | .unused, |
| 128490 | }, |
| 128491 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128492 | .clobbers = .{ .eflags = true }, |
| 128493 | .each = .{ .once = &.{ |
| 128494 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128495 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 128496 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 128497 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 128498 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 128499 | .{ .@"0:", ._dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 128500 | .{ ._, .p_, .xor, .tmp3x, .tmp2x, ._, ._ }, |
| 128501 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 128502 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 128503 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 128504 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 128505 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 128506 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128507 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128508 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128509 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 128510 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 128511 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 128512 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 128513 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 128514 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128515 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 128516 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 128517 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 128518 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 128519 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 128520 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 128521 | } }, |
| 128522 | }, .{ |
| 128523 | .required_features = .{ .sse2, null, null, null }, |
| 128524 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128525 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 128526 | .patterns = &.{ |
| 128527 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128528 | }, |
| 128529 | .extra_temps = .{ |
| 128530 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128531 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 128532 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128533 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128534 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128535 | .unused, |
| 128536 | .unused, |
| 128537 | .unused, |
| 128538 | .unused, |
| 128539 | .unused, |
| 128540 | .unused, |
| 128541 | }, |
| 128542 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128543 | .clobbers = .{ .eflags = true }, |
| 128544 | .each = .{ .once = &.{ |
| 128545 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128546 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 128547 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 128548 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 128549 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 128550 | .{ .@"0:", ._dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 128551 | .{ ._, .p_, .xor, .tmp3x, .tmp2x, ._, ._ }, |
| 128552 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 128553 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 128554 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 128555 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 128556 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 128557 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128558 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128559 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128560 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 128561 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 128562 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 128563 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 128564 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 128565 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128566 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 128567 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 128568 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 128569 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 128570 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 128571 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 128572 | } }, |
| 128573 | }, .{ |
| 128574 | .required_features = .{ .avx512f, null, null, null }, |
| 128575 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 128576 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 128577 | .patterns = &.{ |
| 128578 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128579 | }, |
| 128580 | .extra_temps = .{ |
| 128581 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128582 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 128583 | .{ .type = .vector_16_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 128584 | .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } }, |
| 128585 | .unused, |
| 128586 | .unused, |
| 128587 | .unused, |
| 128588 | .unused, |
| 128589 | .unused, |
| 128590 | .unused, |
| 128591 | .unused, |
| 128592 | }, |
| 128593 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128594 | .clobbers = .{ .eflags = true }, |
| 128595 | .each = .{ .once = &.{ |
| 128596 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128597 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 128598 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 128599 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 128600 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 128601 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 128602 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 128603 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 128604 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 128605 | .{ .@"0:", .vp_d, .mins, .tmp3y, .tmp3y, .memid(.src0y, .tmp0, 32), ._ }, |
| 128606 | .{ ._, .vp_d, .mins, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 128607 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 128608 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128609 | .{ ._, .vp_d, .mins, .dst0y, .dst0y, .tmp3y, ._ }, |
| 128610 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 128611 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 128612 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128613 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 128614 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128615 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 128616 | } }, |
| 128617 | }, .{ |
| 128618 | .required_features = .{ .avx2, null, null, null }, |
| 128619 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 128620 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 128621 | .patterns = &.{ |
| 128622 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128623 | }, |
| 128624 | .extra_temps = .{ |
| 128625 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128626 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 128627 | .{ .type = .vector_16_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 128628 | .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } }, |
| 128629 | .unused, |
| 128630 | .unused, |
| 128631 | .unused, |
| 128632 | .unused, |
| 128633 | .unused, |
| 128634 | .unused, |
| 128635 | .unused, |
| 128636 | }, |
| 128637 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128638 | .clobbers = .{ .eflags = true }, |
| 128639 | .each = .{ .once = &.{ |
| 128640 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128641 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 128642 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 128643 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 128644 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 128645 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 128646 | .{ .@"0:", .vp_d, .mins, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 128647 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 128648 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128649 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 128650 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 128651 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128652 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 128653 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128654 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 128655 | } }, |
| 128656 | }, .{ |
| 128657 | .required_features = .{ .avx, null, null, null }, |
| 128658 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 128659 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 128660 | .patterns = &.{ |
| 128661 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128662 | }, |
| 128663 | .extra_temps = .{ |
| 128664 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128665 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 128666 | .{ .type = .vector_8_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 128667 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128668 | .unused, |
| 128669 | .unused, |
| 128670 | .unused, |
| 128671 | .unused, |
| 128672 | .unused, |
| 128673 | .unused, |
| 128674 | .unused, |
| 128675 | }, |
| 128676 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128677 | .clobbers = .{ .eflags = true }, |
| 128678 | .each = .{ .once = &.{ |
| 128679 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128680 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 128681 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 128682 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 128683 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 128684 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 128685 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 128686 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 128687 | .{ .@"0:", .vp_d, .mins, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 128688 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128689 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128690 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128691 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 128692 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128693 | .{ ._, .vp_d, .mins, .dst0x, .dst0x, .tmp3x, ._ }, |
| 128694 | } }, |
| 128695 | }, .{ |
| 128696 | .required_features = .{ .sse4_1, null, null, null }, |
| 128697 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 128698 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 128699 | .patterns = &.{ |
| 128700 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128701 | }, |
| 128702 | .extra_temps = .{ |
| 128703 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128704 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 128705 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 128706 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128707 | .unused, |
| 128708 | .unused, |
| 128709 | .unused, |
| 128710 | .unused, |
| 128711 | .unused, |
| 128712 | .unused, |
| 128713 | .unused, |
| 128714 | }, |
| 128715 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128716 | .clobbers = .{ .eflags = true }, |
| 128717 | .each = .{ .once = &.{ |
| 128718 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128719 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 128720 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 128721 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 128722 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 128723 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 128724 | .{ .@"0:", .p_d, .mins, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 128725 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128726 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128727 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128728 | .{ ._, .p_d, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 128729 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128730 | .{ ._, .p_d, .mins, .dst0x, .tmp3x, ._, ._ }, |
| 128731 | } }, |
| 128732 | }, .{ |
| 128733 | .required_features = .{ .sse2, null, null, null }, |
| 128734 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 128735 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 128736 | .patterns = &.{ |
| 128737 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128738 | }, |
| 128739 | .extra_temps = .{ |
| 128740 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128741 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 128742 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 128743 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128744 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128745 | .unused, |
| 128746 | .unused, |
| 128747 | .unused, |
| 128748 | .unused, |
| 128749 | .unused, |
| 128750 | .unused, |
| 128751 | }, |
| 128752 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128753 | .clobbers = .{ .eflags = true }, |
| 128754 | .each = .{ .once = &.{ |
| 128755 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128756 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 128757 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 128758 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 128759 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 128760 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 128761 | .{ .@"0:", ._dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 128762 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 128763 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 128764 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 128765 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 128766 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 128767 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128768 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128769 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128770 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 128771 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 128772 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 128773 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 128774 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 128775 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 128776 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 128777 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 128778 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 128779 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 128780 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 128781 | } }, |
| 128782 | }, .{ |
| 128783 | .required_features = .{ .avx512f, null, null, null }, |
| 128784 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128785 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 128786 | .patterns = &.{ |
| 128787 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128788 | }, |
| 128789 | .extra_temps = .{ |
| 128790 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128791 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 128792 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 128793 | .unused, |
| 128794 | .unused, |
| 128795 | .unused, |
| 128796 | .unused, |
| 128797 | .unused, |
| 128798 | .unused, |
| 128799 | .unused, |
| 128800 | .unused, |
| 128801 | }, |
| 128802 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128803 | .clobbers = .{ .eflags = true }, |
| 128804 | .each = .{ .once = &.{ |
| 128805 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128806 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 128807 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 128808 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 128809 | .{ ._, .vp_, .@"or", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 128810 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 128811 | .{ .@"0:", .vp_d, .minu, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 128812 | .{ ._, .vp_d, .minu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 128813 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 128814 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128815 | .{ ._, .vp_d, .minu, .dst0y, .dst0y, .tmp2y, ._ }, |
| 128816 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 128817 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 128818 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 128819 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 128820 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 128821 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 128822 | } }, |
| 128823 | }, .{ |
| 128824 | .required_features = .{ .avx2, null, null, null }, |
| 128825 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128826 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 128827 | .patterns = &.{ |
| 128828 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128829 | }, |
| 128830 | .extra_temps = .{ |
| 128831 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128832 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 128833 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 128834 | .unused, |
| 128835 | .unused, |
| 128836 | .unused, |
| 128837 | .unused, |
| 128838 | .unused, |
| 128839 | .unused, |
| 128840 | .unused, |
| 128841 | .unused, |
| 128842 | }, |
| 128843 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128844 | .clobbers = .{ .eflags = true }, |
| 128845 | .each = .{ .once = &.{ |
| 128846 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128847 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 128848 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 128849 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 128850 | .{ .@"0:", .vp_d, .minu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 128851 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 128852 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128853 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 128854 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 128855 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 128856 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 128857 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 128858 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 128859 | } }, |
| 128860 | }, .{ |
| 128861 | .required_features = .{ .avx, null, null, null }, |
| 128862 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128863 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 128864 | .patterns = &.{ |
| 128865 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128866 | }, |
| 128867 | .extra_temps = .{ |
| 128868 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128869 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 128870 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 128871 | .unused, |
| 128872 | .unused, |
| 128873 | .unused, |
| 128874 | .unused, |
| 128875 | .unused, |
| 128876 | .unused, |
| 128877 | .unused, |
| 128878 | .unused, |
| 128879 | }, |
| 128880 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128881 | .clobbers = .{ .eflags = true }, |
| 128882 | .each = .{ .once = &.{ |
| 128883 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128884 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 128885 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 128886 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 128887 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 128888 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 128889 | .{ .@"0:", .vp_d, .minu, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 128890 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128891 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128892 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 128893 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 128894 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 128895 | .{ ._, .vp_d, .minu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 128896 | } }, |
| 128897 | }, .{ |
| 128898 | .required_features = .{ .sse4_1, null, null, null }, |
| 128899 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128900 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 128901 | .patterns = &.{ |
| 128902 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128903 | }, |
| 128904 | .extra_temps = .{ |
| 128905 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128906 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 128907 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 128908 | .unused, |
| 128909 | .unused, |
| 128910 | .unused, |
| 128911 | .unused, |
| 128912 | .unused, |
| 128913 | .unused, |
| 128914 | .unused, |
| 128915 | .unused, |
| 128916 | }, |
| 128917 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128918 | .clobbers = .{ .eflags = true }, |
| 128919 | .each = .{ .once = &.{ |
| 128920 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128921 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 128922 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 128923 | .{ ._, .p_, .@"or", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 128924 | .{ .@"0:", .p_d, .minu, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 128925 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128926 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128927 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 128928 | .{ ._, .p_d, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 128929 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 128930 | .{ ._, .p_d, .minu, .dst0x, .tmp2x, ._, ._ }, |
| 128931 | } }, |
| 128932 | }, .{ |
| 128933 | .required_features = .{ .sse3, null, null, null }, |
| 128934 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128935 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 128936 | .patterns = &.{ |
| 128937 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128938 | }, |
| 128939 | .extra_temps = .{ |
| 128940 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128941 | .{ .type = .vector_2_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 128942 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128943 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 128944 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128945 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128946 | .unused, |
| 128947 | .unused, |
| 128948 | .unused, |
| 128949 | .unused, |
| 128950 | .unused, |
| 128951 | }, |
| 128952 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 128953 | .clobbers = .{ .eflags = true }, |
| 128954 | .each = .{ .once = &.{ |
| 128955 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 128956 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 128957 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 128958 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 128959 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 128960 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 128961 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 128962 | .{ .@"0:", ._dqa, .mov, .tmp4x, .memi(.src0x, .tmp0), ._, ._ }, |
| 128963 | .{ ._, .p_, .xor, .tmp4x, .tmp2x, ._, ._ }, |
| 128964 | .{ ._, ._dqa, .mov, .tmp5x, .tmp4x, ._, ._ }, |
| 128965 | .{ ._, .p_d, .cmpgt, .tmp5x, .dst0x, ._, ._ }, |
| 128966 | .{ ._, .p_, .@"and", .dst0x, .tmp5x, ._, ._ }, |
| 128967 | .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ }, |
| 128968 | .{ ._, .p_, .@"or", .dst0x, .tmp5x, ._, ._ }, |
| 128969 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 128970 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 128971 | .{ ._, .p_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 128972 | .{ ._, ._dqa, .mov, .tmp5x, .tmp4x, ._, ._ }, |
| 128973 | .{ ._, .p_d, .cmpgt, .tmp5x, .dst0x, ._, ._ }, |
| 128974 | .{ ._, .p_, .@"and", .dst0x, .tmp5x, ._, ._ }, |
| 128975 | .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ }, |
| 128976 | .{ ._, .p_, .@"or", .dst0x, .tmp5x, ._, ._ }, |
| 128977 | .{ ._, .p_w, .shufl, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 128978 | .{ ._, ._dqa, .mov, .tmp5x, .tmp4x, ._, ._ }, |
| 128979 | .{ ._, .p_d, .cmpgt, .tmp5x, .dst0x, ._, ._ }, |
| 128980 | .{ ._, .p_, .@"and", .dst0x, .tmp5x, ._, ._ }, |
| 128981 | .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ }, |
| 128982 | .{ ._, .p_, .@"or", .dst0x, .tmp5x, ._, ._ }, |
| 128983 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 128984 | } }, |
| 128985 | }, .{ |
| 128986 | .required_features = .{ .sse2, null, null, null }, |
| 128987 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 128988 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 128989 | .patterns = &.{ |
| 128990 | .{ .src = .{ .to_mem, .none, .none } }, |
| 128991 | }, |
| 128992 | .extra_temps = .{ |
| 128993 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 128994 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 128995 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128996 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 128997 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128998 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 128999 | .unused, |
| 129000 | .unused, |
| 129001 | .unused, |
| 129002 | .unused, |
| 129003 | .unused, |
| 129004 | }, |
| 129005 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 129006 | .clobbers = .{ .eflags = true }, |
| 129007 | .each = .{ .once = &.{ |
| 129008 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129009 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 129010 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 129011 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 129012 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 129013 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 129014 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 129015 | .{ .@"0:", ._dqa, .mov, .tmp4x, .memi(.src0x, .tmp0), ._, ._ }, |
| 129016 | .{ ._, .p_, .xor, .tmp4x, .tmp2x, ._, ._ }, |
| 129017 | .{ ._, ._dqa, .mov, .tmp5x, .tmp4x, ._, ._ }, |
| 129018 | .{ ._, .p_d, .cmpgt, .tmp5x, .dst0x, ._, ._ }, |
| 129019 | .{ ._, .p_, .@"and", .dst0x, .tmp5x, ._, ._ }, |
| 129020 | .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ }, |
| 129021 | .{ ._, .p_, .@"or", .dst0x, .tmp5x, ._, ._ }, |
| 129022 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 129023 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 129024 | .{ ._, .p_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 129025 | .{ ._, ._dqa, .mov, .tmp5x, .tmp4x, ._, ._ }, |
| 129026 | .{ ._, .p_d, .cmpgt, .tmp5x, .dst0x, ._, ._ }, |
| 129027 | .{ ._, .p_, .@"and", .dst0x, .tmp5x, ._, ._ }, |
| 129028 | .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ }, |
| 129029 | .{ ._, .p_, .@"or", .dst0x, .tmp5x, ._, ._ }, |
| 129030 | .{ ._, .p_w, .shufl, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 129031 | .{ ._, ._dqa, .mov, .tmp5x, .tmp4x, ._, ._ }, |
| 129032 | .{ ._, .p_d, .cmpgt, .tmp5x, .dst0x, ._, ._ }, |
| 129033 | .{ ._, .p_, .@"and", .dst0x, .tmp5x, ._, ._ }, |
| 129034 | .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ }, |
| 129035 | .{ ._, .p_, .@"or", .dst0x, .tmp5x, ._, ._ }, |
| 129036 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 129037 | } }, |
| 129038 | }, .{ |
| 129039 | .required_features = .{ .cmov, null, null, null }, |
| 129040 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 129041 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 129042 | .patterns = &.{ |
| 129043 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129044 | }, |
| 129045 | .extra_temps = .{ |
| 129046 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129047 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, |
| 129048 | .unused, |
| 129049 | .unused, |
| 129050 | .unused, |
| 129051 | .unused, |
| 129052 | .unused, |
| 129053 | .unused, |
| 129054 | .unused, |
| 129055 | .unused, |
| 129056 | .unused, |
| 129057 | }, |
| 129058 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 129059 | .clobbers = .{ .eflags = true }, |
| 129060 | .each = .{ .once = &.{ |
| 129061 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size), ._, ._ }, |
| 129062 | .{ ._, ._, .mov, .dst0d, .memad(.src0d, .add_unaligned_size, -4), ._, ._ }, |
| 129063 | .{ .@"0:", ._, .mov, .tmp1d, .memi(.src0d, .tmp0), ._, ._ }, |
| 129064 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 129065 | .{ ._, ._nl, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 129066 | .{ ._, ._, .sub, .tmp0d, .si(4), ._, ._ }, |
| 129067 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 129068 | } }, |
| 129069 | }, .{ |
| 129070 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 129071 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 129072 | .patterns = &.{ |
| 129073 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129074 | }, |
| 129075 | .extra_temps = .{ |
| 129076 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129077 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, |
| 129078 | .unused, |
| 129079 | .unused, |
| 129080 | .unused, |
| 129081 | .unused, |
| 129082 | .unused, |
| 129083 | .unused, |
| 129084 | .unused, |
| 129085 | .unused, |
| 129086 | .unused, |
| 129087 | }, |
| 129088 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 129089 | .clobbers = .{ .eflags = true }, |
| 129090 | .each = .{ .once = &.{ |
| 129091 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size), ._, ._ }, |
| 129092 | .{ ._, ._, .mov, .dst0d, .memad(.src0d, .add_unaligned_size, -4), ._, ._ }, |
| 129093 | .{ .@"0:", ._, .mov, .tmp1d, .memi(.src0d, .tmp0), ._, ._ }, |
| 129094 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 129095 | .{ ._, ._l, .j, .@"1f", ._, ._, ._ }, |
| 129096 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 129097 | .{ .@"1:", ._, .sub, .tmp0d, .si(4), ._, ._ }, |
| 129098 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 129099 | } }, |
| 129100 | }, .{ |
| 129101 | .required_features = .{ .cmov, null, null, null }, |
| 129102 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 129103 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 129104 | .patterns = &.{ |
| 129105 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129106 | }, |
| 129107 | .extra_temps = .{ |
| 129108 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129109 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129110 | .unused, |
| 129111 | .unused, |
| 129112 | .unused, |
| 129113 | .unused, |
| 129114 | .unused, |
| 129115 | .unused, |
| 129116 | .unused, |
| 129117 | .unused, |
| 129118 | .unused, |
| 129119 | }, |
| 129120 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 129121 | .clobbers = .{ .eflags = true }, |
| 129122 | .each = .{ .once = &.{ |
| 129123 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size), ._, ._ }, |
| 129124 | .{ ._, ._, .mov, .dst0d, .memad(.src0d, .add_unaligned_size, -4), ._, ._ }, |
| 129125 | .{ .@"0:", ._, .mov, .tmp1d, .memi(.src0d, .tmp0), ._, ._ }, |
| 129126 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 129127 | .{ ._, ._nb, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 129128 | .{ ._, ._, .sub, .tmp0d, .si(4), ._, ._ }, |
| 129129 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 129130 | } }, |
| 129131 | }, .{ |
| 129132 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 129133 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 129134 | .patterns = &.{ |
| 129135 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129136 | }, |
| 129137 | .extra_temps = .{ |
| 129138 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129139 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129140 | .unused, |
| 129141 | .unused, |
| 129142 | .unused, |
| 129143 | .unused, |
| 129144 | .unused, |
| 129145 | .unused, |
| 129146 | .unused, |
| 129147 | .unused, |
| 129148 | .unused, |
| 129149 | }, |
| 129150 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 129151 | .clobbers = .{ .eflags = true }, |
| 129152 | .each = .{ .once = &.{ |
| 129153 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size), ._, ._ }, |
| 129154 | .{ ._, ._, .mov, .dst0d, .memad(.src0d, .add_unaligned_size, -4), ._, ._ }, |
| 129155 | .{ .@"0:", ._, .mov, .tmp1d, .memi(.src0d, .tmp0), ._, ._ }, |
| 129156 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 129157 | .{ ._, ._b, .j, .@"1f", ._, ._, ._ }, |
| 129158 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 129159 | .{ .@"1:", ._, .sub, .tmp0d, .si(4), ._, ._ }, |
| 129160 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 129161 | } }, |
| 129162 | }, .{ |
| 129163 | .required_features = .{ .avx, null, null, null }, |
| 129164 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129165 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 129166 | .patterns = &.{ |
| 129167 | .{ .src = .{ .to_sse, .none, .none } }, |
| 129168 | }, |
| 129169 | .extra_temps = .{ |
| 129170 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129171 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129172 | .unused, |
| 129173 | .unused, |
| 129174 | .unused, |
| 129175 | .unused, |
| 129176 | .unused, |
| 129177 | .unused, |
| 129178 | .unused, |
| 129179 | .unused, |
| 129180 | .unused, |
| 129181 | }, |
| 129182 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 129183 | .each = .{ .once = &.{ |
| 129184 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 129185 | .{ ._, .vp_q, .cmpgt, .tmp1x, .src0x, .tmp0x, ._ }, |
| 129186 | .{ ._, .vp_b, .blendv, .dst0x, .src0x, .tmp0x, .tmp1x }, |
| 129187 | } }, |
| 129188 | }, .{ |
| 129189 | .required_features = .{ .sse4_2, null, null, null }, |
| 129190 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129191 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 129192 | .patterns = &.{ |
| 129193 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 129194 | }, |
| 129195 | .extra_temps = .{ |
| 129196 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129197 | .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } }, |
| 129198 | .unused, |
| 129199 | .unused, |
| 129200 | .unused, |
| 129201 | .unused, |
| 129202 | .unused, |
| 129203 | .unused, |
| 129204 | .unused, |
| 129205 | .unused, |
| 129206 | .unused, |
| 129207 | }, |
| 129208 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 129209 | .each = .{ .once = &.{ |
| 129210 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 129211 | .{ ._, ._dqa, .mov, .tmp1x, .src0x, ._, ._ }, |
| 129212 | .{ ._, .p_q, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 129213 | .{ ._, .p_b, .blendv, .dst0x, .tmp0x, .tmp1x, ._ }, |
| 129214 | } }, |
| 129215 | }, .{ |
| 129216 | .required_features = .{ .avx2, null, null, null }, |
| 129217 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 129218 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 129219 | .patterns = &.{ |
| 129220 | .{ .src = .{ .mem, .none, .none } }, |
| 129221 | .{ .src = .{ .to_sse, .none, .none } }, |
| 129222 | }, |
| 129223 | .extra_temps = .{ |
| 129224 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 129225 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 129226 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129227 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129228 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129229 | .unused, |
| 129230 | .unused, |
| 129231 | .unused, |
| 129232 | .unused, |
| 129233 | .unused, |
| 129234 | .unused, |
| 129235 | }, |
| 129236 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 129237 | .each = .{ .once = &.{ |
| 129238 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129239 | .{ ._, .vp_q, .broadcast, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 129240 | .{ ._, .vp_, .xor, .dst0x, .tmp2x, .src0x, ._ }, |
| 129241 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129242 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129243 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129244 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 129245 | } }, |
| 129246 | }, .{ |
| 129247 | .required_features = .{ .avx, null, null, null }, |
| 129248 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 129249 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 129250 | .patterns = &.{ |
| 129251 | .{ .src = .{ .mem, .none, .none } }, |
| 129252 | .{ .src = .{ .to_sse, .none, .none } }, |
| 129253 | }, |
| 129254 | .extra_temps = .{ |
| 129255 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 129256 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 129257 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129258 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129259 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129260 | .unused, |
| 129261 | .unused, |
| 129262 | .unused, |
| 129263 | .unused, |
| 129264 | .unused, |
| 129265 | .unused, |
| 129266 | }, |
| 129267 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 129268 | .each = .{ .once = &.{ |
| 129269 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129270 | .{ ._, .v_, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 129271 | .{ ._, .vp_, .xor, .dst0x, .tmp2x, .src0x, ._ }, |
| 129272 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129273 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129274 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129275 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 129276 | } }, |
| 129277 | }, .{ |
| 129278 | .required_features = .{ .sse4_2, null, null, null }, |
| 129279 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 129280 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 129281 | .patterns = &.{ |
| 129282 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 129283 | }, |
| 129284 | .extra_temps = .{ |
| 129285 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 129286 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 129287 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129288 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129289 | .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } }, |
| 129290 | .unused, |
| 129291 | .unused, |
| 129292 | .unused, |
| 129293 | .unused, |
| 129294 | .unused, |
| 129295 | .unused, |
| 129296 | }, |
| 129297 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 129298 | .each = .{ .once = &.{ |
| 129299 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129300 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 129301 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 129302 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129303 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 129304 | .{ ._, .p_q, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 129305 | .{ ._, .p_b, .blendv, .dst0x, .tmp3x, .tmp4x, ._ }, |
| 129306 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 129307 | } }, |
| 129308 | }, .{ |
| 129309 | .required_features = .{ .avx2, null, null, null }, |
| 129310 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129311 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 129312 | .patterns = &.{ |
| 129313 | .{ .src = .{ .to_sse, .none, .none } }, |
| 129314 | }, |
| 129315 | .extra_temps = .{ |
| 129316 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129317 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129318 | .unused, |
| 129319 | .unused, |
| 129320 | .unused, |
| 129321 | .unused, |
| 129322 | .unused, |
| 129323 | .unused, |
| 129324 | .unused, |
| 129325 | .unused, |
| 129326 | .unused, |
| 129327 | }, |
| 129328 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 129329 | .each = .{ .once = &.{ |
| 129330 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 129331 | .{ ._, .vp_q, .cmpgt, .tmp1x, .src0x, .tmp0x, ._ }, |
| 129332 | .{ ._, .vp_b, .blendv, .tmp0x, .src0x, .tmp0x, .tmp1x }, |
| 129333 | .{ ._, .v_i128, .extract, .dst0x, .src0y, .ui(1), ._ }, |
| 129334 | .{ ._, .vp_q, .cmpgt, .tmp1x, .tmp0x, .dst0x, ._ }, |
| 129335 | .{ ._, .vp_b, .blendv, .dst0x, .tmp0x, .dst0x, .tmp1x }, |
| 129336 | } }, |
| 129337 | }, .{ |
| 129338 | .required_features = .{ .avx, null, null, null }, |
| 129339 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129340 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 129341 | .patterns = &.{ |
| 129342 | .{ .src = .{ .to_sse, .none, .none } }, |
| 129343 | }, |
| 129344 | .extra_temps = .{ |
| 129345 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129346 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129347 | .unused, |
| 129348 | .unused, |
| 129349 | .unused, |
| 129350 | .unused, |
| 129351 | .unused, |
| 129352 | .unused, |
| 129353 | .unused, |
| 129354 | .unused, |
| 129355 | .unused, |
| 129356 | }, |
| 129357 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 129358 | .each = .{ .once = &.{ |
| 129359 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 129360 | .{ ._, .vp_q, .cmpgt, .tmp1x, .src0x, .tmp0x, ._ }, |
| 129361 | .{ ._, .vp_b, .blendv, .tmp0x, .src0x, .tmp0x, .tmp1x }, |
| 129362 | .{ ._, .v_f128, .extract, .dst0x, .src0y, .ui(1), ._ }, |
| 129363 | .{ ._, .vp_q, .cmpgt, .tmp1x, .tmp0x, .dst0x, ._ }, |
| 129364 | .{ ._, .vp_b, .blendv, .dst0x, .tmp0x, .dst0x, .tmp1x }, |
| 129365 | } }, |
| 129366 | }, .{ |
| 129367 | .required_features = .{ .avx2, null, null, null }, |
| 129368 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 129369 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 129370 | .patterns = &.{ |
| 129371 | .{ .src = .{ .mem, .none, .none } }, |
| 129372 | .{ .src = .{ .to_sse, .none, .none } }, |
| 129373 | }, |
| 129374 | .extra_temps = .{ |
| 129375 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 129376 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 129377 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129378 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129379 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129380 | .unused, |
| 129381 | .unused, |
| 129382 | .unused, |
| 129383 | .unused, |
| 129384 | .unused, |
| 129385 | .unused, |
| 129386 | }, |
| 129387 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 129388 | .each = .{ .once = &.{ |
| 129389 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129390 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 129391 | .{ ._, .vp_, .xor, .dst0y, .tmp2y, .src0y, ._ }, |
| 129392 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129393 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129394 | .{ ._, .vp_b, .blendv, .tmp3x, .dst0x, .tmp3x, .tmp4x }, |
| 129395 | .{ ._, .v_i128, .extract, .dst0x, .dst0y, .ui(1), ._ }, |
| 129396 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 129397 | .{ ._, .vp_b, .blendv, .dst0x, .tmp3x, .dst0x, .tmp4x }, |
| 129398 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 129399 | } }, |
| 129400 | }, .{ |
| 129401 | .required_features = .{ .avx, null, null, null }, |
| 129402 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 129403 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 129404 | .patterns = &.{ |
| 129405 | .{ .src = .{ .mem, .none, .none } }, |
| 129406 | .{ .src = .{ .to_sse, .none, .none } }, |
| 129407 | }, |
| 129408 | .extra_temps = .{ |
| 129409 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 129410 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 129411 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129412 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129413 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129414 | .unused, |
| 129415 | .unused, |
| 129416 | .unused, |
| 129417 | .unused, |
| 129418 | .unused, |
| 129419 | .unused, |
| 129420 | }, |
| 129421 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 129422 | .each = .{ .once = &.{ |
| 129423 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129424 | .{ ._, .v_sd, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 129425 | .{ ._, .v_pd, .xor, .dst0y, .tmp2y, .src0y, ._ }, |
| 129426 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129427 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129428 | .{ ._, .vp_b, .blendv, .tmp3x, .dst0x, .tmp3x, .tmp4x }, |
| 129429 | .{ ._, .v_f128, .extract, .dst0x, .dst0y, .ui(1), ._ }, |
| 129430 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 129431 | .{ ._, .vp_b, .blendv, .dst0x, .tmp3x, .dst0x, .tmp4x }, |
| 129432 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 129433 | } }, |
| 129434 | }, .{ |
| 129435 | .required_features = .{ .avx2, null, null, null }, |
| 129436 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129437 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 129438 | .patterns = &.{ |
| 129439 | .{ .src = .{ .to_sse, .none, .none } }, |
| 129440 | }, |
| 129441 | .extra_temps = .{ |
| 129442 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129443 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129444 | .unused, |
| 129445 | .unused, |
| 129446 | .unused, |
| 129447 | .unused, |
| 129448 | .unused, |
| 129449 | .unused, |
| 129450 | .unused, |
| 129451 | .unused, |
| 129452 | .unused, |
| 129453 | }, |
| 129454 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 129455 | .each = .{ .once = &.{ |
| 129456 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 129457 | .{ ._, .vp_q, .cmpgt, .tmp1x, .src0x, .tmp0x, ._ }, |
| 129458 | .{ ._, .vp_b, .blendv, .dst0x, .src0x, .tmp0x, .tmp1x }, |
| 129459 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 129460 | .{ ._, .vp_q, .cmpgt, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 129461 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x }, |
| 129462 | } }, |
| 129463 | }, .{ |
| 129464 | .required_features = .{ .avx, null, null, null }, |
| 129465 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129466 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 129467 | .patterns = &.{ |
| 129468 | .{ .src = .{ .to_sse, .none, .none } }, |
| 129469 | }, |
| 129470 | .extra_temps = .{ |
| 129471 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129472 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129473 | .unused, |
| 129474 | .unused, |
| 129475 | .unused, |
| 129476 | .unused, |
| 129477 | .unused, |
| 129478 | .unused, |
| 129479 | .unused, |
| 129480 | .unused, |
| 129481 | .unused, |
| 129482 | }, |
| 129483 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 129484 | .each = .{ .once = &.{ |
| 129485 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 129486 | .{ ._, .vp_q, .cmpgt, .tmp1x, .src0x, .tmp0x, ._ }, |
| 129487 | .{ ._, .vp_b, .blendv, .dst0x, .src0x, .tmp0x, .tmp1x }, |
| 129488 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 129489 | .{ ._, .vp_q, .cmpgt, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 129490 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x }, |
| 129491 | } }, |
| 129492 | }, .{ |
| 129493 | .required_features = .{ .avx2, null, null, null }, |
| 129494 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 129495 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 129496 | .patterns = &.{ |
| 129497 | .{ .src = .{ .mem, .none, .none } }, |
| 129498 | .{ .src = .{ .to_sse, .none, .none } }, |
| 129499 | }, |
| 129500 | .extra_temps = .{ |
| 129501 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 129502 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 129503 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129504 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129505 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129506 | .unused, |
| 129507 | .unused, |
| 129508 | .unused, |
| 129509 | .unused, |
| 129510 | .unused, |
| 129511 | .unused, |
| 129512 | }, |
| 129513 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 129514 | .each = .{ .once = &.{ |
| 129515 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129516 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 129517 | .{ ._, .vp_, .xor, .dst0y, .tmp2y, .src0y, ._ }, |
| 129518 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 129519 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129520 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129521 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129522 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129523 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129524 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 129525 | } }, |
| 129526 | }, .{ |
| 129527 | .required_features = .{ .avx, null, null, null }, |
| 129528 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 129529 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 129530 | .patterns = &.{ |
| 129531 | .{ .src = .{ .mem, .none, .none } }, |
| 129532 | .{ .src = .{ .to_sse, .none, .none } }, |
| 129533 | }, |
| 129534 | .extra_temps = .{ |
| 129535 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 129536 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 129537 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129538 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129539 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129540 | .unused, |
| 129541 | .unused, |
| 129542 | .unused, |
| 129543 | .unused, |
| 129544 | .unused, |
| 129545 | .unused, |
| 129546 | }, |
| 129547 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 129548 | .each = .{ .once = &.{ |
| 129549 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129550 | .{ ._, .v_sd, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 129551 | .{ ._, .v_pd, .xor, .dst0y, .tmp2y, .src0y, ._ }, |
| 129552 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 129553 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129554 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129555 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129556 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129557 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129558 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 129559 | } }, |
| 129560 | }, .{ |
| 129561 | .required_features = .{ .avx512f, null, null, null }, |
| 129562 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129563 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 129564 | .patterns = &.{ |
| 129565 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129566 | }, |
| 129567 | .extra_temps = .{ |
| 129568 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 129569 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 129570 | .{ .type = .vector_8_i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 129571 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129572 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129573 | .unused, |
| 129574 | .unused, |
| 129575 | .unused, |
| 129576 | .unused, |
| 129577 | .unused, |
| 129578 | .unused, |
| 129579 | }, |
| 129580 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 129581 | .each = .{ .once = &.{ |
| 129582 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129583 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 129584 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 129585 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 129586 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 129587 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 129588 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 129589 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 129590 | .{ ._, .vp_q, .cmpgt, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 129591 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp3y, .tmp4y }, |
| 129592 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 129593 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129594 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129595 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129596 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129597 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129598 | } }, |
| 129599 | }, .{ |
| 129600 | .required_features = .{ .avx512f, null, null, null }, |
| 129601 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 129602 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 129603 | .patterns = &.{ |
| 129604 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129605 | }, |
| 129606 | .extra_temps = .{ |
| 129607 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 129608 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 129609 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129610 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 129611 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129612 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129613 | .unused, |
| 129614 | .unused, |
| 129615 | .unused, |
| 129616 | .unused, |
| 129617 | .unused, |
| 129618 | }, |
| 129619 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 129620 | .each = .{ .once = &.{ |
| 129621 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129622 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 129623 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 129624 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 129625 | .{ ._, .v_dqa, .mov, .tmp4y, .memd(.src0y, 32), ._, ._ }, |
| 129626 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 129627 | .{ ._, .vp_, .@"or", .tmp4y, .tmp4y, .lead(.tmp0y, 32), ._ }, |
| 129628 | .{ ._, .vp_, .xor, .dst0y, .dst0y, .tmp2y, ._ }, |
| 129629 | .{ ._, .vp_, .xor, .tmp4y, .tmp4y, .tmp2y, ._ }, |
| 129630 | .{ ._, .vp_q, .cmpgt, .tmp5y, .dst0y, .tmp4y, ._ }, |
| 129631 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp4y, .tmp5y }, |
| 129632 | .{ ._, .v_i128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 129633 | .{ ._, .vp_q, .cmpgt, .tmp5x, .dst0x, .tmp4x, ._ }, |
| 129634 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 129635 | .{ ._, .vp_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 129636 | .{ ._, .vp_q, .cmpgt, .tmp5x, .dst0x, .tmp4x, ._ }, |
| 129637 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 129638 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 129639 | } }, |
| 129640 | }, .{ |
| 129641 | .required_features = .{ .avx512f, null, null, null }, |
| 129642 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129643 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 129644 | .patterns = &.{ |
| 129645 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129646 | }, |
| 129647 | .extra_temps = .{ |
| 129648 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129649 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129650 | .unused, |
| 129651 | .unused, |
| 129652 | .unused, |
| 129653 | .unused, |
| 129654 | .unused, |
| 129655 | .unused, |
| 129656 | .unused, |
| 129657 | .unused, |
| 129658 | .unused, |
| 129659 | }, |
| 129660 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 129661 | .each = .{ .once = &.{ |
| 129662 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 129663 | .{ ._, .v_dqa, .mov, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 129664 | .{ ._, .vp_q, .cmpgt, .tmp1y, .dst0y, .tmp0y, ._ }, |
| 129665 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp0y, .tmp1y }, |
| 129666 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 129667 | .{ ._, .vp_q, .cmpgt, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 129668 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x }, |
| 129669 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 129670 | .{ ._, .vp_q, .cmpgt, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 129671 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x }, |
| 129672 | } }, |
| 129673 | }, .{ |
| 129674 | .required_features = .{ .avx512f, null, null, null }, |
| 129675 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 129676 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 129677 | .patterns = &.{ |
| 129678 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129679 | }, |
| 129680 | .extra_temps = .{ |
| 129681 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 129682 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 129683 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129684 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129685 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129686 | .unused, |
| 129687 | .unused, |
| 129688 | .unused, |
| 129689 | .unused, |
| 129690 | .unused, |
| 129691 | .unused, |
| 129692 | }, |
| 129693 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 129694 | .each = .{ .once = &.{ |
| 129695 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129696 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 129697 | .{ ._, .vp_, .xor, .dst0y, .tmp2y, .mem(.src0y), ._ }, |
| 129698 | .{ ._, .vp_, .xor, .tmp3y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 129699 | .{ ._, .vp_q, .cmpgt, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 129700 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp3y, .tmp4y }, |
| 129701 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 129702 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129703 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129704 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129705 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129706 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129707 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 129708 | } }, |
| 129709 | }, .{ |
| 129710 | .required_features = .{ .avx2, null, null, null }, |
| 129711 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129712 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 129713 | .patterns = &.{ |
| 129714 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129715 | }, |
| 129716 | .extra_temps = .{ |
| 129717 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129718 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129719 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129720 | .unused, |
| 129721 | .unused, |
| 129722 | .unused, |
| 129723 | .unused, |
| 129724 | .unused, |
| 129725 | .unused, |
| 129726 | .unused, |
| 129727 | .unused, |
| 129728 | }, |
| 129729 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 129730 | .clobbers = .{ .eflags = true }, |
| 129731 | .each = .{ .once = &.{ |
| 129732 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 129733 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 129734 | .{ .@"0:", .v_dqa, .mov, .tmp1y, .memi(.src0y, .tmp0), ._, ._ }, |
| 129735 | .{ ._, .vp_q, .cmpgt, .tmp2y, .dst0y, .tmp1y, ._ }, |
| 129736 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp1y, .tmp2y }, |
| 129737 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 129738 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 129739 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 129740 | .{ ._, .vp_q, .cmpgt, .tmp2x, .dst0x, .tmp1x, ._ }, |
| 129741 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp1x, .tmp2x }, |
| 129742 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 129743 | .{ ._, .vp_q, .cmpgt, .tmp2x, .dst0x, .tmp1x, ._ }, |
| 129744 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp1x, .tmp2x }, |
| 129745 | } }, |
| 129746 | }, .{ |
| 129747 | .required_features = .{ .avx, null, null, null }, |
| 129748 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129749 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 129750 | .patterns = &.{ |
| 129751 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129752 | }, |
| 129753 | .extra_temps = .{ |
| 129754 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129755 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129756 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129757 | .unused, |
| 129758 | .unused, |
| 129759 | .unused, |
| 129760 | .unused, |
| 129761 | .unused, |
| 129762 | .unused, |
| 129763 | .unused, |
| 129764 | .unused, |
| 129765 | }, |
| 129766 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 129767 | .clobbers = .{ .eflags = true }, |
| 129768 | .each = .{ .once = &.{ |
| 129769 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 129770 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 129771 | .{ .@"0:", .v_dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 129772 | .{ ._, .vp_q, .cmpgt, .tmp2x, .dst0x, .tmp1x, ._ }, |
| 129773 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp1x, .tmp2x }, |
| 129774 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 129775 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 129776 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 129777 | .{ ._, .vp_q, .cmpgt, .tmp2x, .dst0x, .tmp1x, ._ }, |
| 129778 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp1x, .tmp2x }, |
| 129779 | } }, |
| 129780 | }, .{ |
| 129781 | .required_features = .{ .sse4_2, null, null, null }, |
| 129782 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129783 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 129784 | .patterns = &.{ |
| 129785 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129786 | }, |
| 129787 | .extra_temps = .{ |
| 129788 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129789 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129790 | .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } }, |
| 129791 | .unused, |
| 129792 | .unused, |
| 129793 | .unused, |
| 129794 | .unused, |
| 129795 | .unused, |
| 129796 | .unused, |
| 129797 | .unused, |
| 129798 | .unused, |
| 129799 | }, |
| 129800 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 129801 | .clobbers = .{ .eflags = true }, |
| 129802 | .each = .{ .once = &.{ |
| 129803 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 129804 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 129805 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 129806 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 129807 | .{ ._, .p_q, .cmpgt, .tmp2x, .tmp1x, ._, ._ }, |
| 129808 | .{ ._, .p_b, .blendv, .dst0x, .tmp1x, .tmp2x, ._ }, |
| 129809 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 129810 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 129811 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 129812 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 129813 | .{ ._, .p_q, .cmpgt, .tmp2x, .tmp1x, ._, ._ }, |
| 129814 | .{ ._, .p_b, .blendv, .dst0x, .tmp1x, .tmp2x, ._ }, |
| 129815 | } }, |
| 129816 | }, .{ |
| 129817 | .required_features = .{ .avx2, null, null, null }, |
| 129818 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 129819 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 129820 | .patterns = &.{ |
| 129821 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129822 | }, |
| 129823 | .extra_temps = .{ |
| 129824 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129825 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 129826 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129827 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129828 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129829 | .unused, |
| 129830 | .unused, |
| 129831 | .unused, |
| 129832 | .unused, |
| 129833 | .unused, |
| 129834 | .unused, |
| 129835 | }, |
| 129836 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 129837 | .clobbers = .{ .eflags = true }, |
| 129838 | .each = .{ .once = &.{ |
| 129839 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129840 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 129841 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 129842 | .{ ._, .vp_, .xor, .dst0y, .tmp2y, .memad(.src0y, .add_unaligned_size, -32), ._ }, |
| 129843 | .{ .@"0:", .vp_, .xor, .tmp3y, .tmp2y, .memi(.src0y, .tmp0), ._ }, |
| 129844 | .{ ._, .vp_q, .cmpgt, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 129845 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp3y, .tmp4y }, |
| 129846 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 129847 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 129848 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 129849 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129850 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129851 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129852 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129853 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129854 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 129855 | } }, |
| 129856 | }, .{ |
| 129857 | .required_features = .{ .avx, null, null, null }, |
| 129858 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 129859 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 129860 | .patterns = &.{ |
| 129861 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129862 | }, |
| 129863 | .extra_temps = .{ |
| 129864 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129865 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 129866 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129867 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129868 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129869 | .unused, |
| 129870 | .unused, |
| 129871 | .unused, |
| 129872 | .unused, |
| 129873 | .unused, |
| 129874 | .unused, |
| 129875 | }, |
| 129876 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 129877 | .clobbers = .{ .eflags = true }, |
| 129878 | .each = .{ .once = &.{ |
| 129879 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129880 | .{ ._, .v_, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 129881 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 129882 | .{ ._, .vp_, .xor, .dst0x, .tmp2x, .memad(.src0x, .add_unaligned_size, -16), ._ }, |
| 129883 | .{ .@"0:", .vp_, .xor, .tmp3x, .tmp2x, .memi(.src0x, .tmp0), ._ }, |
| 129884 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129885 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129886 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 129887 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 129888 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129889 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129890 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129891 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 129892 | } }, |
| 129893 | }, .{ |
| 129894 | .required_features = .{ .sse4_2, null, null, null }, |
| 129895 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 129896 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 129897 | .patterns = &.{ |
| 129898 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129899 | }, |
| 129900 | .extra_temps = .{ |
| 129901 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129902 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 129903 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129904 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 129905 | .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } }, |
| 129906 | .unused, |
| 129907 | .unused, |
| 129908 | .unused, |
| 129909 | .unused, |
| 129910 | .unused, |
| 129911 | .unused, |
| 129912 | }, |
| 129913 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 129914 | .clobbers = .{ .eflags = true }, |
| 129915 | .each = .{ .once = &.{ |
| 129916 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129917 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 129918 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 129919 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 129920 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 129921 | .{ .@"0:", ._dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 129922 | .{ ._, .p_, .xor, .tmp3x, .tmp2x, ._, ._ }, |
| 129923 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 129924 | .{ ._, .p_q, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 129925 | .{ ._, .p_b, .blendv, .dst0x, .tmp3x, .tmp4x, ._ }, |
| 129926 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 129927 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 129928 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129929 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 129930 | .{ ._, .p_q, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 129931 | .{ ._, .p_b, .blendv, .dst0x, .tmp3x, .tmp4x, ._ }, |
| 129932 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 129933 | } }, |
| 129934 | }, .{ |
| 129935 | .required_features = .{ .avx512f, null, null, null }, |
| 129936 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129937 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 129938 | .patterns = &.{ |
| 129939 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129940 | }, |
| 129941 | .extra_temps = .{ |
| 129942 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129943 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 129944 | .{ .type = .vector_8_i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 129945 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129946 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129947 | .unused, |
| 129948 | .unused, |
| 129949 | .unused, |
| 129950 | .unused, |
| 129951 | .unused, |
| 129952 | .unused, |
| 129953 | }, |
| 129954 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 129955 | .clobbers = .{ .eflags = true }, |
| 129956 | .each = .{ .once = &.{ |
| 129957 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 129958 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 129959 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 129960 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 129961 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 129962 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 129963 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 129964 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 129965 | .{ ._, ._, .mov, .tmp0d, .sia(-96, .src0, .add_size), ._, ._ }, |
| 129966 | .{ ._, .vp_q, .cmpgt, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 129967 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp3y, .tmp4y }, |
| 129968 | .{ .@"0:", .v_dqa, .mov, .tmp3y, .memi(.src0y, .tmp0), ._, ._ }, |
| 129969 | .{ ._, .vp_q, .cmpgt, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 129970 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp3y, .tmp4y }, |
| 129971 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 129972 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 129973 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 129974 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129975 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129976 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 129977 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 129978 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 129979 | } }, |
| 129980 | }, .{ |
| 129981 | .required_features = .{ .avx2, null, null, null }, |
| 129982 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 129983 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 129984 | .patterns = &.{ |
| 129985 | .{ .src = .{ .to_mem, .none, .none } }, |
| 129986 | }, |
| 129987 | .extra_temps = .{ |
| 129988 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 129989 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 129990 | .{ .type = .vector_4_i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 129991 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129992 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 129993 | .unused, |
| 129994 | .unused, |
| 129995 | .unused, |
| 129996 | .unused, |
| 129997 | .unused, |
| 129998 | .unused, |
| 129999 | }, |
| 130000 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 130001 | .clobbers = .{ .eflags = true }, |
| 130002 | .each = .{ .once = &.{ |
| 130003 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 130004 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 130005 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 130006 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 130007 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 130008 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 130009 | .{ .@"0:", .v_dqa, .mov, .tmp3y, .memi(.src0y, .tmp0), ._, ._ }, |
| 130010 | .{ ._, .vp_q, .cmpgt, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 130011 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp3y, .tmp4y }, |
| 130012 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 130013 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130014 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 130015 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130016 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 130017 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 130018 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130019 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 130020 | } }, |
| 130021 | }, .{ |
| 130022 | .required_features = .{ .avx, null, null, null }, |
| 130023 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 130024 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 130025 | .patterns = &.{ |
| 130026 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130027 | }, |
| 130028 | .extra_temps = .{ |
| 130029 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 130030 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 130031 | .{ .type = .vector_4_i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 130032 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 130033 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 130034 | .unused, |
| 130035 | .unused, |
| 130036 | .unused, |
| 130037 | .unused, |
| 130038 | .unused, |
| 130039 | .unused, |
| 130040 | }, |
| 130041 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 130042 | .clobbers = .{ .eflags = true }, |
| 130043 | .each = .{ .once = &.{ |
| 130044 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 130045 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 130046 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 130047 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 130048 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 130049 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 130050 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 130051 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130052 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 130053 | .{ .@"0:", .v_dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 130054 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130055 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 130056 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 130057 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130058 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 130059 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130060 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 130061 | } }, |
| 130062 | }, .{ |
| 130063 | .required_features = .{ .sse4_2, null, null, null }, |
| 130064 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 130065 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 130066 | .patterns = &.{ |
| 130067 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130068 | }, |
| 130069 | .extra_temps = .{ |
| 130070 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 130071 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 130072 | .{ .type = .vector_2_i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smax } } }, |
| 130073 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 130074 | .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } }, |
| 130075 | .unused, |
| 130076 | .unused, |
| 130077 | .unused, |
| 130078 | .unused, |
| 130079 | .unused, |
| 130080 | .unused, |
| 130081 | }, |
| 130082 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 130083 | .clobbers = .{ .eflags = true }, |
| 130084 | .each = .{ .once = &.{ |
| 130085 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 130086 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 130087 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 130088 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 130089 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 130090 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 130091 | .{ .@"0:", ._dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 130092 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 130093 | .{ ._, .p_q, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 130094 | .{ ._, .p_b, .blendv, .dst0x, .tmp3x, .tmp4x, ._ }, |
| 130095 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 130096 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130097 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 130098 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 130099 | .{ ._, .p_q, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 130100 | .{ ._, .p_b, .blendv, .dst0x, .tmp3x, .tmp4x, ._ }, |
| 130101 | } }, |
| 130102 | }, .{ |
| 130103 | .required_features = .{ .avx512f, null, null, null }, |
| 130104 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 130105 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 130106 | .patterns = &.{ |
| 130107 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130108 | }, |
| 130109 | .extra_temps = .{ |
| 130110 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 130111 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 130112 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 130113 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 130114 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 130115 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 130116 | .unused, |
| 130117 | .unused, |
| 130118 | .unused, |
| 130119 | .unused, |
| 130120 | .unused, |
| 130121 | }, |
| 130122 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 130123 | .clobbers = .{ .eflags = true }, |
| 130124 | .each = .{ .once = &.{ |
| 130125 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 130126 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 130127 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 130128 | .{ ._, .v_dqa, .mov, .tmp4y, .memad(.src0y, .add_size, -32), ._, ._ }, |
| 130129 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_size, -64), ._, ._ }, |
| 130130 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 130131 | .{ ._, .vp_, .@"or", .tmp4y, .tmp4y, .lead(.tmp0y, 32), ._ }, |
| 130132 | .{ ._, .vp_, .xor, .dst0y, .dst0y, .tmp2y, ._ }, |
| 130133 | .{ ._, .vp_, .xor, .tmp4y, .tmp4y, .tmp2y, ._ }, |
| 130134 | .{ ._, ._, .mov, .tmp0d, .sia(-96, .src0, .add_size), ._, ._ }, |
| 130135 | .{ ._, .vp_q, .cmpgt, .tmp5y, .dst0y, .tmp4y, ._ }, |
| 130136 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp4y, .tmp5y }, |
| 130137 | .{ .@"0:", .vp_, .xor, .tmp4y, .tmp2y, .memi(.src0y, .tmp0), ._ }, |
| 130138 | .{ ._, .vp_q, .cmpgt, .tmp5y, .dst0y, .tmp4y, ._ }, |
| 130139 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp4y, .tmp5y }, |
| 130140 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 130141 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130142 | .{ ._, .v_i128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 130143 | .{ ._, .vp_q, .cmpgt, .tmp5x, .dst0x, .tmp4x, ._ }, |
| 130144 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 130145 | .{ ._, .vp_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 130146 | .{ ._, .vp_q, .cmpgt, .tmp5x, .dst0x, .tmp4x, ._ }, |
| 130147 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 130148 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 130149 | } }, |
| 130150 | }, .{ |
| 130151 | .required_features = .{ .avx2, null, null, null }, |
| 130152 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 130153 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 130154 | .patterns = &.{ |
| 130155 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130156 | }, |
| 130157 | .extra_temps = .{ |
| 130158 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 130159 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 130160 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 130161 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 130162 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 130163 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 130164 | .unused, |
| 130165 | .unused, |
| 130166 | .unused, |
| 130167 | .unused, |
| 130168 | .unused, |
| 130169 | }, |
| 130170 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 130171 | .clobbers = .{ .eflags = true }, |
| 130172 | .each = .{ .once = &.{ |
| 130173 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 130174 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 130175 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 130176 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_size, -32), ._, ._ }, |
| 130177 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 130178 | .{ ._, .vp_, .xor, .dst0y, .dst0y, .tmp2y, ._ }, |
| 130179 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 130180 | .{ .@"0:", .vp_, .xor, .tmp4y, .tmp2y, .memi(.src0y, .tmp0), ._ }, |
| 130181 | .{ ._, .vp_q, .cmpgt, .tmp5y, .dst0y, .tmp4y, ._ }, |
| 130182 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp4y, .tmp5y }, |
| 130183 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 130184 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130185 | .{ ._, .v_i128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 130186 | .{ ._, .vp_q, .cmpgt, .tmp5x, .dst0x, .tmp4x, ._ }, |
| 130187 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 130188 | .{ ._, .vp_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 130189 | .{ ._, .vp_q, .cmpgt, .tmp5x, .dst0x, .tmp4x, ._ }, |
| 130190 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 130191 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 130192 | } }, |
| 130193 | }, .{ |
| 130194 | .required_features = .{ .avx, null, null, null }, |
| 130195 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 130196 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 130197 | .patterns = &.{ |
| 130198 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130199 | }, |
| 130200 | .extra_temps = .{ |
| 130201 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 130202 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 130203 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 130204 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 130205 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 130206 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 130207 | .unused, |
| 130208 | .unused, |
| 130209 | .unused, |
| 130210 | .unused, |
| 130211 | .unused, |
| 130212 | }, |
| 130213 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 130214 | .clobbers = .{ .eflags = true }, |
| 130215 | .each = .{ .once = &.{ |
| 130216 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 130217 | .{ ._, .v_sd, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 130218 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 130219 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_size, -32), ._, ._ }, |
| 130220 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 130221 | .{ ._, .v_ps, .xor, .dst0y, .dst0y, .tmp2y, ._ }, |
| 130222 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 130223 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 130224 | .{ ._, .vp_q, .cmpgt, .tmp5x, .dst0x, .tmp4x, ._ }, |
| 130225 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 130226 | .{ .@"0:", .vp_, .xor, .tmp4x, .tmp2x, .memi(.src0x, .tmp0), ._ }, |
| 130227 | .{ ._, .vp_q, .cmpgt, .tmp5x, .dst0x, .tmp4x, ._ }, |
| 130228 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 130229 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 130230 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130231 | .{ ._, .vp_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 130232 | .{ ._, .vp_q, .cmpgt, .tmp5x, .dst0x, .tmp4x, ._ }, |
| 130233 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 130234 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 130235 | } }, |
| 130236 | }, .{ |
| 130237 | .required_features = .{ .sse4_2, null, null, null }, |
| 130238 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 130239 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 130240 | .patterns = &.{ |
| 130241 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130242 | }, |
| 130243 | .extra_temps = .{ |
| 130244 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 130245 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 130246 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 130247 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 130248 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 130249 | .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } }, |
| 130250 | .unused, |
| 130251 | .unused, |
| 130252 | .unused, |
| 130253 | .unused, |
| 130254 | .unused, |
| 130255 | }, |
| 130256 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 130257 | .clobbers = .{ .eflags = true }, |
| 130258 | .each = .{ .once = &.{ |
| 130259 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 130260 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 130261 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 130262 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 130263 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 130264 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 130265 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 130266 | .{ .@"0:", ._dqa, .mov, .tmp4x, .memi(.src0x, .tmp0), ._, ._ }, |
| 130267 | .{ ._, .p_, .xor, .tmp4x, .tmp2x, ._, ._ }, |
| 130268 | .{ ._, ._dqa, .mov, .tmp5x, .dst0x, ._, ._ }, |
| 130269 | .{ ._, .p_q, .cmpgt, .tmp5x, .tmp4x, ._, ._ }, |
| 130270 | .{ ._, .p_b, .blendv, .dst0x, .tmp4x, .tmp5x, ._ }, |
| 130271 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 130272 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130273 | .{ ._, .p_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 130274 | .{ ._, ._dqa, .mov, .tmp5x, .dst0x, ._, ._ }, |
| 130275 | .{ ._, .p_q, .cmpgt, .tmp5x, .tmp4x, ._, ._ }, |
| 130276 | .{ ._, .p_b, .blendv, .dst0x, .tmp4x, .tmp5x, ._ }, |
| 130277 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 130278 | } }, |
| 130279 | }, .{ |
| 130280 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| 130281 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 130282 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 130283 | .patterns = &.{ |
| 130284 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130285 | }, |
| 130286 | .extra_temps = .{ |
| 130287 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 130288 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 130289 | .unused, |
| 130290 | .unused, |
| 130291 | .unused, |
| 130292 | .unused, |
| 130293 | .unused, |
| 130294 | .unused, |
| 130295 | .unused, |
| 130296 | .unused, |
| 130297 | .unused, |
| 130298 | }, |
| 130299 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 130300 | .clobbers = .{ .eflags = true }, |
| 130301 | .each = .{ .once = &.{ |
| 130302 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 130303 | .{ ._, ._, .mov, .dst0q, .memad(.src0q, .add_unaligned_size, -8), ._, ._ }, |
| 130304 | .{ .@"0:", ._, .mov, .tmp1q, .memi(.src0q, .tmp0), ._, ._ }, |
| 130305 | .{ ._, ._, .cmp, .dst0q, .tmp1q, ._, ._ }, |
| 130306 | .{ ._, ._nl, .cmov, .dst0q, .tmp1q, ._, ._ }, |
| 130307 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 130308 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130309 | } }, |
| 130310 | }, .{ |
| 130311 | .required_features = .{ .@"64bit", null, null, null }, |
| 130312 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 130313 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 130314 | .patterns = &.{ |
| 130315 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130316 | }, |
| 130317 | .extra_temps = .{ |
| 130318 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 130319 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 130320 | .unused, |
| 130321 | .unused, |
| 130322 | .unused, |
| 130323 | .unused, |
| 130324 | .unused, |
| 130325 | .unused, |
| 130326 | .unused, |
| 130327 | .unused, |
| 130328 | .unused, |
| 130329 | }, |
| 130330 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 130331 | .clobbers = .{ .eflags = true }, |
| 130332 | .each = .{ .once = &.{ |
| 130333 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 130334 | .{ ._, ._, .mov, .dst0q, .memad(.src0q, .add_unaligned_size, -8), ._, ._ }, |
| 130335 | .{ .@"0:", ._, .mov, .tmp1q, .memi(.src0q, .tmp0), ._, ._ }, |
| 130336 | .{ ._, ._, .cmp, .dst0q, .tmp1q, ._, ._ }, |
| 130337 | .{ ._, ._l, .j, .@"1f", ._, ._, ._ }, |
| 130338 | .{ ._, ._, .mov, .dst0q, .tmp1q, ._, ._ }, |
| 130339 | .{ .@"1:", ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 130340 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130341 | } }, |
| 130342 | }, .{ |
| 130343 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| 130344 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 130345 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 130346 | .patterns = &.{ |
| 130347 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130348 | }, |
| 130349 | .extra_temps = .{ |
| 130350 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 130351 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 130352 | .unused, |
| 130353 | .unused, |
| 130354 | .unused, |
| 130355 | .unused, |
| 130356 | .unused, |
| 130357 | .unused, |
| 130358 | .unused, |
| 130359 | .unused, |
| 130360 | .unused, |
| 130361 | }, |
| 130362 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 130363 | .clobbers = .{ .eflags = true }, |
| 130364 | .each = .{ .once = &.{ |
| 130365 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 130366 | .{ ._, ._, .mov, .dst0q, .memad(.src0q, .add_unaligned_size, -8), ._, ._ }, |
| 130367 | .{ .@"0:", ._, .mov, .tmp1q, .memi(.src0q, .tmp0), ._, ._ }, |
| 130368 | .{ ._, ._, .cmp, .dst0q, .tmp1q, ._, ._ }, |
| 130369 | .{ ._, ._nb, .cmov, .dst0q, .tmp1q, ._, ._ }, |
| 130370 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 130371 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130372 | } }, |
| 130373 | }, .{ |
| 130374 | .required_features = .{ .@"64bit", null, null, null }, |
| 130375 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 130376 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 130377 | .patterns = &.{ |
| 130378 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130379 | }, |
| 130380 | .extra_temps = .{ |
| 130381 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 130382 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 130383 | .unused, |
| 130384 | .unused, |
| 130385 | .unused, |
| 130386 | .unused, |
| 130387 | .unused, |
| 130388 | .unused, |
| 130389 | .unused, |
| 130390 | .unused, |
| 130391 | .unused, |
| 130392 | }, |
| 130393 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 130394 | .clobbers = .{ .eflags = true }, |
| 130395 | .each = .{ .once = &.{ |
| 130396 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 130397 | .{ ._, ._, .mov, .dst0q, .memad(.src0q, .add_unaligned_size, -8), ._, ._ }, |
| 130398 | .{ .@"0:", ._, .mov, .tmp1q, .memi(.src0q, .tmp0), ._, ._ }, |
| 130399 | .{ ._, ._, .cmp, .dst0q, .tmp1q, ._, ._ }, |
| 130400 | .{ ._, ._b, .j, .@"1f", ._, ._, ._ }, |
| 130401 | .{ ._, ._, .mov, .dst0q, .tmp1q, ._, ._ }, |
| 130402 | .{ .@"1:", ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 130403 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130404 | } }, |
| 130405 | }, .{ |
| 130406 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| 130407 | .dst_constraints = .{ .{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 130408 | .src_constraints = .{ .{ .scalar_remainder_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 130409 | .patterns = &.{ |
| 130410 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130411 | }, |
| 130412 | .extra_temps = .{ |
| 130413 | .{ .type = .u32, .kind = .{ .reg = .rdi } }, |
| 130414 | .{ .type = .usize, .kind = .{ .reg = .rsi } }, |
| 130415 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| 130416 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 130417 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 130418 | .unused, |
| 130419 | .unused, |
| 130420 | .unused, |
| 130421 | .unused, |
| 130422 | .unused, |
| 130423 | .unused, |
| 130424 | }, |
| 130425 | .dst_temps = .{ .mem, .unused }, |
| 130426 | .clobbers = .{ .eflags = true }, |
| 130427 | .each = .{ .once = &.{ |
| 130428 | .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 130429 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 130430 | .{ .@"0:", ._, .mov, .tmp2p, .sia(1, .dst0, .sub_size_div_8), ._, ._ }, |
| 130431 | .{ ._, ._, .lea, .tmp3p, .memi(.src0, .tmp0), ._, ._ }, |
| 130432 | .{ ._, ._c, .cl, ._, ._, ._, ._ }, |
| 130433 | .{ .@"1:", ._, .mov, .tmp4q, .leasiad(.tmp1q, .@"8", .tmp2, .add_src0_elem_size, -8), ._, ._ }, |
| 130434 | .{ ._, ._, .sbb, .tmp4q, .leasiad(.tmp3q, .@"8", .tmp2, .add_src0_elem_size, -8), ._, ._ }, |
| 130435 | .{ ._, ._c, .in, .tmp2p, ._, ._, ._ }, |
| 130436 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| 130437 | .{ ._, ._, .mov, .tmp4q, .leaad(.tmp1q, .add_src0_elem_size, -8), ._, ._ }, |
| 130438 | .{ ._, ._, .sbb, .tmp4q, .leaad(.tmp3q, .add_src0_elem_size, -8), ._, ._ }, |
| 130439 | .{ ._, ._nl, .cmov, .tmp1p, .tmp3p, ._, ._ }, |
| 130440 | .{ ._, ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 130441 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130442 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| 130443 | .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| 130444 | .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ }, |
| 130445 | } }, |
| 130446 | }, .{ |
| 130447 | .required_features = .{ .@"64bit", null, null, null }, |
| 130448 | .dst_constraints = .{ .{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 130449 | .src_constraints = .{ .{ .scalar_remainder_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 130450 | .patterns = &.{ |
| 130451 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130452 | }, |
| 130453 | .extra_temps = .{ |
| 130454 | .{ .type = .u32, .kind = .{ .reg = .rdi } }, |
| 130455 | .{ .type = .usize, .kind = .{ .reg = .rsi } }, |
| 130456 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| 130457 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 130458 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 130459 | .unused, |
| 130460 | .unused, |
| 130461 | .unused, |
| 130462 | .unused, |
| 130463 | .unused, |
| 130464 | .unused, |
| 130465 | }, |
| 130466 | .dst_temps = .{ .mem, .unused }, |
| 130467 | .clobbers = .{ .eflags = true }, |
| 130468 | .each = .{ .once = &.{ |
| 130469 | .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 130470 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 130471 | .{ .@"0:", ._, .mov, .tmp2p, .sia(1, .dst0, .sub_size_div_8), ._, ._ }, |
| 130472 | .{ ._, ._, .lea, .tmp3p, .memi(.src0, .tmp0), ._, ._ }, |
| 130473 | .{ ._, ._c, .cl, ._, ._, ._, ._ }, |
| 130474 | .{ .@"1:", ._, .mov, .tmp4q, .leasiad(.tmp1q, .@"8", .tmp2, .add_src0_elem_size, -8), ._, ._ }, |
| 130475 | .{ ._, ._, .sbb, .tmp4q, .leasiad(.tmp3q, .@"8", .tmp2, .add_src0_elem_size, -8), ._, ._ }, |
| 130476 | .{ ._, ._c, .in, .tmp2p, ._, ._, ._ }, |
| 130477 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| 130478 | .{ ._, ._, .mov, .tmp4q, .leaad(.tmp1q, .add_src0_elem_size, -8), ._, ._ }, |
| 130479 | .{ ._, ._, .sbb, .tmp4q, .leaad(.tmp3q, .add_src0_elem_size, -8), ._, ._ }, |
| 130480 | .{ ._, ._l, .j, .@"1f", ._, ._, ._ }, |
| 130481 | .{ ._, ._, .mov, .tmp1p, .tmp3p, ._, ._ }, |
| 130482 | .{ .@"1:", ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 130483 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130484 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| 130485 | .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| 130486 | .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ }, |
| 130487 | } }, |
| 130488 | }, .{ |
| 130489 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| 130490 | .dst_constraints = .{ .{ .remainder_unsigned_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 130491 | .src_constraints = .{ .{ .scalar_remainder_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 130492 | .patterns = &.{ |
| 130493 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130494 | }, |
| 130495 | .extra_temps = .{ |
| 130496 | .{ .type = .u32, .kind = .{ .reg = .rdi } }, |
| 130497 | .{ .type = .usize, .kind = .{ .reg = .rsi } }, |
| 130498 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| 130499 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 130500 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 130501 | .unused, |
| 130502 | .unused, |
| 130503 | .unused, |
| 130504 | .unused, |
| 130505 | .unused, |
| 130506 | .unused, |
| 130507 | }, |
| 130508 | .dst_temps = .{ .mem, .unused }, |
| 130509 | .clobbers = .{ .eflags = true }, |
| 130510 | .each = .{ .once = &.{ |
| 130511 | .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 130512 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 130513 | .{ .@"0:", ._, .mov, .tmp2p, .sa(.dst0, .sub_size_div_8), ._, ._ }, |
| 130514 | .{ ._, ._, .lea, .tmp3p, .memi(.src0, .tmp0), ._, ._ }, |
| 130515 | .{ ._, ._c, .cl, ._, ._, ._, ._ }, |
| 130516 | .{ .@"1:", ._, .mov, .tmp4q, .leasia(.tmp1q, .@"8", .tmp2, .add_src0_elem_size), ._, ._ }, |
| 130517 | .{ ._, ._, .sbb, .tmp4q, .leasia(.tmp3q, .@"8", .tmp2, .add_src0_elem_size), ._, ._ }, |
| 130518 | .{ ._, ._c, .in, .tmp2p, ._, ._, ._ }, |
| 130519 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| 130520 | .{ ._, ._nb, .cmov, .tmp1p, .tmp3p, ._, ._ }, |
| 130521 | .{ ._, ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 130522 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130523 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| 130524 | .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| 130525 | .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ }, |
| 130526 | } }, |
| 130527 | }, .{ |
| 130528 | .required_features = .{ .@"64bit", null, null, null }, |
| 130529 | .dst_constraints = .{ .{ .remainder_unsigned_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 130530 | .src_constraints = .{ .{ .scalar_remainder_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 130531 | .patterns = &.{ |
| 130532 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130533 | }, |
| 130534 | .extra_temps = .{ |
| 130535 | .{ .type = .u32, .kind = .{ .reg = .rdi } }, |
| 130536 | .{ .type = .usize, .kind = .{ .reg = .rsi } }, |
| 130537 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| 130538 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 130539 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 130540 | .unused, |
| 130541 | .unused, |
| 130542 | .unused, |
| 130543 | .unused, |
| 130544 | .unused, |
| 130545 | .unused, |
| 130546 | }, |
| 130547 | .dst_temps = .{ .mem, .unused }, |
| 130548 | .clobbers = .{ .eflags = true }, |
| 130549 | .each = .{ .once = &.{ |
| 130550 | .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 130551 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 130552 | .{ .@"0:", ._, .mov, .tmp2p, .sa(.dst0, .sub_size_div_8), ._, ._ }, |
| 130553 | .{ ._, ._, .lea, .tmp3p, .memi(.src0, .tmp0), ._, ._ }, |
| 130554 | .{ ._, ._c, .cl, ._, ._, ._, ._ }, |
| 130555 | .{ .@"1:", ._, .mov, .tmp4q, .leasia(.tmp1q, .@"8", .tmp2, .add_src0_elem_size), ._, ._ }, |
| 130556 | .{ ._, ._, .sbb, .tmp4q, .leasia(.tmp3q, .@"8", .tmp2, .add_src0_elem_size), ._, ._ }, |
| 130557 | .{ ._, ._c, .in, .tmp2p, ._, ._, ._ }, |
| 130558 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| 130559 | .{ ._, ._b, .j, .@"1f", ._, ._, ._ }, |
| 130560 | .{ ._, ._, .mov, .tmp1p, .tmp3p, ._, ._ }, |
| 130561 | .{ .@"1:", ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 130562 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130563 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| 130564 | .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| 130565 | .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ }, |
| 130566 | } }, |
| 130567 | }, .{ |
| 130568 | .required_features = .{ .f16c, null, null, null }, |
| 130569 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 130570 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 130571 | .patterns = &.{ |
| 130572 | .{ .src = .{ .mem, .none, .none } }, |
| 130573 | .{ .src = .{ .to_sse, .none, .none } }, |
| 130574 | }, |
| 130575 | .extra_temps = .{ |
| 130576 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 130577 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 130578 | .unused, |
| 130579 | .unused, |
| 130580 | .unused, |
| 130581 | .unused, |
| 130582 | .unused, |
| 130583 | .unused, |
| 130584 | .unused, |
| 130585 | .unused, |
| 130586 | .unused, |
| 130587 | }, |
| 130588 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 130589 | .each = .{ .once = &.{ |
| 130590 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 130591 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 130592 | .{ ._, .v_ss, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130593 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130594 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130595 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 130596 | } }, |
| 130597 | }, .{ |
| 130598 | .required_features = .{ .f16c, null, null, null }, |
| 130599 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 130600 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 130601 | .patterns = &.{ |
| 130602 | .{ .src = .{ .mem, .none, .none } }, |
| 130603 | .{ .src = .{ .to_sse, .none, .none } }, |
| 130604 | }, |
| 130605 | .extra_temps = .{ |
| 130606 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 130607 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 130608 | .unused, |
| 130609 | .unused, |
| 130610 | .unused, |
| 130611 | .unused, |
| 130612 | .unused, |
| 130613 | .unused, |
| 130614 | .unused, |
| 130615 | .unused, |
| 130616 | .unused, |
| 130617 | }, |
| 130618 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 130619 | .each = .{ .once = &.{ |
| 130620 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 130621 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 130622 | .{ ._, .v_ss, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130623 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130624 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130625 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 130626 | .{ ._, .v_ss, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130627 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130628 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130629 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 130630 | } }, |
| 130631 | }, .{ |
| 130632 | .required_features = .{ .f16c, null, null, null }, |
| 130633 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 130634 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 130635 | .patterns = &.{ |
| 130636 | .{ .src = .{ .mem, .none, .none } }, |
| 130637 | .{ .src = .{ .to_sse, .none, .none } }, |
| 130638 | }, |
| 130639 | .extra_temps = .{ |
| 130640 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 130641 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 130642 | .unused, |
| 130643 | .unused, |
| 130644 | .unused, |
| 130645 | .unused, |
| 130646 | .unused, |
| 130647 | .unused, |
| 130648 | .unused, |
| 130649 | .unused, |
| 130650 | .unused, |
| 130651 | }, |
| 130652 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 130653 | .each = .{ .once = &.{ |
| 130654 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 130655 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 130656 | .{ ._, .v_ps, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130657 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130658 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130659 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 130660 | .{ ._, .v_ss, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130661 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130662 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130663 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 130664 | } }, |
| 130665 | }, .{ |
| 130666 | .required_features = .{ .f16c, null, null, null }, |
| 130667 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 130668 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 130669 | .patterns = &.{ |
| 130670 | .{ .src = .{ .to_sse, .none, .none } }, |
| 130671 | }, |
| 130672 | .extra_temps = .{ |
| 130673 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 130674 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 130675 | .{ .type = .vector_8_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 130676 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130677 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130678 | .unused, |
| 130679 | .unused, |
| 130680 | .unused, |
| 130681 | .unused, |
| 130682 | .unused, |
| 130683 | .unused, |
| 130684 | }, |
| 130685 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 130686 | .each = .{ .once = &.{ |
| 130687 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 130688 | .{ ._, .v_ps, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 130689 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 130690 | .{ ._, .v_ps, .@"or", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 130691 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 130692 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 130693 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130694 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 130695 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 130696 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 130697 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130698 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 130699 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 130700 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 130701 | .{ ._, .v_ss, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130702 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 130703 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 130704 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 130705 | } }, |
| 130706 | }, .{ |
| 130707 | .required_features = .{ .f16c, null, null, null }, |
| 130708 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 130709 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 130710 | .patterns = &.{ |
| 130711 | .{ .src = .{ .mem, .none, .none } }, |
| 130712 | .{ .src = .{ .to_sse, .none, .none } }, |
| 130713 | }, |
| 130714 | .extra_temps = .{ |
| 130715 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130716 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130717 | .unused, |
| 130718 | .unused, |
| 130719 | .unused, |
| 130720 | .unused, |
| 130721 | .unused, |
| 130722 | .unused, |
| 130723 | .unused, |
| 130724 | .unused, |
| 130725 | .unused, |
| 130726 | }, |
| 130727 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 130728 | .each = .{ .once = &.{ |
| 130729 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| 130730 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 130731 | .{ ._, .v_ps, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130732 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130733 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130734 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 130735 | .{ ._, .v_ps, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130736 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130737 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130738 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 130739 | .{ ._, .v_ss, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130740 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130741 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130742 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 130743 | } }, |
| 130744 | }, .{ |
| 130745 | .required_features = .{ .f16c, null, null, null }, |
| 130746 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 130747 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 130748 | .patterns = &.{ |
| 130749 | .{ .src = .{ .to_sse, .none, .none } }, |
| 130750 | }, |
| 130751 | .extra_temps = .{ |
| 130752 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 130753 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 130754 | .{ .type = .vector_16_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 130755 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130756 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130757 | .unused, |
| 130758 | .unused, |
| 130759 | .unused, |
| 130760 | .unused, |
| 130761 | .unused, |
| 130762 | .unused, |
| 130763 | }, |
| 130764 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 130765 | .each = .{ .once = &.{ |
| 130766 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 130767 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 130768 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 130769 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 130770 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 130771 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 130772 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 130773 | .{ ._, .v_ps, .min, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 130774 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| 130775 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| 130776 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 130777 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130778 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 130779 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 130780 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 130781 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130782 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 130783 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 130784 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 130785 | .{ ._, .v_ss, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130786 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 130787 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 130788 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 130789 | } }, |
| 130790 | }, .{ |
| 130791 | .required_features = .{ .f16c, null, null, null }, |
| 130792 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 130793 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 130794 | .patterns = &.{ |
| 130795 | .{ .src = .{ .to_sse, .none, .none } }, |
| 130796 | }, |
| 130797 | .extra_temps = .{ |
| 130798 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130799 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130800 | .unused, |
| 130801 | .unused, |
| 130802 | .unused, |
| 130803 | .unused, |
| 130804 | .unused, |
| 130805 | .unused, |
| 130806 | .unused, |
| 130807 | .unused, |
| 130808 | .unused, |
| 130809 | }, |
| 130810 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 130811 | .each = .{ .once = &.{ |
| 130812 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 130813 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| 130814 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| 130815 | .{ ._, .v_ps, .min, .tmp1y, .dst0y, .tmp0y, ._ }, |
| 130816 | .{ ._, .v_ps, .cmp, .tmp0y, .tmp0y, .tmp0y, .vp(.ord) }, |
| 130817 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp1y, .tmp0y }, |
| 130818 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 130819 | .{ ._, .v_ps, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130820 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130821 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130822 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 130823 | .{ ._, .v_ps, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130824 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130825 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130826 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 130827 | .{ ._, .v_ss, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130828 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130829 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130830 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 130831 | } }, |
| 130832 | }, .{ |
| 130833 | .required_features = .{ .avx512f, null, null, null }, |
| 130834 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 130835 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 130836 | .patterns = &.{ |
| 130837 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130838 | }, |
| 130839 | .extra_temps = .{ |
| 130840 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 130841 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 130842 | .{ .type = .vector_32_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 130843 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130844 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130845 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130846 | .unused, |
| 130847 | .unused, |
| 130848 | .unused, |
| 130849 | .unused, |
| 130850 | .unused, |
| 130851 | }, |
| 130852 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 130853 | .each = .{ .once = &.{ |
| 130854 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 130855 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 130856 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 130857 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 130858 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 130859 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 130860 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 130861 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 130862 | .{ ._, .v_f128, .extract, .tmp4x, .tmp3y, .ui(1), ._ }, |
| 130863 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 130864 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 130865 | .{ ._, .v_ps, .min, .tmp5y, .tmp3y, .tmp4y, ._ }, |
| 130866 | .{ ._, .v_ps, .cmp, .tmp4y, .tmp4y, .tmp4y, .vp(.ord) }, |
| 130867 | .{ ._, .v_ps, .blendv, .tmp3y, .tmp3y, .tmp5y, .tmp4y }, |
| 130868 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 130869 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 130870 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 130871 | .{ ._, .v_ps, .min, .tmp5y, .dst0y, .tmp4y, ._ }, |
| 130872 | .{ ._, .v_ps, .cmp, .tmp4y, .tmp4y, .tmp4y, .vp(.ord) }, |
| 130873 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp5y, .tmp4y }, |
| 130874 | .{ ._, .v_ps, .min, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 130875 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| 130876 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| 130877 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 130878 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130879 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 130880 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 130881 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 130882 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130883 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 130884 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 130885 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 130886 | .{ ._, .v_ss, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 130887 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 130888 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 130889 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 130890 | } }, |
| 130891 | }, .{ |
| 130892 | .required_features = .{ .avx512f, null, null, null }, |
| 130893 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 130894 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 130895 | .patterns = &.{ |
| 130896 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130897 | }, |
| 130898 | .extra_temps = .{ |
| 130899 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130900 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130901 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130902 | .unused, |
| 130903 | .unused, |
| 130904 | .unused, |
| 130905 | .unused, |
| 130906 | .unused, |
| 130907 | .unused, |
| 130908 | .unused, |
| 130909 | .unused, |
| 130910 | }, |
| 130911 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 130912 | .each = .{ .once = &.{ |
| 130913 | .{ ._, .v_ps, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 130914 | .{ ._, .v_ps, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 130915 | .{ ._, .v_f128, .extract, .tmp1x, .tmp0y, .ui(1), ._ }, |
| 130916 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| 130917 | .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ }, |
| 130918 | .{ ._, .v_ps, .min, .tmp2y, .tmp0y, .tmp1y, ._ }, |
| 130919 | .{ ._, .v_ps, .cmp, .tmp1y, .tmp1y, .tmp1y, .vp(.ord) }, |
| 130920 | .{ ._, .v_ps, .blendv, .tmp0y, .tmp0y, .tmp2y, .tmp1y }, |
| 130921 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 130922 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 130923 | .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ }, |
| 130924 | .{ ._, .v_ps, .min, .tmp2y, .dst0y, .tmp1y, ._ }, |
| 130925 | .{ ._, .v_ps, .cmp, .tmp1y, .tmp1y, .tmp1y, .vp(.ord) }, |
| 130926 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp2y, .tmp1y }, |
| 130927 | .{ ._, .v_ps, .min, .tmp1y, .dst0y, .tmp0y, ._ }, |
| 130928 | .{ ._, .v_ps, .cmp, .tmp0y, .tmp0y, .tmp0y, .vp(.ord) }, |
| 130929 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp1y, .tmp0y }, |
| 130930 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 130931 | .{ ._, .v_ps, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130932 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130933 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130934 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 130935 | .{ ._, .v_ps, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130936 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130937 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130938 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 130939 | .{ ._, .v_ss, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 130940 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 130941 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 130942 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 130943 | } }, |
| 130944 | }, .{ |
| 130945 | .required_features = .{ .f16c, null, null, null }, |
| 130946 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 130947 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 130948 | .patterns = &.{ |
| 130949 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130950 | }, |
| 130951 | .extra_temps = .{ |
| 130952 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 130953 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130954 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 130955 | .unused, |
| 130956 | .unused, |
| 130957 | .unused, |
| 130958 | .unused, |
| 130959 | .unused, |
| 130960 | .unused, |
| 130961 | .unused, |
| 130962 | .unused, |
| 130963 | }, |
| 130964 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 130965 | .clobbers = .{ .eflags = true }, |
| 130966 | .each = .{ .once = &.{ |
| 130967 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 130968 | .{ ._, .v_ps, .cvtph2, .dst0y, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 130969 | .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| 130970 | .{ ._, .v_ps, .min, .tmp2y, .dst0y, .tmp1y, ._ }, |
| 130971 | .{ ._, .v_ps, .cmp, .tmp1y, .tmp1y, .tmp1y, .vp(.ord) }, |
| 130972 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp2y, .tmp1y }, |
| 130973 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 130974 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 130975 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 130976 | .{ ._, .v_ps, .min, .tmp2x, .dst0x, .tmp1x, ._ }, |
| 130977 | .{ ._, .v_ps, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| 130978 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| 130979 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 130980 | .{ ._, .v_ps, .min, .tmp2x, .dst0x, .tmp1x, ._ }, |
| 130981 | .{ ._, .v_ps, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| 130982 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| 130983 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 130984 | .{ ._, .v_ss, .min, .tmp2x, .dst0x, .tmp1x, ._ }, |
| 130985 | .{ ._, .v_ss, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| 130986 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| 130987 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 130988 | } }, |
| 130989 | }, .{ |
| 130990 | .required_features = .{ .avx512f, null, null, null }, |
| 130991 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 130992 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 130993 | .patterns = &.{ |
| 130994 | .{ .src = .{ .to_mem, .none, .none } }, |
| 130995 | }, |
| 130996 | .extra_temps = .{ |
| 130997 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 130998 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 130999 | .{ .type = .vector_32_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 131000 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 131001 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 131002 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 131003 | .unused, |
| 131004 | .unused, |
| 131005 | .unused, |
| 131006 | .unused, |
| 131007 | .unused, |
| 131008 | }, |
| 131009 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 131010 | .clobbers = .{ .eflags = true }, |
| 131011 | .each = .{ .once = &.{ |
| 131012 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 131013 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 131014 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 131015 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 131016 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 131017 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 131018 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 131019 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 131020 | .{ ._, ._, .mov, .tmp0d, .sia(-80, .src0, .add_size), ._, ._ }, |
| 131021 | .{ ._, .v_f128, .extract, .tmp4x, .tmp3y, .ui(1), ._ }, |
| 131022 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 131023 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 131024 | .{ ._, .v_ps, .min, .tmp5y, .tmp3y, .tmp4y, ._ }, |
| 131025 | .{ ._, .v_ps, .cmp, .tmp4y, .tmp4y, .tmp4y, .vp(.ord) }, |
| 131026 | .{ ._, .v_ps, .blendv, .tmp3y, .tmp3y, .tmp5y, .tmp4y }, |
| 131027 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 131028 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 131029 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 131030 | .{ ._, .v_ps, .min, .tmp5y, .dst0y, .tmp4y, ._ }, |
| 131031 | .{ ._, .v_ps, .cmp, .tmp4y, .tmp4y, .tmp4y, .vp(.ord) }, |
| 131032 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp5y, .tmp4y }, |
| 131033 | .{ ._, .v_ps, .min, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 131034 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| 131035 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| 131036 | .{ .@"0:", .v_ps, .cvtph2, .tmp3y, .memi(.src0x, .tmp0), ._, ._ }, |
| 131037 | .{ ._, .v_ps, .min, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 131038 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| 131039 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| 131040 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 131041 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 131042 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 131043 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131044 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131045 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131046 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 131047 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131048 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131049 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131050 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 131051 | .{ ._, .v_ss, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131052 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131053 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131054 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 131055 | } }, |
| 131056 | }, .{ |
| 131057 | .required_features = .{ .f16c, null, null, null }, |
| 131058 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 131059 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 131060 | .patterns = &.{ |
| 131061 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131062 | }, |
| 131063 | .extra_temps = .{ |
| 131064 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 131065 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 131066 | .{ .type = .vector_16_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 131067 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 131068 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 131069 | .unused, |
| 131070 | .unused, |
| 131071 | .unused, |
| 131072 | .unused, |
| 131073 | .unused, |
| 131074 | .unused, |
| 131075 | }, |
| 131076 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 131077 | .clobbers = .{ .eflags = true }, |
| 131078 | .each = .{ .once = &.{ |
| 131079 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 131080 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 131081 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 131082 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 131083 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 131084 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 131085 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 131086 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 131087 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 131088 | .{ ._, .v_ps, .min, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 131089 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| 131090 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| 131091 | .{ .@"0:", .v_ps, .cvtph2, .tmp3y, .memi(.src0x, .tmp0), ._, ._ }, |
| 131092 | .{ ._, .v_ps, .min, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 131093 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| 131094 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| 131095 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 131096 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 131097 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 131098 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131099 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131100 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131101 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 131102 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131103 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131104 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131105 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 131106 | .{ ._, .v_ss, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131107 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131108 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131109 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 131110 | } }, |
| 131111 | }, .{ |
| 131112 | .required_features = .{ .avx, null, null, null }, |
| 131113 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 131114 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 131115 | .patterns = &.{ |
| 131116 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131117 | }, |
| 131118 | .call_frame = .{ .alignment = .@"16" }, |
| 131119 | .extra_temps = .{ |
| 131120 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 131121 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 131122 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fminh" } } }, |
| 131123 | .unused, |
| 131124 | .unused, |
| 131125 | .unused, |
| 131126 | .unused, |
| 131127 | .unused, |
| 131128 | .unused, |
| 131129 | .unused, |
| 131130 | .unused, |
| 131131 | }, |
| 131132 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 131133 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 131134 | .each = .{ .once = &.{ |
| 131135 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .dst0x, ._ }, |
| 131136 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 131137 | .{ ._, .vp_w, .insr, .dst0x, .dst0x, .memad(.src0w, .add_unaligned_size, -2), .ui(0) }, |
| 131138 | .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| 131139 | .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memi(.src0w, .tmp0), .ui(0) }, |
| 131140 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 131141 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 131142 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 131143 | } }, |
| 131144 | }, .{ |
| 131145 | .required_features = .{ .sse2, null, null, null }, |
| 131146 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 131147 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 131148 | .patterns = &.{ |
| 131149 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131150 | }, |
| 131151 | .call_frame = .{ .alignment = .@"16" }, |
| 131152 | .extra_temps = .{ |
| 131153 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 131154 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 131155 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fminh" } } }, |
| 131156 | .unused, |
| 131157 | .unused, |
| 131158 | .unused, |
| 131159 | .unused, |
| 131160 | .unused, |
| 131161 | .unused, |
| 131162 | .unused, |
| 131163 | .unused, |
| 131164 | }, |
| 131165 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 131166 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 131167 | .each = .{ .once = &.{ |
| 131168 | .{ ._, .p_, .xor, .dst0x, .dst0x, ._, ._ }, |
| 131169 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 131170 | .{ ._, .p_w, .insr, .dst0x, .memad(.src0w, .add_unaligned_size, -2), .ui(0), ._ }, |
| 131171 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 131172 | .{ ._, .p_w, .insr, .tmp1x, .memi(.src0w, .tmp0), .ui(0), ._ }, |
| 131173 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 131174 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 131175 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 131176 | } }, |
| 131177 | }, .{ |
| 131178 | .required_features = .{ .sse, null, null, null }, |
| 131179 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 131180 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 131181 | .patterns = &.{ |
| 131182 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131183 | }, |
| 131184 | .call_frame = .{ .alignment = .@"16" }, |
| 131185 | .extra_temps = .{ |
| 131186 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 131187 | .{ .type = .f16, .kind = .{ .reg = .ax } }, |
| 131188 | .{ .type = .f32, .kind = .mem }, |
| 131189 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 131190 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fminh" } } }, |
| 131191 | .unused, |
| 131192 | .unused, |
| 131193 | .unused, |
| 131194 | .unused, |
| 131195 | .unused, |
| 131196 | .unused, |
| 131197 | }, |
| 131198 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 131199 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 131200 | .each = .{ .once = &.{ |
| 131201 | .{ ._, ._ps, .xor, .dst0x, .dst0x, ._, ._ }, |
| 131202 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 131203 | .{ ._, ._, .movzx, .tmp1d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 131204 | .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ }, |
| 131205 | .{ ._, ._ss, .mov, .dst0x, .mem(.tmp2d), ._, ._ }, |
| 131206 | .{ .@"0:", ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 131207 | .{ ._, ._ss, .mov, .tmp3x, .memi(.src0d, .tmp0), ._, ._ }, |
| 131208 | .{ ._, ._, .call, .tmp4d, ._, ._, ._ }, |
| 131209 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 131210 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 131211 | } }, |
| 131212 | }, .{ |
| 131213 | .required_features = .{ .avx, null, null, null }, |
| 131214 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131215 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 131216 | .patterns = &.{ |
| 131217 | .{ .src = .{ .to_sse, .none, .none } }, |
| 131218 | }, |
| 131219 | .extra_temps = .{ |
| 131220 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131221 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131222 | .unused, |
| 131223 | .unused, |
| 131224 | .unused, |
| 131225 | .unused, |
| 131226 | .unused, |
| 131227 | .unused, |
| 131228 | .unused, |
| 131229 | .unused, |
| 131230 | .unused, |
| 131231 | }, |
| 131232 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 131233 | .each = .{ .once = &.{ |
| 131234 | .{ ._, .v_ps, .shuf, .tmp0x, .src0x, .src0x, .ui(0b01) }, |
| 131235 | .{ ._, .v_ss, .min, .tmp1x, .src0x, .tmp0x, ._ }, |
| 131236 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 131237 | .{ ._, .v_ps, .blendv, .dst0x, .src0x, .tmp1x, .tmp0x }, |
| 131238 | } }, |
| 131239 | }, .{ |
| 131240 | .required_features = .{ .sse4_1, null, null, null }, |
| 131241 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131242 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 131243 | .patterns = &.{ |
| 131244 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 131245 | }, |
| 131246 | .extra_temps = .{ |
| 131247 | .{ .type = .vector_4_f32, .kind = .{ .reg = .xmm0 } }, |
| 131248 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131249 | .unused, |
| 131250 | .unused, |
| 131251 | .unused, |
| 131252 | .unused, |
| 131253 | .unused, |
| 131254 | .unused, |
| 131255 | .unused, |
| 131256 | .unused, |
| 131257 | .unused, |
| 131258 | }, |
| 131259 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 131260 | .each = .{ .once = &.{ |
| 131261 | .{ ._, ._ps, .mova, .tmp0x, .src0x, ._, ._ }, |
| 131262 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 131263 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| 131264 | .{ ._, ._ss, .min, .tmp1x, .tmp0x, ._, ._ }, |
| 131265 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.ord), ._ }, |
| 131266 | .{ ._, ._ps, .blendv, .dst0x, .tmp1x, .tmp0x, ._ }, |
| 131267 | } }, |
| 131268 | }, .{ |
| 131269 | .required_features = .{ .sse, null, null, null }, |
| 131270 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131271 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 131272 | .patterns = &.{ |
| 131273 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 131274 | }, |
| 131275 | .extra_temps = .{ |
| 131276 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131277 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131278 | .unused, |
| 131279 | .unused, |
| 131280 | .unused, |
| 131281 | .unused, |
| 131282 | .unused, |
| 131283 | .unused, |
| 131284 | .unused, |
| 131285 | .unused, |
| 131286 | .unused, |
| 131287 | }, |
| 131288 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 131289 | .each = .{ .once = &.{ |
| 131290 | .{ ._, ._ps, .mova, .tmp0x, .src0x, ._, ._ }, |
| 131291 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 131292 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| 131293 | .{ ._, ._ss, .min, .tmp1x, .tmp0x, ._, ._ }, |
| 131294 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.unord), ._ }, |
| 131295 | .{ ._, ._ps, .@"and", .dst0x, .tmp0x, ._, ._ }, |
| 131296 | .{ ._, ._ps, .andn, .tmp0x, .tmp1x, ._, ._ }, |
| 131297 | .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ }, |
| 131298 | } }, |
| 131299 | }, .{ |
| 131300 | .required_features = .{ .avx, null, null, null }, |
| 131301 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131302 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 131303 | .patterns = &.{ |
| 131304 | .{ .src = .{ .to_sse, .none, .none } }, |
| 131305 | }, |
| 131306 | .extra_temps = .{ |
| 131307 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131308 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131309 | .unused, |
| 131310 | .unused, |
| 131311 | .unused, |
| 131312 | .unused, |
| 131313 | .unused, |
| 131314 | .unused, |
| 131315 | .unused, |
| 131316 | .unused, |
| 131317 | .unused, |
| 131318 | }, |
| 131319 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 131320 | .each = .{ .once = &.{ |
| 131321 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 131322 | .{ ._, .v_ss, .min, .tmp1x, .src0x, .tmp0x, ._ }, |
| 131323 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 131324 | .{ ._, .v_ps, .blendv, .tmp0x, .src0x, .tmp1x, .tmp0x }, |
| 131325 | .{ ._, .v_ps, .shuf, .dst0x, .src0x, .src0x, .ui(0b01) }, |
| 131326 | .{ ._, .v_ss, .min, .tmp1x, .tmp0x, .dst0x, ._ }, |
| 131327 | .{ ._, .v_ss, .cmp, .dst0x, .dst0x, .dst0x, .vp(.ord) }, |
| 131328 | .{ ._, .v_ps, .blendv, .dst0x, .tmp0x, .tmp1x, .dst0x }, |
| 131329 | } }, |
| 131330 | }, .{ |
| 131331 | .required_features = .{ .sse4_1, null, null, null }, |
| 131332 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131333 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 131334 | .patterns = &.{ |
| 131335 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 131336 | }, |
| 131337 | .extra_temps = .{ |
| 131338 | .{ .type = .vector_4_f32, .kind = .{ .reg = .xmm0 } }, |
| 131339 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131340 | .unused, |
| 131341 | .unused, |
| 131342 | .unused, |
| 131343 | .unused, |
| 131344 | .unused, |
| 131345 | .unused, |
| 131346 | .unused, |
| 131347 | .unused, |
| 131348 | .unused, |
| 131349 | }, |
| 131350 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 131351 | .each = .{ .once = &.{ |
| 131352 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 131353 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 131354 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| 131355 | .{ ._, ._ss, .min, .tmp1x, .tmp0x, ._, ._ }, |
| 131356 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.unord), ._ }, |
| 131357 | .{ ._, ._ps, .blendv, .tmp1x, .src0x, .tmp0x, ._ }, |
| 131358 | .{ ._, ._ps, .shuf, .dst0x, .src0x, .ui(0b01), ._ }, |
| 131359 | .{ ._, ._ps, .mova, .tmp0x, .tmp1x, ._, ._ }, |
| 131360 | .{ ._, ._ps, .mova, .tmp1x, .dst0x, ._, ._ }, |
| 131361 | .{ ._, ._ss, .min, .tmp1x, .tmp0x, ._, ._ }, |
| 131362 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.ord), ._ }, |
| 131363 | .{ ._, ._ps, .blendv, .dst0x, .tmp1x, .tmp0x, ._ }, |
| 131364 | } }, |
| 131365 | }, .{ |
| 131366 | .required_features = .{ .sse, null, null, null }, |
| 131367 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131368 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 131369 | .patterns = &.{ |
| 131370 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 131371 | }, |
| 131372 | .extra_temps = .{ |
| 131373 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131374 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131375 | .unused, |
| 131376 | .unused, |
| 131377 | .unused, |
| 131378 | .unused, |
| 131379 | .unused, |
| 131380 | .unused, |
| 131381 | .unused, |
| 131382 | .unused, |
| 131383 | .unused, |
| 131384 | }, |
| 131385 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 131386 | .each = .{ .once = &.{ |
| 131387 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 131388 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 131389 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| 131390 | .{ ._, ._ss, .min, .tmp1x, .tmp0x, ._, ._ }, |
| 131391 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.ord), ._ }, |
| 131392 | .{ ._, ._ps, .@"and", .tmp1x, .tmp0x, ._, ._ }, |
| 131393 | .{ ._, ._ps, .andn, .tmp0x, .dst0x, ._, ._ }, |
| 131394 | .{ ._, ._ps, .@"or", .tmp0x, .tmp1x, ._, ._ }, |
| 131395 | .{ ._, ._ps, .shuf, .dst0x, .src0x, .ui(0b01), ._ }, |
| 131396 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| 131397 | .{ ._, ._ss, .min, .tmp1x, .tmp0x, ._, ._ }, |
| 131398 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.unord), ._ }, |
| 131399 | .{ ._, ._ps, .@"and", .dst0x, .tmp0x, ._, ._ }, |
| 131400 | .{ ._, ._ps, .andn, .tmp0x, .tmp1x, ._, ._ }, |
| 131401 | .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ }, |
| 131402 | } }, |
| 131403 | }, .{ |
| 131404 | .required_features = .{ .avx, null, null, null }, |
| 131405 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131406 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 131407 | .patterns = &.{ |
| 131408 | .{ .src = .{ .to_sse, .none, .none } }, |
| 131409 | }, |
| 131410 | .extra_temps = .{ |
| 131411 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131412 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131413 | .unused, |
| 131414 | .unused, |
| 131415 | .unused, |
| 131416 | .unused, |
| 131417 | .unused, |
| 131418 | .unused, |
| 131419 | .unused, |
| 131420 | .unused, |
| 131421 | .unused, |
| 131422 | }, |
| 131423 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 131424 | .each = .{ .once = &.{ |
| 131425 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 131426 | .{ ._, .v_ps, .min, .tmp1x, .src0x, .tmp0x, ._ }, |
| 131427 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 131428 | .{ ._, .v_ps, .blendv, .dst0x, .src0x, .tmp1x, .tmp0x }, |
| 131429 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 131430 | .{ ._, .v_ss, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 131431 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 131432 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 131433 | } }, |
| 131434 | }, .{ |
| 131435 | .required_features = .{ .sse4_1, null, null, null }, |
| 131436 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131437 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 131438 | .patterns = &.{ |
| 131439 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 131440 | }, |
| 131441 | .extra_temps = .{ |
| 131442 | .{ .type = .vector_4_f32, .kind = .{ .reg = .xmm0 } }, |
| 131443 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131444 | .unused, |
| 131445 | .unused, |
| 131446 | .unused, |
| 131447 | .unused, |
| 131448 | .unused, |
| 131449 | .unused, |
| 131450 | .unused, |
| 131451 | .unused, |
| 131452 | .unused, |
| 131453 | }, |
| 131454 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 131455 | .each = .{ .once = &.{ |
| 131456 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 131457 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 131458 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| 131459 | .{ ._, ._ps, .min, .tmp1x, .tmp0x, ._, ._ }, |
| 131460 | .{ ._, ._ps, .cmp, .tmp0x, .tmp0x, .sp(.ord), ._ }, |
| 131461 | .{ ._, ._ps, .blendv, .dst0x, .tmp1x, .tmp0x, ._ }, |
| 131462 | .{ ._, ._ps, .mova, .tmp0x, .dst0x, ._, ._ }, |
| 131463 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 131464 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| 131465 | .{ ._, ._ss, .min, .tmp1x, .tmp0x, ._, ._ }, |
| 131466 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.ord), ._ }, |
| 131467 | .{ ._, ._ps, .blendv, .dst0x, .tmp1x, .tmp0x, ._ }, |
| 131468 | } }, |
| 131469 | }, .{ |
| 131470 | .required_features = .{ .sse, null, null, null }, |
| 131471 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131472 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 131473 | .patterns = &.{ |
| 131474 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 131475 | }, |
| 131476 | .extra_temps = .{ |
| 131477 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131478 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131479 | .unused, |
| 131480 | .unused, |
| 131481 | .unused, |
| 131482 | .unused, |
| 131483 | .unused, |
| 131484 | .unused, |
| 131485 | .unused, |
| 131486 | .unused, |
| 131487 | .unused, |
| 131488 | }, |
| 131489 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 131490 | .each = .{ .once = &.{ |
| 131491 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 131492 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 131493 | .{ ._, ._ps, .mova, .tmp1x, .src0x, ._, ._ }, |
| 131494 | .{ ._, ._ps, .min, .tmp1x, .tmp0x, ._, ._ }, |
| 131495 | .{ ._, ._ps, .cmp, .tmp0x, .tmp0x, .sp(.unord), ._ }, |
| 131496 | .{ ._, ._ps, .@"and", .dst0x, .tmp0x, ._, ._ }, |
| 131497 | .{ ._, ._ps, .andn, .tmp0x, .tmp1x, ._, ._ }, |
| 131498 | .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ }, |
| 131499 | .{ ._, ._ps, .mova, .tmp0x, .dst0x, ._, ._ }, |
| 131500 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 131501 | .{ ._, ._ps, .mova, .tmp1x, .dst0x, ._, ._ }, |
| 131502 | .{ ._, ._ss, .min, .tmp1x, .tmp0x, ._, ._ }, |
| 131503 | .{ ._, ._ss, .cmp, .tmp0x, .tmp0x, .sp(.unord), ._ }, |
| 131504 | .{ ._, ._ps, .@"and", .dst0x, .tmp0x, ._, ._ }, |
| 131505 | .{ ._, ._ps, .andn, .tmp0x, .tmp1x, ._, ._ }, |
| 131506 | .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ }, |
| 131507 | } }, |
| 131508 | }, .{ |
| 131509 | .required_features = .{ .avx, null, null, null }, |
| 131510 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131511 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 131512 | .patterns = &.{ |
| 131513 | .{ .src = .{ .to_sse, .none, .none } }, |
| 131514 | }, |
| 131515 | .extra_temps = .{ |
| 131516 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 131517 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 131518 | .{ .type = .vector_8_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 131519 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131520 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131521 | .unused, |
| 131522 | .unused, |
| 131523 | .unused, |
| 131524 | .unused, |
| 131525 | .unused, |
| 131526 | .unused, |
| 131527 | }, |
| 131528 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 131529 | .each = .{ .once = &.{ |
| 131530 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 131531 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 131532 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 131533 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 131534 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 131535 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131536 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131537 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131538 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 131539 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131540 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131541 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131542 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 131543 | .{ ._, .v_ss, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131544 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131545 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131546 | } }, |
| 131547 | }, .{ |
| 131548 | .required_features = .{ .avx, null, null, null }, |
| 131549 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131550 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 131551 | .patterns = &.{ |
| 131552 | .{ .src = .{ .to_sse, .none, .none } }, |
| 131553 | }, |
| 131554 | .extra_temps = .{ |
| 131555 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131556 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131557 | .unused, |
| 131558 | .unused, |
| 131559 | .unused, |
| 131560 | .unused, |
| 131561 | .unused, |
| 131562 | .unused, |
| 131563 | .unused, |
| 131564 | .unused, |
| 131565 | .unused, |
| 131566 | }, |
| 131567 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 131568 | .each = .{ .once = &.{ |
| 131569 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 131570 | .{ ._, .v_ps, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 131571 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 131572 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 131573 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 131574 | .{ ._, .v_ps, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 131575 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 131576 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 131577 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 131578 | .{ ._, .v_ss, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 131579 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 131580 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 131581 | } }, |
| 131582 | }, .{ |
| 131583 | .required_features = .{ .avx512f, null, null, null }, |
| 131584 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131585 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 131586 | .patterns = &.{ |
| 131587 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131588 | }, |
| 131589 | .extra_temps = .{ |
| 131590 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 131591 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 131592 | .{ .type = .vector_16_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 131593 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 131594 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 131595 | .unused, |
| 131596 | .unused, |
| 131597 | .unused, |
| 131598 | .unused, |
| 131599 | .unused, |
| 131600 | .unused, |
| 131601 | }, |
| 131602 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 131603 | .each = .{ .once = &.{ |
| 131604 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 131605 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 131606 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 131607 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 131608 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 131609 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 131610 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 131611 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 131612 | .{ ._, .v_ps, .min, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 131613 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| 131614 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| 131615 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 131616 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131617 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131618 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131619 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 131620 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131621 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131622 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131623 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 131624 | .{ ._, .v_ss, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131625 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131626 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131627 | } }, |
| 131628 | }, .{ |
| 131629 | .required_features = .{ .avx512f, null, null, null }, |
| 131630 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131631 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 131632 | .patterns = &.{ |
| 131633 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131634 | }, |
| 131635 | .extra_temps = .{ |
| 131636 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131637 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131638 | .unused, |
| 131639 | .unused, |
| 131640 | .unused, |
| 131641 | .unused, |
| 131642 | .unused, |
| 131643 | .unused, |
| 131644 | .unused, |
| 131645 | .unused, |
| 131646 | .unused, |
| 131647 | }, |
| 131648 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 131649 | .each = .{ .once = &.{ |
| 131650 | .{ ._, .v_ps, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 131651 | .{ ._, .v_ps, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 131652 | .{ ._, .v_ps, .min, .tmp1y, .dst0y, .tmp0y, ._ }, |
| 131653 | .{ ._, .v_ps, .cmp, .tmp0y, .tmp0y, .tmp0y, .vp(.ord) }, |
| 131654 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp1y, .tmp0y }, |
| 131655 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 131656 | .{ ._, .v_ps, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 131657 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 131658 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 131659 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 131660 | .{ ._, .v_ps, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 131661 | .{ ._, .v_ps, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 131662 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 131663 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 131664 | .{ ._, .v_ss, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 131665 | .{ ._, .v_ss, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 131666 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 131667 | } }, |
| 131668 | }, .{ |
| 131669 | .required_features = .{ .avx, null, null, null }, |
| 131670 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131671 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 131672 | .patterns = &.{ |
| 131673 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131674 | }, |
| 131675 | .extra_temps = .{ |
| 131676 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 131677 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131678 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131679 | .unused, |
| 131680 | .unused, |
| 131681 | .unused, |
| 131682 | .unused, |
| 131683 | .unused, |
| 131684 | .unused, |
| 131685 | .unused, |
| 131686 | .unused, |
| 131687 | }, |
| 131688 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 131689 | .clobbers = .{ .eflags = true }, |
| 131690 | .each = .{ .once = &.{ |
| 131691 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 131692 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 131693 | .{ .@"0:", .v_ps, .mova, .tmp1y, .memi(.src0y, .tmp0), ._, ._ }, |
| 131694 | .{ ._, .v_ps, .min, .tmp2y, .dst0y, .tmp1y, ._ }, |
| 131695 | .{ ._, .v_ps, .cmp, .tmp1y, .tmp1y, .tmp1y, .vp(.ord) }, |
| 131696 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp2y, .tmp1y }, |
| 131697 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 131698 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 131699 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 131700 | .{ ._, .v_ps, .min, .tmp2x, .dst0x, .tmp1x, ._ }, |
| 131701 | .{ ._, .v_ps, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| 131702 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| 131703 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 131704 | .{ ._, .v_ps, .min, .tmp2x, .dst0x, .tmp1x, ._ }, |
| 131705 | .{ ._, .v_ps, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| 131706 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| 131707 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 131708 | .{ ._, .v_ss, .min, .tmp2x, .dst0x, .tmp1x, ._ }, |
| 131709 | .{ ._, .v_ss, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| 131710 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| 131711 | } }, |
| 131712 | }, .{ |
| 131713 | .required_features = .{ .sse4_1, null, null, null }, |
| 131714 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131715 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 131716 | .patterns = &.{ |
| 131717 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131718 | }, |
| 131719 | .extra_temps = .{ |
| 131720 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 131721 | .{ .type = .vector_4_f32, .kind = .{ .reg = .xmm0 } }, |
| 131722 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131723 | .unused, |
| 131724 | .unused, |
| 131725 | .unused, |
| 131726 | .unused, |
| 131727 | .unused, |
| 131728 | .unused, |
| 131729 | .unused, |
| 131730 | .unused, |
| 131731 | }, |
| 131732 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 131733 | .clobbers = .{ .eflags = true }, |
| 131734 | .each = .{ .once = &.{ |
| 131735 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 131736 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 131737 | .{ .@"0:", ._ps, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 131738 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| 131739 | .{ ._, ._ps, .min, .tmp2x, .tmp1x, ._, ._ }, |
| 131740 | .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ }, |
| 131741 | .{ ._, ._ps, .blendv, .dst0x, .tmp2x, .tmp1x, ._ }, |
| 131742 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 131743 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 131744 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 131745 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| 131746 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| 131747 | .{ ._, ._ps, .min, .tmp2x, .tmp1x, ._, ._ }, |
| 131748 | .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ }, |
| 131749 | .{ ._, ._ps, .blendv, .dst0x, .tmp2x, .tmp1x, ._ }, |
| 131750 | .{ ._, ._ps, .mova, .tmp1x, .dst0x, ._, ._ }, |
| 131751 | .{ ._, ._ps, .shuf, .tmp1x, .tmp1x, .ui(0b01), ._ }, |
| 131752 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| 131753 | .{ ._, ._ss, .min, .tmp2x, .tmp1x, ._, ._ }, |
| 131754 | .{ ._, ._ss, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ }, |
| 131755 | .{ ._, ._ps, .blendv, .dst0x, .tmp2x, .tmp1x, ._ }, |
| 131756 | } }, |
| 131757 | }, .{ |
| 131758 | .required_features = .{ .sse, null, null, null }, |
| 131759 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131760 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 131761 | .patterns = &.{ |
| 131762 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131763 | }, |
| 131764 | .extra_temps = .{ |
| 131765 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 131766 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131767 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131768 | .unused, |
| 131769 | .unused, |
| 131770 | .unused, |
| 131771 | .unused, |
| 131772 | .unused, |
| 131773 | .unused, |
| 131774 | .unused, |
| 131775 | .unused, |
| 131776 | }, |
| 131777 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 131778 | .clobbers = .{ .eflags = true }, |
| 131779 | .each = .{ .once = &.{ |
| 131780 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 131781 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 131782 | .{ .@"0:", ._ps, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 131783 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| 131784 | .{ ._, ._ps, .min, .tmp2x, .tmp1x, ._, ._ }, |
| 131785 | .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ }, |
| 131786 | .{ ._, ._ps, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 131787 | .{ ._, ._ps, .andn, .tmp1x, .tmp2x, ._, ._ }, |
| 131788 | .{ ._, ._ps, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 131789 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 131790 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 131791 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 131792 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| 131793 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| 131794 | .{ ._, ._ps, .min, .tmp2x, .tmp1x, ._, ._ }, |
| 131795 | .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ }, |
| 131796 | .{ ._, ._ps, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 131797 | .{ ._, ._ps, .andn, .tmp1x, .tmp2x, ._, ._ }, |
| 131798 | .{ ._, ._ps, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 131799 | .{ ._, ._ps, .mova, .tmp1x, .dst0x, ._, ._ }, |
| 131800 | .{ ._, ._ps, .shuf, .tmp1x, .tmp1x, .ui(0b01), ._ }, |
| 131801 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| 131802 | .{ ._, ._ss, .min, .tmp2x, .tmp1x, ._, ._ }, |
| 131803 | .{ ._, ._ss, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ }, |
| 131804 | .{ ._, ._ps, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 131805 | .{ ._, ._ps, .andn, .tmp1x, .tmp2x, ._, ._ }, |
| 131806 | .{ ._, ._ps, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 131807 | } }, |
| 131808 | }, .{ |
| 131809 | .required_features = .{ .avx512f, null, null, null }, |
| 131810 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131811 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 131812 | .patterns = &.{ |
| 131813 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131814 | }, |
| 131815 | .extra_temps = .{ |
| 131816 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 131817 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 131818 | .{ .type = .vector_16_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 131819 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 131820 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 131821 | .unused, |
| 131822 | .unused, |
| 131823 | .unused, |
| 131824 | .unused, |
| 131825 | .unused, |
| 131826 | .unused, |
| 131827 | }, |
| 131828 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 131829 | .clobbers = .{ .eflags = true }, |
| 131830 | .each = .{ .once = &.{ |
| 131831 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 131832 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 131833 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 131834 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 131835 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 131836 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 131837 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 131838 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 131839 | .{ ._, .v_ps, .min, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 131840 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| 131841 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| 131842 | .{ ._, ._, .mov, .tmp0d, .sia(-96, .src0, .add_size), ._, ._ }, |
| 131843 | .{ .@"0:", .v_ps, .mova, .tmp3y, .memi(.src0y, .tmp0), ._, ._ }, |
| 131844 | .{ ._, .v_ps, .min, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 131845 | .{ ._, .v_ps, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| 131846 | .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| 131847 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 131848 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 131849 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 131850 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131851 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131852 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131853 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 131854 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131855 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131856 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131857 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 131858 | .{ ._, .v_ss, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131859 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131860 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131861 | } }, |
| 131862 | }, .{ |
| 131863 | .required_features = .{ .avx, null, null, null }, |
| 131864 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131865 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 131866 | .patterns = &.{ |
| 131867 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131868 | }, |
| 131869 | .extra_temps = .{ |
| 131870 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 131871 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 131872 | .{ .type = .vector_8_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 131873 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131874 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131875 | .unused, |
| 131876 | .unused, |
| 131877 | .unused, |
| 131878 | .unused, |
| 131879 | .unused, |
| 131880 | .unused, |
| 131881 | }, |
| 131882 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 131883 | .clobbers = .{ .eflags = true }, |
| 131884 | .each = .{ .once = &.{ |
| 131885 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 131886 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 131887 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 131888 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 131889 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 131890 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 131891 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 131892 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131893 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131894 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131895 | .{ .@"0:", .v_ps, .mova, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 131896 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131897 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131898 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131899 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 131900 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 131901 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 131902 | .{ ._, .v_ps, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131903 | .{ ._, .v_ps, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131904 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131905 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 131906 | .{ ._, .v_ss, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 131907 | .{ ._, .v_ss, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 131908 | .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 131909 | } }, |
| 131910 | }, .{ |
| 131911 | .required_features = .{ .sse4_1, null, null, null }, |
| 131912 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131913 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 131914 | .patterns = &.{ |
| 131915 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131916 | }, |
| 131917 | .extra_temps = .{ |
| 131918 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 131919 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 131920 | .{ .type = .vector_4_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 131921 | .{ .type = .vector_4_f32, .kind = .{ .reg = .xmm0 } }, |
| 131922 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131923 | .unused, |
| 131924 | .unused, |
| 131925 | .unused, |
| 131926 | .unused, |
| 131927 | .unused, |
| 131928 | .unused, |
| 131929 | }, |
| 131930 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 131931 | .clobbers = .{ .eflags = true }, |
| 131932 | .each = .{ .once = &.{ |
| 131933 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 131934 | .{ ._, ._ps, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 131935 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 131936 | .{ ._, ._ps, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 131937 | .{ ._, ._ps, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 131938 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 131939 | .{ .@"0:", ._ps, .mova, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 131940 | .{ ._, ._ps, .mova, .tmp4x, .dst0x, ._, ._ }, |
| 131941 | .{ ._, ._ps, .min, .tmp4x, .tmp3x, ._, ._ }, |
| 131942 | .{ ._, ._ps, .cmp, .tmp3x, .tmp3x, .sp(.ord), ._ }, |
| 131943 | .{ ._, ._ps, .blendv, .dst0x, .tmp4x, .tmp3x, ._ }, |
| 131944 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 131945 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 131946 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 131947 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| 131948 | .{ ._, ._ps, .mova, .tmp4x, .dst0x, ._, ._ }, |
| 131949 | .{ ._, ._ps, .min, .tmp4x, .tmp3x, ._, ._ }, |
| 131950 | .{ ._, ._ps, .cmp, .tmp3x, .tmp3x, .sp(.ord), ._ }, |
| 131951 | .{ ._, ._ps, .blendv, .dst0x, .tmp4x, .tmp3x, ._ }, |
| 131952 | .{ ._, ._ps, .mova, .tmp3x, .dst0x, ._, ._ }, |
| 131953 | .{ ._, ._ps, .shuf, .tmp3x, .tmp3x, .ui(0b01), ._ }, |
| 131954 | .{ ._, ._ps, .mova, .tmp4x, .dst0x, ._, ._ }, |
| 131955 | .{ ._, ._ss, .min, .tmp4x, .tmp3x, ._, ._ }, |
| 131956 | .{ ._, ._ss, .cmp, .tmp3x, .tmp3x, .sp(.ord), ._ }, |
| 131957 | .{ ._, ._ps, .blendv, .dst0x, .tmp4x, .tmp3x, ._ }, |
| 131958 | } }, |
| 131959 | }, .{ |
| 131960 | .required_features = .{ .sse, null, null, null }, |
| 131961 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 131962 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 131963 | .patterns = &.{ |
| 131964 | .{ .src = .{ .to_mem, .none, .none } }, |
| 131965 | }, |
| 131966 | .extra_temps = .{ |
| 131967 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 131968 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 131969 | .{ .type = .vector_4_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 131970 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131971 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 131972 | .unused, |
| 131973 | .unused, |
| 131974 | .unused, |
| 131975 | .unused, |
| 131976 | .unused, |
| 131977 | .unused, |
| 131978 | }, |
| 131979 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 131980 | .clobbers = .{ .eflags = true }, |
| 131981 | .each = .{ .once = &.{ |
| 131982 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 131983 | .{ ._, ._ps, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 131984 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 131985 | .{ ._, ._ps, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 131986 | .{ ._, ._ps, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 131987 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 131988 | .{ .@"0:", ._ps, .mova, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 131989 | .{ ._, ._ps, .mova, .tmp4x, .dst0x, ._, ._ }, |
| 131990 | .{ ._, ._ps, .min, .tmp4x, .tmp3x, ._, ._ }, |
| 131991 | .{ ._, ._ps, .cmp, .tmp3x, .tmp3x, .sp(.unord), ._ }, |
| 131992 | .{ ._, ._ps, .@"and", .dst0x, .tmp3x, ._, ._ }, |
| 131993 | .{ ._, ._ps, .andn, .tmp3x, .tmp4x, ._, ._ }, |
| 131994 | .{ ._, ._ps, .@"or", .dst0x, .tmp3x, ._, ._ }, |
| 131995 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 131996 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 131997 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 131998 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| 131999 | .{ ._, ._ps, .mova, .tmp4x, .dst0x, ._, ._ }, |
| 132000 | .{ ._, ._ps, .min, .tmp4x, .tmp3x, ._, ._ }, |
| 132001 | .{ ._, ._ps, .cmp, .tmp3x, .tmp3x, .sp(.unord), ._ }, |
| 132002 | .{ ._, ._ps, .@"and", .dst0x, .tmp3x, ._, ._ }, |
| 132003 | .{ ._, ._ps, .andn, .tmp3x, .tmp4x, ._, ._ }, |
| 132004 | .{ ._, ._ps, .@"or", .dst0x, .tmp3x, ._, ._ }, |
| 132005 | .{ ._, ._ps, .mova, .tmp3x, .dst0x, ._, ._ }, |
| 132006 | .{ ._, ._ps, .shuf, .tmp3x, .tmp3x, .ui(0b01), ._ }, |
| 132007 | .{ ._, ._ps, .mova, .tmp4x, .dst0x, ._, ._ }, |
| 132008 | .{ ._, ._ss, .min, .tmp4x, .tmp3x, ._, ._ }, |
| 132009 | .{ ._, ._ss, .cmp, .tmp3x, .tmp3x, .sp(.unord), ._ }, |
| 132010 | .{ ._, ._ps, .@"and", .dst0x, .tmp3x, ._, ._ }, |
| 132011 | .{ ._, ._ps, .andn, .tmp3x, .tmp4x, ._, ._ }, |
| 132012 | .{ ._, ._ps, .@"or", .dst0x, .tmp3x, ._, ._ }, |
| 132013 | } }, |
| 132014 | }, .{ |
| 132015 | .required_features = .{ .avx, null, null, null }, |
| 132016 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132017 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 132018 | .patterns = &.{ |
| 132019 | .{ .src = .{ .to_sse, .none, .none } }, |
| 132020 | }, |
| 132021 | .extra_temps = .{ |
| 132022 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132023 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132024 | .unused, |
| 132025 | .unused, |
| 132026 | .unused, |
| 132027 | .unused, |
| 132028 | .unused, |
| 132029 | .unused, |
| 132030 | .unused, |
| 132031 | .unused, |
| 132032 | .unused, |
| 132033 | }, |
| 132034 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 132035 | .each = .{ .once = &.{ |
| 132036 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 132037 | .{ ._, .v_sd, .min, .tmp1x, .src0x, .tmp0x, ._ }, |
| 132038 | .{ ._, .v_sd, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 132039 | .{ ._, .v_pd, .blendv, .dst0x, .src0x, .tmp1x, .tmp0x }, |
| 132040 | } }, |
| 132041 | }, .{ |
| 132042 | .required_features = .{ .sse4_1, null, null, null }, |
| 132043 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132044 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 132045 | .patterns = &.{ |
| 132046 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 132047 | }, |
| 132048 | .extra_temps = .{ |
| 132049 | .{ .type = .vector_2_f64, .kind = .{ .reg = .xmm0 } }, |
| 132050 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132051 | .unused, |
| 132052 | .unused, |
| 132053 | .unused, |
| 132054 | .unused, |
| 132055 | .unused, |
| 132056 | .unused, |
| 132057 | .unused, |
| 132058 | .unused, |
| 132059 | .unused, |
| 132060 | }, |
| 132061 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 132062 | .each = .{ .once = &.{ |
| 132063 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 132064 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 132065 | .{ ._, ._pd, .mova, .tmp1x, .src0x, ._, ._ }, |
| 132066 | .{ ._, ._sd, .min, .tmp1x, .tmp0x, ._, ._ }, |
| 132067 | .{ ._, ._sd, .cmp, .tmp0x, .tmp0x, .sp(.ord), ._ }, |
| 132068 | .{ ._, ._pd, .blendv, .dst0x, .tmp1x, .tmp0x, ._ }, |
| 132069 | } }, |
| 132070 | }, .{ |
| 132071 | .required_features = .{ .sse2, null, null, null }, |
| 132072 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132073 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 132074 | .patterns = &.{ |
| 132075 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 132076 | }, |
| 132077 | .extra_temps = .{ |
| 132078 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132079 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132080 | .unused, |
| 132081 | .unused, |
| 132082 | .unused, |
| 132083 | .unused, |
| 132084 | .unused, |
| 132085 | .unused, |
| 132086 | .unused, |
| 132087 | .unused, |
| 132088 | .unused, |
| 132089 | }, |
| 132090 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 132091 | .each = .{ .once = &.{ |
| 132092 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 132093 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 132094 | .{ ._, ._pd, .mova, .tmp1x, .src0x, ._, ._ }, |
| 132095 | .{ ._, ._sd, .min, .tmp1x, .tmp0x, ._, ._ }, |
| 132096 | .{ ._, ._sd, .cmp, .tmp0x, .tmp0x, .sp(.unord), ._ }, |
| 132097 | .{ ._, ._pd, .@"and", .dst0x, .tmp0x, ._, ._ }, |
| 132098 | .{ ._, ._pd, .andn, .tmp0x, .tmp1x, ._, ._ }, |
| 132099 | .{ ._, ._pd, .@"or", .dst0x, .tmp0x, ._, ._ }, |
| 132100 | } }, |
| 132101 | }, .{ |
| 132102 | .required_features = .{ .avx, null, null, null }, |
| 132103 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132104 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 132105 | .patterns = &.{ |
| 132106 | .{ .src = .{ .to_sse, .none, .none } }, |
| 132107 | }, |
| 132108 | .extra_temps = .{ |
| 132109 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132110 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132111 | .unused, |
| 132112 | .unused, |
| 132113 | .unused, |
| 132114 | .unused, |
| 132115 | .unused, |
| 132116 | .unused, |
| 132117 | .unused, |
| 132118 | .unused, |
| 132119 | .unused, |
| 132120 | }, |
| 132121 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 132122 | .each = .{ .once = &.{ |
| 132123 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 132124 | .{ ._, .v_sd, .min, .tmp1x, .src0x, .tmp0x, ._ }, |
| 132125 | .{ ._, .v_sd, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 132126 | .{ ._, .v_pd, .blendv, .tmp0x, .src0x, .tmp1x, .tmp0x }, |
| 132127 | .{ ._, .v_ps, .movhl, .dst0x, .src0x, .src0x, ._ }, |
| 132128 | .{ ._, .v_sd, .min, .tmp1x, .tmp0x, .dst0x, ._ }, |
| 132129 | .{ ._, .v_sd, .cmp, .dst0x, .dst0x, .dst0x, .vp(.ord) }, |
| 132130 | .{ ._, .v_pd, .blendv, .dst0x, .tmp0x, .tmp1x, .dst0x }, |
| 132131 | } }, |
| 132132 | }, .{ |
| 132133 | .required_features = .{ .avx, null, null, null }, |
| 132134 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132135 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 132136 | .patterns = &.{ |
| 132137 | .{ .src = .{ .to_sse, .none, .none } }, |
| 132138 | }, |
| 132139 | .extra_temps = .{ |
| 132140 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132141 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132142 | .unused, |
| 132143 | .unused, |
| 132144 | .unused, |
| 132145 | .unused, |
| 132146 | .unused, |
| 132147 | .unused, |
| 132148 | .unused, |
| 132149 | .unused, |
| 132150 | .unused, |
| 132151 | }, |
| 132152 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 132153 | .each = .{ .once = &.{ |
| 132154 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 132155 | .{ ._, .v_pd, .min, .tmp1x, .src0x, .tmp0x, ._ }, |
| 132156 | .{ ._, .v_pd, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 132157 | .{ ._, .v_pd, .blendv, .dst0x, .src0x, .tmp1x, .tmp0x }, |
| 132158 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 132159 | .{ ._, .v_sd, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 132160 | .{ ._, .v_sd, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 132161 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 132162 | } }, |
| 132163 | }, .{ |
| 132164 | .required_features = .{ .avx512f, null, null, null }, |
| 132165 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132166 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 132167 | .patterns = &.{ |
| 132168 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132169 | }, |
| 132170 | .extra_temps = .{ |
| 132171 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 132172 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 132173 | .{ .type = .vector_8_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 132174 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| 132175 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| 132176 | .unused, |
| 132177 | .unused, |
| 132178 | .unused, |
| 132179 | .unused, |
| 132180 | .unused, |
| 132181 | .unused, |
| 132182 | }, |
| 132183 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 132184 | .each = .{ .once = &.{ |
| 132185 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 132186 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 132187 | .{ ._, .v_pd, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 132188 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 132189 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 132190 | .{ ._, .v_pd, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 132191 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 132192 | .{ ._, .v_pd, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 132193 | .{ ._, .v_pd, .min, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 132194 | .{ ._, .v_pd, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| 132195 | .{ ._, .v_pd, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| 132196 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 132197 | .{ ._, .v_pd, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 132198 | .{ ._, .v_pd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 132199 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 132200 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 132201 | .{ ._, .v_sd, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 132202 | .{ ._, .v_sd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 132203 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 132204 | } }, |
| 132205 | }, .{ |
| 132206 | .required_features = .{ .avx512f, null, null, null }, |
| 132207 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132208 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 132209 | .patterns = &.{ |
| 132210 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132211 | }, |
| 132212 | .extra_temps = .{ |
| 132213 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132214 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132215 | .unused, |
| 132216 | .unused, |
| 132217 | .unused, |
| 132218 | .unused, |
| 132219 | .unused, |
| 132220 | .unused, |
| 132221 | .unused, |
| 132222 | .unused, |
| 132223 | .unused, |
| 132224 | }, |
| 132225 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 132226 | .each = .{ .once = &.{ |
| 132227 | .{ ._, .v_pd, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 132228 | .{ ._, .v_pd, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 132229 | .{ ._, .v_pd, .min, .tmp1y, .dst0y, .tmp0y, ._ }, |
| 132230 | .{ ._, .v_pd, .cmp, .tmp0y, .tmp0y, .tmp0y, .vp(.ord) }, |
| 132231 | .{ ._, .v_pd, .blendv, .dst0y, .dst0y, .tmp1y, .tmp0y }, |
| 132232 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 132233 | .{ ._, .v_pd, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 132234 | .{ ._, .v_pd, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 132235 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 132236 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 132237 | .{ ._, .v_sd, .min, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 132238 | .{ ._, .v_sd, .cmp, .tmp0x, .tmp0x, .tmp0x, .vp(.ord) }, |
| 132239 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp1x, .tmp0x }, |
| 132240 | } }, |
| 132241 | }, .{ |
| 132242 | .required_features = .{ .avx, null, null, null }, |
| 132243 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132244 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 132245 | .patterns = &.{ |
| 132246 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132247 | }, |
| 132248 | .extra_temps = .{ |
| 132249 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132250 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132251 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132252 | .unused, |
| 132253 | .unused, |
| 132254 | .unused, |
| 132255 | .unused, |
| 132256 | .unused, |
| 132257 | .unused, |
| 132258 | .unused, |
| 132259 | .unused, |
| 132260 | }, |
| 132261 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 132262 | .clobbers = .{ .eflags = true }, |
| 132263 | .each = .{ .once = &.{ |
| 132264 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 132265 | .{ ._, .v_pd, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 132266 | .{ .@"0:", .v_pd, .mova, .tmp1y, .memi(.src0y, .tmp0), ._, ._ }, |
| 132267 | .{ ._, .v_pd, .min, .tmp2y, .dst0y, .tmp1y, ._ }, |
| 132268 | .{ ._, .v_pd, .cmp, .tmp1y, .tmp1y, .tmp1y, .vp(.ord) }, |
| 132269 | .{ ._, .v_pd, .blendv, .dst0y, .dst0y, .tmp2y, .tmp1y }, |
| 132270 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 132271 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132272 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 132273 | .{ ._, .v_pd, .min, .tmp2x, .dst0x, .tmp1x, ._ }, |
| 132274 | .{ ._, .v_pd, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| 132275 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| 132276 | .{ ._, .v_pd, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| 132277 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| 132278 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 132279 | .{ ._, .v_sd, .min, .tmp2x, .dst0x, .tmp1x, ._ }, |
| 132280 | .{ ._, .v_sd, .cmp, .tmp1x, .tmp1x, .tmp1x, .vp(.ord) }, |
| 132281 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp2x, .tmp1x }, |
| 132282 | } }, |
| 132283 | }, .{ |
| 132284 | .required_features = .{ .sse4_1, null, null, null }, |
| 132285 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132286 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 132287 | .patterns = &.{ |
| 132288 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132289 | }, |
| 132290 | .extra_temps = .{ |
| 132291 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132292 | .{ .type = .vector_2_f64, .kind = .{ .reg = .xmm0 } }, |
| 132293 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132294 | .unused, |
| 132295 | .unused, |
| 132296 | .unused, |
| 132297 | .unused, |
| 132298 | .unused, |
| 132299 | .unused, |
| 132300 | .unused, |
| 132301 | .unused, |
| 132302 | }, |
| 132303 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 132304 | .clobbers = .{ .eflags = true }, |
| 132305 | .each = .{ .once = &.{ |
| 132306 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 132307 | .{ ._, ._pd, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 132308 | .{ .@"0:", ._pd, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 132309 | .{ ._, ._pd, .mova, .tmp2x, .dst0x, ._, ._ }, |
| 132310 | .{ ._, ._pd, .min, .tmp2x, .tmp1x, ._, ._ }, |
| 132311 | .{ ._, ._pd, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ }, |
| 132312 | .{ ._, ._pd, .blendv, .dst0x, .tmp2x, .tmp1x, ._ }, |
| 132313 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132314 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132315 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 132316 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| 132317 | .{ ._, ._pd, .mova, .tmp2x, .dst0x, ._, ._ }, |
| 132318 | .{ ._, ._sd, .min, .tmp2x, .tmp1x, ._, ._ }, |
| 132319 | .{ ._, ._sd, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ }, |
| 132320 | .{ ._, ._pd, .blendv, .dst0x, .tmp2x, .tmp1x, ._ }, |
| 132321 | } }, |
| 132322 | }, .{ |
| 132323 | .required_features = .{ .sse2, null, null, null }, |
| 132324 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132325 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 132326 | .patterns = &.{ |
| 132327 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132328 | }, |
| 132329 | .extra_temps = .{ |
| 132330 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132331 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132332 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132333 | .unused, |
| 132334 | .unused, |
| 132335 | .unused, |
| 132336 | .unused, |
| 132337 | .unused, |
| 132338 | .unused, |
| 132339 | .unused, |
| 132340 | .unused, |
| 132341 | }, |
| 132342 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 132343 | .clobbers = .{ .eflags = true }, |
| 132344 | .each = .{ .once = &.{ |
| 132345 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 132346 | .{ ._, ._pd, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 132347 | .{ .@"0:", ._pd, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 132348 | .{ ._, ._pd, .mova, .tmp2x, .dst0x, ._, ._ }, |
| 132349 | .{ ._, ._pd, .min, .tmp2x, .tmp1x, ._, ._ }, |
| 132350 | .{ ._, ._pd, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ }, |
| 132351 | .{ ._, ._pd, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 132352 | .{ ._, ._pd, .andn, .tmp1x, .tmp2x, ._, ._ }, |
| 132353 | .{ ._, ._pd, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 132354 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132355 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132356 | .{ ._, ._pd, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 132357 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| 132358 | .{ ._, ._pd, .mova, .tmp2x, .dst0x, ._, ._ }, |
| 132359 | .{ ._, ._sd, .min, .tmp2x, .tmp1x, ._, ._ }, |
| 132360 | .{ ._, ._sd, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ }, |
| 132361 | .{ ._, ._pd, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 132362 | .{ ._, ._pd, .andn, .tmp1x, .tmp2x, ._, ._ }, |
| 132363 | .{ ._, ._pd, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 132364 | } }, |
| 132365 | }, .{ |
| 132366 | .required_features = .{ .avx512f, null, null, null }, |
| 132367 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132368 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 132369 | .patterns = &.{ |
| 132370 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132371 | }, |
| 132372 | .extra_temps = .{ |
| 132373 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132374 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 132375 | .{ .type = .vector_8_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 132376 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| 132377 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| 132378 | .unused, |
| 132379 | .unused, |
| 132380 | .unused, |
| 132381 | .unused, |
| 132382 | .unused, |
| 132383 | .unused, |
| 132384 | }, |
| 132385 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 132386 | .clobbers = .{ .eflags = true }, |
| 132387 | .each = .{ .once = &.{ |
| 132388 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 132389 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 132390 | .{ ._, .v_pd, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 132391 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 132392 | .{ ._, .v_pd, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 132393 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 132394 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 132395 | .{ ._, .v_pd, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 132396 | .{ ._, .v_pd, .min, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 132397 | .{ ._, .v_pd, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| 132398 | .{ ._, .v_pd, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| 132399 | .{ ._, ._, .mov, .tmp0d, .sia(-96, .src0, .add_size), ._, ._ }, |
| 132400 | .{ .@"0:", .v_pd, .mova, .tmp3y, .memi(.src0y, .tmp0), ._, ._ }, |
| 132401 | .{ ._, .v_pd, .min, .tmp4y, .dst0y, .tmp3y, ._ }, |
| 132402 | .{ ._, .v_pd, .cmp, .tmp3y, .tmp3y, .tmp3y, .vp(.ord) }, |
| 132403 | .{ ._, .v_pd, .blendv, .dst0y, .dst0y, .tmp4y, .tmp3y }, |
| 132404 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 132405 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132406 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 132407 | .{ ._, .v_pd, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 132408 | .{ ._, .v_pd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 132409 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 132410 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 132411 | .{ ._, .v_sd, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 132412 | .{ ._, .v_sd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 132413 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 132414 | } }, |
| 132415 | }, .{ |
| 132416 | .required_features = .{ .avx, null, null, null }, |
| 132417 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132418 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 132419 | .patterns = &.{ |
| 132420 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132421 | }, |
| 132422 | .extra_temps = .{ |
| 132423 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132424 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 132425 | .{ .type = .vector_4_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 132426 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132427 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132428 | .unused, |
| 132429 | .unused, |
| 132430 | .unused, |
| 132431 | .unused, |
| 132432 | .unused, |
| 132433 | .unused, |
| 132434 | }, |
| 132435 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 132436 | .clobbers = .{ .eflags = true }, |
| 132437 | .each = .{ .once = &.{ |
| 132438 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 132439 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 132440 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 132441 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 132442 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 132443 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 132444 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 132445 | .{ ._, .v_pd, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 132446 | .{ ._, .v_pd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 132447 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 132448 | .{ .@"0:", .v_pd, .mova, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 132449 | .{ ._, .v_pd, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 132450 | .{ ._, .v_pd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 132451 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 132452 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132453 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132454 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 132455 | .{ ._, .v_sd, .min, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 132456 | .{ ._, .v_sd, .cmp, .tmp3x, .tmp3x, .tmp3x, .vp(.ord) }, |
| 132457 | .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .tmp4x, .tmp3x }, |
| 132458 | } }, |
| 132459 | }, .{ |
| 132460 | .required_features = .{ .sse4_1, null, null, null }, |
| 132461 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132462 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 132463 | .patterns = &.{ |
| 132464 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132465 | }, |
| 132466 | .extra_temps = .{ |
| 132467 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132468 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 132469 | .{ .type = .vector_2_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 132470 | .{ .type = .vector_2_f64, .kind = .{ .reg = .xmm0 } }, |
| 132471 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132472 | .unused, |
| 132473 | .unused, |
| 132474 | .unused, |
| 132475 | .unused, |
| 132476 | .unused, |
| 132477 | .unused, |
| 132478 | }, |
| 132479 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 132480 | .clobbers = .{ .eflags = true }, |
| 132481 | .each = .{ .once = &.{ |
| 132482 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 132483 | .{ ._, ._pd, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 132484 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 132485 | .{ ._, ._pd, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 132486 | .{ ._, ._pd, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 132487 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 132488 | .{ .@"0:", ._pd, .mova, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 132489 | .{ ._, ._pd, .mova, .tmp4x, .dst0x, ._, ._ }, |
| 132490 | .{ ._, ._pd, .min, .tmp4x, .tmp3x, ._, ._ }, |
| 132491 | .{ ._, ._pd, .cmp, .tmp3x, .tmp3x, .sp(.ord), ._ }, |
| 132492 | .{ ._, ._pd, .blendv, .dst0x, .tmp4x, .tmp3x, ._ }, |
| 132493 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132494 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132495 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 132496 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| 132497 | .{ ._, ._pd, .mova, .tmp4x, .dst0x, ._, ._ }, |
| 132498 | .{ ._, ._sd, .min, .tmp4x, .tmp3x, ._, ._ }, |
| 132499 | .{ ._, ._sd, .cmp, .tmp3x, .tmp3x, .sp(.ord), ._ }, |
| 132500 | .{ ._, ._pd, .blendv, .dst0x, .tmp4x, .tmp3x, ._ }, |
| 132501 | } }, |
| 132502 | }, .{ |
| 132503 | .required_features = .{ .sse2, null, null, null }, |
| 132504 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132505 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 132506 | .patterns = &.{ |
| 132507 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132508 | }, |
| 132509 | .extra_temps = .{ |
| 132510 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132511 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 132512 | .{ .type = .vector_2_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = nan } } }, |
| 132513 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132514 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 132515 | .unused, |
| 132516 | .unused, |
| 132517 | .unused, |
| 132518 | .unused, |
| 132519 | .unused, |
| 132520 | .unused, |
| 132521 | }, |
| 132522 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 132523 | .clobbers = .{ .eflags = true }, |
| 132524 | .each = .{ .once = &.{ |
| 132525 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 132526 | .{ ._, ._pd, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 132527 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 132528 | .{ ._, ._pd, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 132529 | .{ ._, ._pd, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 132530 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 132531 | .{ .@"0:", ._pd, .mova, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 132532 | .{ ._, ._pd, .mova, .tmp4x, .dst0x, ._, ._ }, |
| 132533 | .{ ._, ._pd, .min, .tmp4x, .tmp3x, ._, ._ }, |
| 132534 | .{ ._, ._pd, .cmp, .tmp3x, .tmp3x, .sp(.unord), ._ }, |
| 132535 | .{ ._, ._pd, .@"and", .dst0x, .tmp3x, ._, ._ }, |
| 132536 | .{ ._, ._pd, .andn, .tmp3x, .tmp4x, ._, ._ }, |
| 132537 | .{ ._, ._pd, .@"or", .dst0x, .tmp3x, ._, ._ }, |
| 132538 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132539 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132540 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 132541 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| 132542 | .{ ._, ._pd, .mova, .tmp4x, .dst0x, ._, ._ }, |
| 132543 | .{ ._, ._sd, .min, .tmp4x, .tmp3x, ._, ._ }, |
| 132544 | .{ ._, ._sd, .cmp, .tmp3x, .tmp3x, .sp(.unord), ._ }, |
| 132545 | .{ ._, ._pd, .@"and", .dst0x, .tmp3x, ._, ._ }, |
| 132546 | .{ ._, ._pd, .andn, .tmp3x, .tmp4x, ._, ._ }, |
| 132547 | .{ ._, ._pd, .@"or", .dst0x, .tmp3x, ._, ._ }, |
| 132548 | } }, |
| 132549 | }, .{ |
| 132550 | .required_features = .{ .x87, .cmov, null, null }, |
| 132551 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132552 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 132553 | .patterns = &.{ |
| 132554 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132555 | }, |
| 132556 | .extra_temps = .{ |
| 132557 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132558 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 132559 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 132560 | .unused, |
| 132561 | .unused, |
| 132562 | .unused, |
| 132563 | .unused, |
| 132564 | .unused, |
| 132565 | .unused, |
| 132566 | .unused, |
| 132567 | .unused, |
| 132568 | }, |
| 132569 | .dst_temps = .{ .mem, .unused }, |
| 132570 | .clobbers = .{ .eflags = true }, |
| 132571 | .each = .{ .once = &.{ |
| 132572 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 132573 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| 132574 | .{ .@"0:", .f_, .ld, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| 132575 | .{ ._, .f_, .ucomi, .tmp2t, .tmp2t, ._, ._ }, |
| 132576 | .{ ._, .f_u, .cmov, .tmp2t, .tmp1t, ._, ._ }, |
| 132577 | .{ ._, .f_, .ucomi, .tmp2t, .tmp1t, ._, ._ }, |
| 132578 | .{ ._, .f_nb, .cmov, .tmp2t, .tmp1t, ._, ._ }, |
| 132579 | .{ ._, .f_p, .st, .tmp1t, ._, ._, ._ }, |
| 132580 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 132581 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132582 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 132583 | } }, |
| 132584 | }, .{ |
| 132585 | .required_features = .{ .sahf, .x87, null, null }, |
| 132586 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132587 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 132588 | .patterns = &.{ |
| 132589 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132590 | }, |
| 132591 | .extra_temps = .{ |
| 132592 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132593 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 132594 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 132595 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 132596 | .unused, |
| 132597 | .unused, |
| 132598 | .unused, |
| 132599 | .unused, |
| 132600 | .unused, |
| 132601 | .unused, |
| 132602 | .unused, |
| 132603 | }, |
| 132604 | .dst_temps = .{ .mem, .unused }, |
| 132605 | .clobbers = .{ .eflags = true }, |
| 132606 | .each = .{ .once = &.{ |
| 132607 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 132608 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| 132609 | .{ .@"0:", .f_, .ld, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| 132610 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| 132611 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 132612 | .{ ._, ._, .sahf, ._, ._, ._, ._ }, |
| 132613 | .{ ._, ._nb, .j, .@"1f", ._, ._, ._ }, |
| 132614 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, |
| 132615 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 132616 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| 132617 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 132618 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| 132619 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 132620 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 132621 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132622 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 132623 | } }, |
| 132624 | }, .{ |
| 132625 | .required_features = .{ .x87, null, null, null }, |
| 132626 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 132627 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 132628 | .patterns = &.{ |
| 132629 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132630 | }, |
| 132631 | .extra_temps = .{ |
| 132632 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132633 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 132634 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 132635 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 132636 | .unused, |
| 132637 | .unused, |
| 132638 | .unused, |
| 132639 | .unused, |
| 132640 | .unused, |
| 132641 | .unused, |
| 132642 | .unused, |
| 132643 | }, |
| 132644 | .dst_temps = .{ .mem, .unused }, |
| 132645 | .clobbers = .{ .eflags = true }, |
| 132646 | .each = .{ .once = &.{ |
| 132647 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 132648 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| 132649 | .{ .@"0:", .f_, .ld, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| 132650 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| 132651 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 132652 | .{ ._, ._, .@"test", .tmp3h, .si(0b0_000_001), ._, ._ }, |
| 132653 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 132654 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, |
| 132655 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 132656 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| 132657 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 132658 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| 132659 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 132660 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 132661 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132662 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 132663 | } }, |
| 132664 | }, .{ |
| 132665 | .required_features = .{ .x87, .cmov, null, null }, |
| 132666 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 132667 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 132668 | .patterns = &.{ |
| 132669 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132670 | }, |
| 132671 | .extra_temps = .{ |
| 132672 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132673 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 132674 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 132675 | .unused, |
| 132676 | .unused, |
| 132677 | .unused, |
| 132678 | .unused, |
| 132679 | .unused, |
| 132680 | .unused, |
| 132681 | .unused, |
| 132682 | .unused, |
| 132683 | }, |
| 132684 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 132685 | .clobbers = .{ .eflags = true }, |
| 132686 | .each = .{ .once = &.{ |
| 132687 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 132688 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| 132689 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| 132690 | .{ ._, .f_, .ucomi, .tmp2t, .tmp2t, ._, ._ }, |
| 132691 | .{ ._, .f_u, .cmov, .tmp2t, .tmp1t, ._, ._ }, |
| 132692 | .{ ._, .f_, .ucomi, .tmp2t, .tmp1t, ._, ._ }, |
| 132693 | .{ ._, .f_nb, .cmov, .tmp2t, .tmp1t, ._, ._ }, |
| 132694 | .{ ._, .f_p, .st, .tmp1t, ._, ._, ._ }, |
| 132695 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132696 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132697 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 132698 | } }, |
| 132699 | }, .{ |
| 132700 | .required_features = .{ .sahf, .x87, null, null }, |
| 132701 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 132702 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 132703 | .patterns = &.{ |
| 132704 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132705 | }, |
| 132706 | .extra_temps = .{ |
| 132707 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132708 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 132709 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 132710 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 132711 | .unused, |
| 132712 | .unused, |
| 132713 | .unused, |
| 132714 | .unused, |
| 132715 | .unused, |
| 132716 | .unused, |
| 132717 | .unused, |
| 132718 | }, |
| 132719 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 132720 | .clobbers = .{ .eflags = true }, |
| 132721 | .each = .{ .once = &.{ |
| 132722 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 132723 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| 132724 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| 132725 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| 132726 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 132727 | .{ ._, ._, .sahf, ._, ._, ._, ._ }, |
| 132728 | .{ ._, ._nb, .j, .@"1f", ._, ._, ._ }, |
| 132729 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, |
| 132730 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 132731 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| 132732 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 132733 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| 132734 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 132735 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132736 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132737 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 132738 | } }, |
| 132739 | }, .{ |
| 132740 | .required_features = .{ .x87, null, null, null }, |
| 132741 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 132742 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 132743 | .patterns = &.{ |
| 132744 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132745 | }, |
| 132746 | .extra_temps = .{ |
| 132747 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132748 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 132749 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 132750 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 132751 | .unused, |
| 132752 | .unused, |
| 132753 | .unused, |
| 132754 | .unused, |
| 132755 | .unused, |
| 132756 | .unused, |
| 132757 | .unused, |
| 132758 | }, |
| 132759 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 132760 | .clobbers = .{ .eflags = true }, |
| 132761 | .each = .{ .once = &.{ |
| 132762 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 132763 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| 132764 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| 132765 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| 132766 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 132767 | .{ ._, ._, .@"test", .tmp3h, .si(0b0_000_001), ._, ._ }, |
| 132768 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 132769 | .{ ._, .f_, .xam, ._, ._, ._, ._ }, |
| 132770 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 132771 | .{ ._, ._, .@"test", .tmp3h, .si(0b1_000_100), ._, ._ }, |
| 132772 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 132773 | .{ ._, .f_, .xch, .tmp1t, ._, ._, ._ }, |
| 132774 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 132775 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132776 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132777 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 132778 | } }, |
| 132779 | }, .{ |
| 132780 | .required_features = .{ .avx, null, null, null }, |
| 132781 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 132782 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 132783 | .patterns = &.{ |
| 132784 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132785 | }, |
| 132786 | .call_frame = .{ .alignment = .@"16" }, |
| 132787 | .extra_temps = .{ |
| 132788 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132789 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 132790 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fminq" } } }, |
| 132791 | .unused, |
| 132792 | .unused, |
| 132793 | .unused, |
| 132794 | .unused, |
| 132795 | .unused, |
| 132796 | .unused, |
| 132797 | .unused, |
| 132798 | .unused, |
| 132799 | }, |
| 132800 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 132801 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 132802 | .each = .{ .once = &.{ |
| 132803 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 132804 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 132805 | .{ .@"0:", .v_dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 132806 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 132807 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132808 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132809 | } }, |
| 132810 | }, .{ |
| 132811 | .required_features = .{ .sse2, null, null, null }, |
| 132812 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 132813 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 132814 | .patterns = &.{ |
| 132815 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132816 | }, |
| 132817 | .call_frame = .{ .alignment = .@"16" }, |
| 132818 | .extra_temps = .{ |
| 132819 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132820 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 132821 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fminq" } } }, |
| 132822 | .unused, |
| 132823 | .unused, |
| 132824 | .unused, |
| 132825 | .unused, |
| 132826 | .unused, |
| 132827 | .unused, |
| 132828 | .unused, |
| 132829 | .unused, |
| 132830 | }, |
| 132831 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 132832 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 132833 | .each = .{ .once = &.{ |
| 132834 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 132835 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 132836 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 132837 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 132838 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132839 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132840 | } }, |
| 132841 | }, .{ |
| 132842 | .required_features = .{ .sse, null, null, null }, |
| 132843 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 132844 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 132845 | .patterns = &.{ |
| 132846 | .{ .src = .{ .to_mem, .none, .none } }, |
| 132847 | }, |
| 132848 | .call_frame = .{ .alignment = .@"16" }, |
| 132849 | .extra_temps = .{ |
| 132850 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 132851 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 132852 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fminq" } } }, |
| 132853 | .unused, |
| 132854 | .unused, |
| 132855 | .unused, |
| 132856 | .unused, |
| 132857 | .unused, |
| 132858 | .unused, |
| 132859 | .unused, |
| 132860 | .unused, |
| 132861 | }, |
| 132862 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 132863 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 132864 | .each = .{ .once = &.{ |
| 132865 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 132866 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 132867 | .{ .@"0:", ._ps, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 132868 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 132869 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 132870 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 132871 | } }, |
| 132872 | } }, |
| 132873 | .Max => comptime &.{ .{ |
| 132874 | .required_features = .{ .avx, null, null, null }, |
| 132875 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 132876 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 132877 | .patterns = &.{ |
| 132878 | .{ .src = .{ .to_sse, .none, .none } }, |
| 132879 | }, |
| 132880 | .extra_temps = .{ |
| 132881 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 132882 | .unused, |
| 132883 | .unused, |
| 132884 | .unused, |
| 132885 | .unused, |
| 132886 | .unused, |
| 132887 | .unused, |
| 132888 | .unused, |
| 132889 | .unused, |
| 132890 | .unused, |
| 132891 | .unused, |
| 132892 | }, |
| 132893 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 132894 | .each = .{ .once = &.{ |
| 132895 | .{ ._, .vp_w, .srl, .tmp0x, .src0x, .ui(8), ._ }, |
| 132896 | .{ ._, .vp_b, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 132897 | } }, |
| 132898 | }, .{ |
| 132899 | .required_features = .{ .sse4_1, null, null, null }, |
| 132900 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 132901 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 132902 | .patterns = &.{ |
| 132903 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 132904 | }, |
| 132905 | .extra_temps = .{ |
| 132906 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 132907 | .unused, |
| 132908 | .unused, |
| 132909 | .unused, |
| 132910 | .unused, |
| 132911 | .unused, |
| 132912 | .unused, |
| 132913 | .unused, |
| 132914 | .unused, |
| 132915 | .unused, |
| 132916 | .unused, |
| 132917 | }, |
| 132918 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 132919 | .each = .{ .once = &.{ |
| 132920 | .{ ._, ._dqa, .mov, .tmp0x, .src0x, ._, ._ }, |
| 132921 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 132922 | .{ ._, .p_b, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 132923 | } }, |
| 132924 | }, .{ |
| 132925 | .required_features = .{ .sse2, null, null, null }, |
| 132926 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 132927 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 132928 | .patterns = &.{ |
| 132929 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 132930 | }, |
| 132931 | .extra_temps = .{ |
| 132932 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 132933 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 132934 | .unused, |
| 132935 | .unused, |
| 132936 | .unused, |
| 132937 | .unused, |
| 132938 | .unused, |
| 132939 | .unused, |
| 132940 | .unused, |
| 132941 | .unused, |
| 132942 | .unused, |
| 132943 | }, |
| 132944 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 132945 | .each = .{ .once = &.{ |
| 132946 | .{ ._, ._dqa, .mov, .tmp0x, .src0x, ._, ._ }, |
| 132947 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 132948 | .{ ._, ._dqa, .mov, .tmp1x, .src0x, ._, ._ }, |
| 132949 | .{ ._, .p_b, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 132950 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 132951 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 132952 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 132953 | } }, |
| 132954 | }, .{ |
| 132955 | .required_features = .{ .avx, null, null, null }, |
| 132956 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 132957 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 132958 | .patterns = &.{ |
| 132959 | .{ .src = .{ .to_sse, .none, .none } }, |
| 132960 | }, |
| 132961 | .extra_temps = .{ |
| 132962 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 132963 | .unused, |
| 132964 | .unused, |
| 132965 | .unused, |
| 132966 | .unused, |
| 132967 | .unused, |
| 132968 | .unused, |
| 132969 | .unused, |
| 132970 | .unused, |
| 132971 | .unused, |
| 132972 | .unused, |
| 132973 | }, |
| 132974 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 132975 | .each = .{ .once = &.{ |
| 132976 | .{ ._, .vp_w, .srl, .tmp0x, .src0x, .ui(8), ._ }, |
| 132977 | .{ ._, .vp_b, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 132978 | } }, |
| 132979 | }, .{ |
| 132980 | .required_features = .{ .sse2, null, null, null }, |
| 132981 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 132982 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 132983 | .patterns = &.{ |
| 132984 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 132985 | }, |
| 132986 | .extra_temps = .{ |
| 132987 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 132988 | .unused, |
| 132989 | .unused, |
| 132990 | .unused, |
| 132991 | .unused, |
| 132992 | .unused, |
| 132993 | .unused, |
| 132994 | .unused, |
| 132995 | .unused, |
| 132996 | .unused, |
| 132997 | .unused, |
| 132998 | }, |
| 132999 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133000 | .each = .{ .once = &.{ |
| 133001 | .{ ._, ._dqa, .mov, .tmp0x, .src0x, ._, ._ }, |
| 133002 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 133003 | .{ ._, .p_b, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 133004 | } }, |
| 133005 | }, .{ |
| 133006 | .required_features = .{ .avx, null, null, null }, |
| 133007 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133008 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 133009 | .patterns = &.{ |
| 133010 | .{ .src = .{ .to_sse, .none, .none } }, |
| 133011 | }, |
| 133012 | .extra_temps = .{ |
| 133013 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133014 | .unused, |
| 133015 | .unused, |
| 133016 | .unused, |
| 133017 | .unused, |
| 133018 | .unused, |
| 133019 | .unused, |
| 133020 | .unused, |
| 133021 | .unused, |
| 133022 | .unused, |
| 133023 | .unused, |
| 133024 | }, |
| 133025 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 133026 | .each = .{ .once = &.{ |
| 133027 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 133028 | .{ ._, .vp_b, .maxs, .tmp0x, .src0x, .tmp0x, ._ }, |
| 133029 | .{ ._, .vp_w, .srl, .dst0x, .src0x, .ui(8), ._ }, |
| 133030 | .{ ._, .vp_b, .maxs, .dst0x, .tmp0x, .dst0x, ._ }, |
| 133031 | } }, |
| 133032 | }, .{ |
| 133033 | .required_features = .{ .sse4_1, null, null, null }, |
| 133034 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133035 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 133036 | .patterns = &.{ |
| 133037 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133038 | }, |
| 133039 | .extra_temps = .{ |
| 133040 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133041 | .unused, |
| 133042 | .unused, |
| 133043 | .unused, |
| 133044 | .unused, |
| 133045 | .unused, |
| 133046 | .unused, |
| 133047 | .unused, |
| 133048 | .unused, |
| 133049 | .unused, |
| 133050 | .unused, |
| 133051 | }, |
| 133052 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133053 | .each = .{ .once = &.{ |
| 133054 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 133055 | .{ ._, .p_b, .maxs, .tmp0x, .src0x, ._, ._ }, |
| 133056 | .{ ._, .p_w, .srl, .dst0x, .ui(8), ._, ._ }, |
| 133057 | .{ ._, .p_b, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 133058 | } }, |
| 133059 | }, .{ |
| 133060 | .required_features = .{ .sse2, null, null, null }, |
| 133061 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133062 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 133063 | .patterns = &.{ |
| 133064 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133065 | }, |
| 133066 | .extra_temps = .{ |
| 133067 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133068 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133069 | .unused, |
| 133070 | .unused, |
| 133071 | .unused, |
| 133072 | .unused, |
| 133073 | .unused, |
| 133074 | .unused, |
| 133075 | .unused, |
| 133076 | .unused, |
| 133077 | .unused, |
| 133078 | }, |
| 133079 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133080 | .each = .{ .once = &.{ |
| 133081 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 133082 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 133083 | .{ ._, .p_b, .cmpgt, .tmp1x, .src0x, ._, ._ }, |
| 133084 | .{ ._, .p_, .@"and", .tmp0x, .tmp1x, ._, ._ }, |
| 133085 | .{ ._, .p_, .andn, .tmp1x, .src0x, ._, ._ }, |
| 133086 | .{ ._, .p_, .@"or", .tmp0x, .tmp1x, ._, ._ }, |
| 133087 | .{ ._, .p_w, .srl, .dst0x, .ui(8), ._, ._ }, |
| 133088 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 133089 | .{ ._, .p_b, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 133090 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 133091 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 133092 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 133093 | } }, |
| 133094 | }, .{ |
| 133095 | .required_features = .{ .avx, null, null, null }, |
| 133096 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 133097 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 133098 | .patterns = &.{ |
| 133099 | .{ .src = .{ .to_sse, .none, .none } }, |
| 133100 | }, |
| 133101 | .extra_temps = .{ |
| 133102 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 133103 | .unused, |
| 133104 | .unused, |
| 133105 | .unused, |
| 133106 | .unused, |
| 133107 | .unused, |
| 133108 | .unused, |
| 133109 | .unused, |
| 133110 | .unused, |
| 133111 | .unused, |
| 133112 | .unused, |
| 133113 | }, |
| 133114 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 133115 | .each = .{ .once = &.{ |
| 133116 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 133117 | .{ ._, .vp_b, .maxu, .tmp0x, .src0x, .tmp0x, ._ }, |
| 133118 | .{ ._, .vp_w, .srl, .dst0x, .src0x, .ui(8), ._ }, |
| 133119 | .{ ._, .vp_b, .maxu, .dst0x, .tmp0x, .dst0x, ._ }, |
| 133120 | } }, |
| 133121 | }, .{ |
| 133122 | .required_features = .{ .sse2, null, null, null }, |
| 133123 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 133124 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 133125 | .patterns = &.{ |
| 133126 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133127 | }, |
| 133128 | .extra_temps = .{ |
| 133129 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 133130 | .unused, |
| 133131 | .unused, |
| 133132 | .unused, |
| 133133 | .unused, |
| 133134 | .unused, |
| 133135 | .unused, |
| 133136 | .unused, |
| 133137 | .unused, |
| 133138 | .unused, |
| 133139 | .unused, |
| 133140 | }, |
| 133141 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133142 | .each = .{ .once = &.{ |
| 133143 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 133144 | .{ ._, .p_b, .maxu, .tmp0x, .src0x, ._, ._ }, |
| 133145 | .{ ._, .p_w, .srl, .dst0x, .ui(8), ._, ._ }, |
| 133146 | .{ ._, .p_b, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 133147 | } }, |
| 133148 | }, .{ |
| 133149 | .required_features = .{ .avx, null, null, null }, |
| 133150 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133151 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 133152 | .patterns = &.{ |
| 133153 | .{ .src = .{ .to_sse, .none, .none } }, |
| 133154 | }, |
| 133155 | .extra_temps = .{ |
| 133156 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133157 | .unused, |
| 133158 | .unused, |
| 133159 | .unused, |
| 133160 | .unused, |
| 133161 | .unused, |
| 133162 | .unused, |
| 133163 | .unused, |
| 133164 | .unused, |
| 133165 | .unused, |
| 133166 | .unused, |
| 133167 | }, |
| 133168 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 133169 | .each = .{ .once = &.{ |
| 133170 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 133171 | .{ ._, .vp_b, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 133172 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 133173 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 133174 | } }, |
| 133175 | }, .{ |
| 133176 | .required_features = .{ .sse4_1, null, null, null }, |
| 133177 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133178 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 133179 | .patterns = &.{ |
| 133180 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133181 | }, |
| 133182 | .extra_temps = .{ |
| 133183 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133184 | .unused, |
| 133185 | .unused, |
| 133186 | .unused, |
| 133187 | .unused, |
| 133188 | .unused, |
| 133189 | .unused, |
| 133190 | .unused, |
| 133191 | .unused, |
| 133192 | .unused, |
| 133193 | .unused, |
| 133194 | }, |
| 133195 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133196 | .each = .{ .once = &.{ |
| 133197 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 133198 | .{ ._, .p_b, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 133199 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 133200 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 133201 | .{ ._, .p_b, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 133202 | } }, |
| 133203 | }, .{ |
| 133204 | .required_features = .{ .sse2, null, null, null }, |
| 133205 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133206 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 133207 | .patterns = &.{ |
| 133208 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133209 | }, |
| 133210 | .extra_temps = .{ |
| 133211 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133212 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133213 | .unused, |
| 133214 | .unused, |
| 133215 | .unused, |
| 133216 | .unused, |
| 133217 | .unused, |
| 133218 | .unused, |
| 133219 | .unused, |
| 133220 | .unused, |
| 133221 | .unused, |
| 133222 | }, |
| 133223 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133224 | .each = .{ .once = &.{ |
| 133225 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 133226 | .{ ._, ._dqa, .mov, .tmp1x, .src0x, ._, ._ }, |
| 133227 | .{ ._, .p_b, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 133228 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 133229 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 133230 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 133231 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 133232 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 133233 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 133234 | .{ ._, .p_b, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 133235 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 133236 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 133237 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 133238 | } }, |
| 133239 | }, .{ |
| 133240 | .required_features = .{ .avx, null, null, null }, |
| 133241 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 133242 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 133243 | .patterns = &.{ |
| 133244 | .{ .src = .{ .to_sse, .none, .none } }, |
| 133245 | }, |
| 133246 | .extra_temps = .{ |
| 133247 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 133248 | .unused, |
| 133249 | .unused, |
| 133250 | .unused, |
| 133251 | .unused, |
| 133252 | .unused, |
| 133253 | .unused, |
| 133254 | .unused, |
| 133255 | .unused, |
| 133256 | .unused, |
| 133257 | .unused, |
| 133258 | }, |
| 133259 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 133260 | .each = .{ .once = &.{ |
| 133261 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 133262 | .{ ._, .vp_b, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 133263 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 133264 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 133265 | } }, |
| 133266 | }, .{ |
| 133267 | .required_features = .{ .sse2, null, null, null }, |
| 133268 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 133269 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 133270 | .patterns = &.{ |
| 133271 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133272 | }, |
| 133273 | .extra_temps = .{ |
| 133274 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 133275 | .unused, |
| 133276 | .unused, |
| 133277 | .unused, |
| 133278 | .unused, |
| 133279 | .unused, |
| 133280 | .unused, |
| 133281 | .unused, |
| 133282 | .unused, |
| 133283 | .unused, |
| 133284 | .unused, |
| 133285 | }, |
| 133286 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133287 | .each = .{ .once = &.{ |
| 133288 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 133289 | .{ ._, .p_b, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 133290 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 133291 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 133292 | .{ ._, .p_b, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 133293 | } }, |
| 133294 | }, .{ |
| 133295 | .required_features = .{ .avx, null, null, null }, |
| 133296 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133297 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 133298 | .patterns = &.{ |
| 133299 | .{ .src = .{ .to_sse, .none, .none } }, |
| 133300 | }, |
| 133301 | .extra_temps = .{ |
| 133302 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 133303 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 133304 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 133305 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133306 | .unused, |
| 133307 | .unused, |
| 133308 | .unused, |
| 133309 | .unused, |
| 133310 | .unused, |
| 133311 | .unused, |
| 133312 | .unused, |
| 133313 | }, |
| 133314 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 133315 | .each = .{ .once = &.{ |
| 133316 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 133317 | .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 133318 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 133319 | .{ ._, .vp_, .@"or", .dst0x, .dst0x, .lea(.tmp0x), ._ }, |
| 133320 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 133321 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 133322 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 133323 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 133324 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 133325 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 133326 | } }, |
| 133327 | }, .{ |
| 133328 | .required_features = .{ .sse4_1, null, null, null }, |
| 133329 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133330 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 133331 | .patterns = &.{ |
| 133332 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133333 | }, |
| 133334 | .extra_temps = .{ |
| 133335 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 133336 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 133337 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 133338 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133339 | .unused, |
| 133340 | .unused, |
| 133341 | .unused, |
| 133342 | .unused, |
| 133343 | .unused, |
| 133344 | .unused, |
| 133345 | .unused, |
| 133346 | }, |
| 133347 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133348 | .each = .{ .once = &.{ |
| 133349 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 133350 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 133351 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 133352 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 133353 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 133354 | .{ ._, .p_b, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 133355 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 133356 | .{ ._, .p_b, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 133357 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 133358 | .{ ._, .p_w, .srl, .tmp3x, .ui(8), ._, ._ }, |
| 133359 | .{ ._, .p_b, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 133360 | } }, |
| 133361 | }, .{ |
| 133362 | .required_features = .{ .sse2, null, null, null }, |
| 133363 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133364 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 133365 | .patterns = &.{ |
| 133366 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133367 | }, |
| 133368 | .extra_temps = .{ |
| 133369 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 133370 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 133371 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 133372 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133373 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133374 | .unused, |
| 133375 | .unused, |
| 133376 | .unused, |
| 133377 | .unused, |
| 133378 | .unused, |
| 133379 | .unused, |
| 133380 | }, |
| 133381 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133382 | .each = .{ .once = &.{ |
| 133383 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 133384 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 133385 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 133386 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 133387 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 133388 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 133389 | .{ ._, .p_b, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 133390 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 133391 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 133392 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 133393 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 133394 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 133395 | .{ ._, .p_b, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 133396 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 133397 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 133398 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 133399 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 133400 | .{ ._, .p_w, .srl, .tmp3x, .ui(8), ._, ._ }, |
| 133401 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 133402 | .{ ._, .p_b, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 133403 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 133404 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 133405 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 133406 | } }, |
| 133407 | }, .{ |
| 133408 | .required_features = .{ .avx, null, null, null }, |
| 133409 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 133410 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 133411 | .patterns = &.{ |
| 133412 | .{ .src = .{ .to_sse, .none, .none } }, |
| 133413 | }, |
| 133414 | .extra_temps = .{ |
| 133415 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 133416 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 133417 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 133418 | .unused, |
| 133419 | .unused, |
| 133420 | .unused, |
| 133421 | .unused, |
| 133422 | .unused, |
| 133423 | .unused, |
| 133424 | .unused, |
| 133425 | .unused, |
| 133426 | }, |
| 133427 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 133428 | .each = .{ .once = &.{ |
| 133429 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 133430 | .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 133431 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 133432 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 133433 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 133434 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 133435 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 133436 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 133437 | } }, |
| 133438 | }, .{ |
| 133439 | .required_features = .{ .sse2, null, null, null }, |
| 133440 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 133441 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 133442 | .patterns = &.{ |
| 133443 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133444 | }, |
| 133445 | .extra_temps = .{ |
| 133446 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 133447 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 133448 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 133449 | .unused, |
| 133450 | .unused, |
| 133451 | .unused, |
| 133452 | .unused, |
| 133453 | .unused, |
| 133454 | .unused, |
| 133455 | .unused, |
| 133456 | .unused, |
| 133457 | }, |
| 133458 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133459 | .each = .{ .once = &.{ |
| 133460 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 133461 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 133462 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 133463 | .{ ._, .p_b, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 133464 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 133465 | .{ ._, .p_b, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 133466 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 133467 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 133468 | .{ ._, .p_b, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 133469 | } }, |
| 133470 | }, .{ |
| 133471 | .required_features = .{ .avx, null, null, null }, |
| 133472 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133473 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 133474 | .patterns = &.{ |
| 133475 | .{ .src = .{ .to_sse, .none, .none } }, |
| 133476 | }, |
| 133477 | .extra_temps = .{ |
| 133478 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133479 | .unused, |
| 133480 | .unused, |
| 133481 | .unused, |
| 133482 | .unused, |
| 133483 | .unused, |
| 133484 | .unused, |
| 133485 | .unused, |
| 133486 | .unused, |
| 133487 | .unused, |
| 133488 | .unused, |
| 133489 | }, |
| 133490 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 133491 | .each = .{ .once = &.{ |
| 133492 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 133493 | .{ ._, .vp_b, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 133494 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 133495 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 133496 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 133497 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 133498 | } }, |
| 133499 | }, .{ |
| 133500 | .required_features = .{ .sse4_1, null, null, null }, |
| 133501 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133502 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 133503 | .patterns = &.{ |
| 133504 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133505 | }, |
| 133506 | .extra_temps = .{ |
| 133507 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133508 | .unused, |
| 133509 | .unused, |
| 133510 | .unused, |
| 133511 | .unused, |
| 133512 | .unused, |
| 133513 | .unused, |
| 133514 | .unused, |
| 133515 | .unused, |
| 133516 | .unused, |
| 133517 | .unused, |
| 133518 | }, |
| 133519 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133520 | .each = .{ .once = &.{ |
| 133521 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 133522 | .{ ._, .p_b, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 133523 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 133524 | .{ ._, .p_b, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 133525 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 133526 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 133527 | .{ ._, .p_b, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 133528 | } }, |
| 133529 | }, .{ |
| 133530 | .required_features = .{ .sse2, null, null, null }, |
| 133531 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133532 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 133533 | .patterns = &.{ |
| 133534 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133535 | }, |
| 133536 | .extra_temps = .{ |
| 133537 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133538 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133539 | .unused, |
| 133540 | .unused, |
| 133541 | .unused, |
| 133542 | .unused, |
| 133543 | .unused, |
| 133544 | .unused, |
| 133545 | .unused, |
| 133546 | .unused, |
| 133547 | .unused, |
| 133548 | }, |
| 133549 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133550 | .each = .{ .once = &.{ |
| 133551 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 133552 | .{ ._, ._dqa, .mov, .tmp1x, .src0x, ._, ._ }, |
| 133553 | .{ ._, .p_b, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 133554 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 133555 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 133556 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 133557 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 133558 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 133559 | .{ ._, .p_b, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 133560 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 133561 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 133562 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 133563 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 133564 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 133565 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 133566 | .{ ._, .p_b, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 133567 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 133568 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 133569 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 133570 | } }, |
| 133571 | }, .{ |
| 133572 | .required_features = .{ .avx, null, null, null }, |
| 133573 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 133574 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 133575 | .patterns = &.{ |
| 133576 | .{ .src = .{ .to_sse, .none, .none } }, |
| 133577 | }, |
| 133578 | .extra_temps = .{ |
| 133579 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 133580 | .unused, |
| 133581 | .unused, |
| 133582 | .unused, |
| 133583 | .unused, |
| 133584 | .unused, |
| 133585 | .unused, |
| 133586 | .unused, |
| 133587 | .unused, |
| 133588 | .unused, |
| 133589 | .unused, |
| 133590 | }, |
| 133591 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 133592 | .each = .{ .once = &.{ |
| 133593 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 133594 | .{ ._, .vp_b, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 133595 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 133596 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 133597 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 133598 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 133599 | } }, |
| 133600 | }, .{ |
| 133601 | .required_features = .{ .sse2, null, null, null }, |
| 133602 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 133603 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 133604 | .patterns = &.{ |
| 133605 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133606 | }, |
| 133607 | .extra_temps = .{ |
| 133608 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 133609 | .unused, |
| 133610 | .unused, |
| 133611 | .unused, |
| 133612 | .unused, |
| 133613 | .unused, |
| 133614 | .unused, |
| 133615 | .unused, |
| 133616 | .unused, |
| 133617 | .unused, |
| 133618 | .unused, |
| 133619 | }, |
| 133620 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133621 | .each = .{ .once = &.{ |
| 133622 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 133623 | .{ ._, .p_b, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 133624 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 133625 | .{ ._, .p_b, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 133626 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 133627 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 133628 | .{ ._, .p_b, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 133629 | } }, |
| 133630 | }, .{ |
| 133631 | .required_features = .{ .avx, null, null, null }, |
| 133632 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133633 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 133634 | .patterns = &.{ |
| 133635 | .{ .src = .{ .to_sse, .none, .none } }, |
| 133636 | }, |
| 133637 | .extra_temps = .{ |
| 133638 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 133639 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 133640 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 133641 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133642 | .unused, |
| 133643 | .unused, |
| 133644 | .unused, |
| 133645 | .unused, |
| 133646 | .unused, |
| 133647 | .unused, |
| 133648 | .unused, |
| 133649 | }, |
| 133650 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 133651 | .each = .{ .once = &.{ |
| 133652 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 133653 | .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 133654 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 133655 | .{ ._, .vp_, .@"or", .dst0x, .dst0x, .lea(.tmp0x), ._ }, |
| 133656 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 133657 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 133658 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 133659 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 133660 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 133661 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 133662 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 133663 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 133664 | } }, |
| 133665 | }, .{ |
| 133666 | .required_features = .{ .sse4_1, null, null, null }, |
| 133667 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133668 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 133669 | .patterns = &.{ |
| 133670 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133671 | }, |
| 133672 | .extra_temps = .{ |
| 133673 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 133674 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 133675 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 133676 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133677 | .unused, |
| 133678 | .unused, |
| 133679 | .unused, |
| 133680 | .unused, |
| 133681 | .unused, |
| 133682 | .unused, |
| 133683 | .unused, |
| 133684 | }, |
| 133685 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133686 | .each = .{ .once = &.{ |
| 133687 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 133688 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 133689 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 133690 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 133691 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 133692 | .{ ._, .p_b, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 133693 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 133694 | .{ ._, .p_b, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 133695 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 133696 | .{ ._, .p_b, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 133697 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 133698 | .{ ._, .p_w, .srl, .tmp3x, .ui(8), ._, ._ }, |
| 133699 | .{ ._, .p_b, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 133700 | } }, |
| 133701 | }, .{ |
| 133702 | .required_features = .{ .sse2, null, null, null }, |
| 133703 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133704 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 133705 | .patterns = &.{ |
| 133706 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133707 | }, |
| 133708 | .extra_temps = .{ |
| 133709 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 133710 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 133711 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 133712 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133713 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133714 | .unused, |
| 133715 | .unused, |
| 133716 | .unused, |
| 133717 | .unused, |
| 133718 | .unused, |
| 133719 | .unused, |
| 133720 | }, |
| 133721 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133722 | .each = .{ .once = &.{ |
| 133723 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 133724 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 133725 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 133726 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 133727 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 133728 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 133729 | .{ ._, .p_b, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 133730 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 133731 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 133732 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 133733 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 133734 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 133735 | .{ ._, .p_b, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 133736 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 133737 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 133738 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 133739 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 133740 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 133741 | .{ ._, .p_b, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 133742 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 133743 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 133744 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 133745 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 133746 | .{ ._, .p_w, .srl, .tmp3x, .ui(8), ._, ._ }, |
| 133747 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 133748 | .{ ._, .p_b, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 133749 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 133750 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 133751 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 133752 | } }, |
| 133753 | }, .{ |
| 133754 | .required_features = .{ .avx, null, null, null }, |
| 133755 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 133756 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 133757 | .patterns = &.{ |
| 133758 | .{ .src = .{ .to_sse, .none, .none } }, |
| 133759 | }, |
| 133760 | .extra_temps = .{ |
| 133761 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 133762 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 133763 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 133764 | .unused, |
| 133765 | .unused, |
| 133766 | .unused, |
| 133767 | .unused, |
| 133768 | .unused, |
| 133769 | .unused, |
| 133770 | .unused, |
| 133771 | .unused, |
| 133772 | }, |
| 133773 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 133774 | .each = .{ .once = &.{ |
| 133775 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 133776 | .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 133777 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 133778 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 133779 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 133780 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 133781 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 133782 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 133783 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 133784 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 133785 | } }, |
| 133786 | }, .{ |
| 133787 | .required_features = .{ .sse2, null, null, null }, |
| 133788 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 133789 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 133790 | .patterns = &.{ |
| 133791 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133792 | }, |
| 133793 | .extra_temps = .{ |
| 133794 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 133795 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 133796 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 133797 | .unused, |
| 133798 | .unused, |
| 133799 | .unused, |
| 133800 | .unused, |
| 133801 | .unused, |
| 133802 | .unused, |
| 133803 | .unused, |
| 133804 | .unused, |
| 133805 | }, |
| 133806 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133807 | .each = .{ .once = &.{ |
| 133808 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 133809 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 133810 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 133811 | .{ ._, .p_b, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 133812 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 133813 | .{ ._, .p_b, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 133814 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 133815 | .{ ._, .p_b, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 133816 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 133817 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 133818 | .{ ._, .p_b, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 133819 | } }, |
| 133820 | }, .{ |
| 133821 | .required_features = .{ .avx, null, null, null }, |
| 133822 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133823 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 133824 | .patterns = &.{ |
| 133825 | .{ .src = .{ .to_sse, .none, .none } }, |
| 133826 | }, |
| 133827 | .extra_temps = .{ |
| 133828 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133829 | .unused, |
| 133830 | .unused, |
| 133831 | .unused, |
| 133832 | .unused, |
| 133833 | .unused, |
| 133834 | .unused, |
| 133835 | .unused, |
| 133836 | .unused, |
| 133837 | .unused, |
| 133838 | .unused, |
| 133839 | }, |
| 133840 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 133841 | .each = .{ .once = &.{ |
| 133842 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 133843 | .{ ._, .vp_b, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 133844 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 133845 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 133846 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 133847 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 133848 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 133849 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 133850 | } }, |
| 133851 | }, .{ |
| 133852 | .required_features = .{ .sse4_1, null, null, null }, |
| 133853 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133854 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 133855 | .patterns = &.{ |
| 133856 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133857 | }, |
| 133858 | .extra_temps = .{ |
| 133859 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133860 | .unused, |
| 133861 | .unused, |
| 133862 | .unused, |
| 133863 | .unused, |
| 133864 | .unused, |
| 133865 | .unused, |
| 133866 | .unused, |
| 133867 | .unused, |
| 133868 | .unused, |
| 133869 | .unused, |
| 133870 | }, |
| 133871 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133872 | .each = .{ .once = &.{ |
| 133873 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 133874 | .{ ._, .p_b, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 133875 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 133876 | .{ ._, .p_b, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 133877 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 133878 | .{ ._, .p_b, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 133879 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 133880 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 133881 | .{ ._, .p_b, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 133882 | } }, |
| 133883 | }, .{ |
| 133884 | .required_features = .{ .sse2, null, null, null }, |
| 133885 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133886 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 133887 | .patterns = &.{ |
| 133888 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133889 | }, |
| 133890 | .extra_temps = .{ |
| 133891 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133892 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 133893 | .unused, |
| 133894 | .unused, |
| 133895 | .unused, |
| 133896 | .unused, |
| 133897 | .unused, |
| 133898 | .unused, |
| 133899 | .unused, |
| 133900 | .unused, |
| 133901 | .unused, |
| 133902 | }, |
| 133903 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133904 | .each = .{ .once = &.{ |
| 133905 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 133906 | .{ ._, ._dqa, .mov, .tmp1x, .src0x, ._, ._ }, |
| 133907 | .{ ._, .p_b, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 133908 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 133909 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 133910 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 133911 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 133912 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 133913 | .{ ._, .p_b, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 133914 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 133915 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 133916 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 133917 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 133918 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 133919 | .{ ._, .p_b, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 133920 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 133921 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 133922 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 133923 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 133924 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 133925 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 133926 | .{ ._, .p_b, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 133927 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 133928 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 133929 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 133930 | } }, |
| 133931 | }, .{ |
| 133932 | .required_features = .{ .avx, null, null, null }, |
| 133933 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 133934 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 133935 | .patterns = &.{ |
| 133936 | .{ .src = .{ .to_sse, .none, .none } }, |
| 133937 | }, |
| 133938 | .extra_temps = .{ |
| 133939 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 133940 | .unused, |
| 133941 | .unused, |
| 133942 | .unused, |
| 133943 | .unused, |
| 133944 | .unused, |
| 133945 | .unused, |
| 133946 | .unused, |
| 133947 | .unused, |
| 133948 | .unused, |
| 133949 | .unused, |
| 133950 | }, |
| 133951 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 133952 | .each = .{ .once = &.{ |
| 133953 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 133954 | .{ ._, .vp_b, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 133955 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 133956 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 133957 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 133958 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 133959 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 133960 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 133961 | } }, |
| 133962 | }, .{ |
| 133963 | .required_features = .{ .sse2, null, null, null }, |
| 133964 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 133965 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 133966 | .patterns = &.{ |
| 133967 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 133968 | }, |
| 133969 | .extra_temps = .{ |
| 133970 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 133971 | .unused, |
| 133972 | .unused, |
| 133973 | .unused, |
| 133974 | .unused, |
| 133975 | .unused, |
| 133976 | .unused, |
| 133977 | .unused, |
| 133978 | .unused, |
| 133979 | .unused, |
| 133980 | .unused, |
| 133981 | }, |
| 133982 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 133983 | .each = .{ .once = &.{ |
| 133984 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 133985 | .{ ._, .p_b, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 133986 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 133987 | .{ ._, .p_b, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 133988 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 133989 | .{ ._, .p_b, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 133990 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 133991 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 133992 | .{ ._, .p_b, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 133993 | } }, |
| 133994 | }, .{ |
| 133995 | .required_features = .{ .avx2, null, null, null }, |
| 133996 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 133997 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 133998 | .patterns = &.{ |
| 133999 | .{ .src = .{ .to_sse, .none, .none } }, |
| 134000 | }, |
| 134001 | .extra_temps = .{ |
| 134002 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 134003 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 134004 | .{ .type = .vector_32_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 134005 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134006 | .unused, |
| 134007 | .unused, |
| 134008 | .unused, |
| 134009 | .unused, |
| 134010 | .unused, |
| 134011 | .unused, |
| 134012 | .unused, |
| 134013 | }, |
| 134014 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 134015 | .each = .{ .once = &.{ |
| 134016 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 134017 | .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 134018 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 134019 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 134020 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 134021 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134022 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134023 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134024 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134025 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134026 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 134027 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134028 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 134029 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134030 | } }, |
| 134031 | }, .{ |
| 134032 | .required_features = .{ .avx, null, null, null }, |
| 134033 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134034 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 134035 | .patterns = &.{ |
| 134036 | .{ .src = .{ .to_sse, .none, .none } }, |
| 134037 | }, |
| 134038 | .extra_temps = .{ |
| 134039 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 134040 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 134041 | .{ .type = .vector_32_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 134042 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134043 | .unused, |
| 134044 | .unused, |
| 134045 | .unused, |
| 134046 | .unused, |
| 134047 | .unused, |
| 134048 | .unused, |
| 134049 | .unused, |
| 134050 | }, |
| 134051 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 134052 | .each = .{ .once = &.{ |
| 134053 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 134054 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 134055 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 134056 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 134057 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 134058 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134059 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134060 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134061 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134062 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134063 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 134064 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134065 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 134066 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134067 | } }, |
| 134068 | }, .{ |
| 134069 | .required_features = .{ .avx2, null, null, null }, |
| 134070 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 134071 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 134072 | .patterns = &.{ |
| 134073 | .{ .src = .{ .to_sse, .none, .none } }, |
| 134074 | }, |
| 134075 | .extra_temps = .{ |
| 134076 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 134077 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 134078 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 134079 | .unused, |
| 134080 | .unused, |
| 134081 | .unused, |
| 134082 | .unused, |
| 134083 | .unused, |
| 134084 | .unused, |
| 134085 | .unused, |
| 134086 | .unused, |
| 134087 | }, |
| 134088 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 134089 | .each = .{ .once = &.{ |
| 134090 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 134091 | .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 134092 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 134093 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134094 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 134095 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134096 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 134097 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134098 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 134099 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134100 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 134101 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134102 | } }, |
| 134103 | }, .{ |
| 134104 | .required_features = .{ .avx, null, null, null }, |
| 134105 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 134106 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 134107 | .patterns = &.{ |
| 134108 | .{ .src = .{ .to_sse, .none, .none } }, |
| 134109 | }, |
| 134110 | .extra_temps = .{ |
| 134111 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 134112 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 134113 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 134114 | .unused, |
| 134115 | .unused, |
| 134116 | .unused, |
| 134117 | .unused, |
| 134118 | .unused, |
| 134119 | .unused, |
| 134120 | .unused, |
| 134121 | .unused, |
| 134122 | }, |
| 134123 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 134124 | .each = .{ .once = &.{ |
| 134125 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 134126 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 134127 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 134128 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134129 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 134130 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134131 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 134132 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134133 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 134134 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134135 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 134136 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134137 | } }, |
| 134138 | }, .{ |
| 134139 | .required_features = .{ .avx2, null, null, null }, |
| 134140 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134141 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 134142 | .patterns = &.{ |
| 134143 | .{ .src = .{ .to_sse, .none, .none } }, |
| 134144 | }, |
| 134145 | .extra_temps = .{ |
| 134146 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134147 | .unused, |
| 134148 | .unused, |
| 134149 | .unused, |
| 134150 | .unused, |
| 134151 | .unused, |
| 134152 | .unused, |
| 134153 | .unused, |
| 134154 | .unused, |
| 134155 | .unused, |
| 134156 | .unused, |
| 134157 | }, |
| 134158 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 134159 | .each = .{ .once = &.{ |
| 134160 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 134161 | .{ ._, .vp_b, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 134162 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 134163 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134164 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 134165 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134166 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 134167 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134168 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 134169 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134170 | } }, |
| 134171 | }, .{ |
| 134172 | .required_features = .{ .avx, null, null, null }, |
| 134173 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134174 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 134175 | .patterns = &.{ |
| 134176 | .{ .src = .{ .to_sse, .none, .none } }, |
| 134177 | }, |
| 134178 | .extra_temps = .{ |
| 134179 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134180 | .unused, |
| 134181 | .unused, |
| 134182 | .unused, |
| 134183 | .unused, |
| 134184 | .unused, |
| 134185 | .unused, |
| 134186 | .unused, |
| 134187 | .unused, |
| 134188 | .unused, |
| 134189 | .unused, |
| 134190 | }, |
| 134191 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 134192 | .each = .{ .once = &.{ |
| 134193 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 134194 | .{ ._, .vp_b, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 134195 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 134196 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134197 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 134198 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134199 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 134200 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134201 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 134202 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134203 | } }, |
| 134204 | }, .{ |
| 134205 | .required_features = .{ .avx2, null, null, null }, |
| 134206 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 134207 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 134208 | .patterns = &.{ |
| 134209 | .{ .src = .{ .to_sse, .none, .none } }, |
| 134210 | }, |
| 134211 | .extra_temps = .{ |
| 134212 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 134213 | .unused, |
| 134214 | .unused, |
| 134215 | .unused, |
| 134216 | .unused, |
| 134217 | .unused, |
| 134218 | .unused, |
| 134219 | .unused, |
| 134220 | .unused, |
| 134221 | .unused, |
| 134222 | .unused, |
| 134223 | }, |
| 134224 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 134225 | .each = .{ .once = &.{ |
| 134226 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 134227 | .{ ._, .vp_b, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 134228 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 134229 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134230 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 134231 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134232 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 134233 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134234 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 134235 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134236 | } }, |
| 134237 | }, .{ |
| 134238 | .required_features = .{ .avx, null, null, null }, |
| 134239 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 134240 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 134241 | .patterns = &.{ |
| 134242 | .{ .src = .{ .to_sse, .none, .none } }, |
| 134243 | }, |
| 134244 | .extra_temps = .{ |
| 134245 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 134246 | .unused, |
| 134247 | .unused, |
| 134248 | .unused, |
| 134249 | .unused, |
| 134250 | .unused, |
| 134251 | .unused, |
| 134252 | .unused, |
| 134253 | .unused, |
| 134254 | .unused, |
| 134255 | .unused, |
| 134256 | }, |
| 134257 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 134258 | .each = .{ .once = &.{ |
| 134259 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 134260 | .{ ._, .vp_b, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 134261 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 134262 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134263 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 134264 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134265 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 134266 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134267 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 134268 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134269 | } }, |
| 134270 | }, .{ |
| 134271 | .required_features = .{ .avx512f, null, null, null }, |
| 134272 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134273 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 134274 | .patterns = &.{ |
| 134275 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134276 | }, |
| 134277 | .extra_temps = .{ |
| 134278 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 134279 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 134280 | .{ .type = .vector_64_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 134281 | .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } }, |
| 134282 | .unused, |
| 134283 | .unused, |
| 134284 | .unused, |
| 134285 | .unused, |
| 134286 | .unused, |
| 134287 | .unused, |
| 134288 | .unused, |
| 134289 | }, |
| 134290 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134291 | .each = .{ .once = &.{ |
| 134292 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 134293 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 134294 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 134295 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 134296 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 134297 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 134298 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 134299 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 134300 | .{ ._, .vp_b, .maxs, .dst0y, .dst0y, .tmp3y, ._ }, |
| 134301 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 134302 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134303 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134304 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134305 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134306 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134307 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 134308 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134309 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 134310 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134311 | } }, |
| 134312 | }, .{ |
| 134313 | .required_features = .{ .avx512f, null, null, null }, |
| 134314 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 134315 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 134316 | .patterns = &.{ |
| 134317 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134318 | }, |
| 134319 | .extra_temps = .{ |
| 134320 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 134321 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 134322 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 134323 | .unused, |
| 134324 | .unused, |
| 134325 | .unused, |
| 134326 | .unused, |
| 134327 | .unused, |
| 134328 | .unused, |
| 134329 | .unused, |
| 134330 | .unused, |
| 134331 | }, |
| 134332 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134333 | .each = .{ .once = &.{ |
| 134334 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 134335 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 134336 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 134337 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 134338 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 134339 | .{ ._, .vp_b, .maxu, .dst0y, .dst0y, .tmp2y, ._ }, |
| 134340 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 134341 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134342 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 134343 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134344 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 134345 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134346 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 134347 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134348 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 134349 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134350 | } }, |
| 134351 | }, .{ |
| 134352 | .required_features = .{ .avx512f, null, null, null }, |
| 134353 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134354 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 134355 | .patterns = &.{ |
| 134356 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134357 | }, |
| 134358 | .extra_temps = .{ |
| 134359 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134360 | .unused, |
| 134361 | .unused, |
| 134362 | .unused, |
| 134363 | .unused, |
| 134364 | .unused, |
| 134365 | .unused, |
| 134366 | .unused, |
| 134367 | .unused, |
| 134368 | .unused, |
| 134369 | .unused, |
| 134370 | }, |
| 134371 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134372 | .each = .{ .once = &.{ |
| 134373 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 134374 | .{ ._, .vp_b, .maxs, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 134375 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 134376 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134377 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 134378 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134379 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 134380 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134381 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 134382 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134383 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 134384 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134385 | } }, |
| 134386 | }, .{ |
| 134387 | .required_features = .{ .avx512f, null, null, null }, |
| 134388 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 134389 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 134390 | .patterns = &.{ |
| 134391 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134392 | }, |
| 134393 | .extra_temps = .{ |
| 134394 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 134395 | .unused, |
| 134396 | .unused, |
| 134397 | .unused, |
| 134398 | .unused, |
| 134399 | .unused, |
| 134400 | .unused, |
| 134401 | .unused, |
| 134402 | .unused, |
| 134403 | .unused, |
| 134404 | .unused, |
| 134405 | }, |
| 134406 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134407 | .each = .{ .once = &.{ |
| 134408 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 134409 | .{ ._, .vp_b, .maxu, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 134410 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 134411 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134412 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 134413 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134414 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 134415 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134416 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 134417 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134418 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 134419 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 134420 | } }, |
| 134421 | }, .{ |
| 134422 | .required_features = .{ .avx2, null, null, null }, |
| 134423 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134424 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 134425 | .patterns = &.{ |
| 134426 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134427 | }, |
| 134428 | .extra_temps = .{ |
| 134429 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134430 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134431 | .unused, |
| 134432 | .unused, |
| 134433 | .unused, |
| 134434 | .unused, |
| 134435 | .unused, |
| 134436 | .unused, |
| 134437 | .unused, |
| 134438 | .unused, |
| 134439 | .unused, |
| 134440 | }, |
| 134441 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134442 | .clobbers = .{ .eflags = true }, |
| 134443 | .each = .{ .once = &.{ |
| 134444 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 134445 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 134446 | .{ .@"0:", .vp_b, .maxs, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 134447 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 134448 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134449 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 134450 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134451 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134452 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134453 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134454 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134455 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 134456 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134457 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 134458 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134459 | } }, |
| 134460 | }, .{ |
| 134461 | .required_features = .{ .avx, null, null, null }, |
| 134462 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134463 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 134464 | .patterns = &.{ |
| 134465 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134466 | }, |
| 134467 | .extra_temps = .{ |
| 134468 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134469 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134470 | .unused, |
| 134471 | .unused, |
| 134472 | .unused, |
| 134473 | .unused, |
| 134474 | .unused, |
| 134475 | .unused, |
| 134476 | .unused, |
| 134477 | .unused, |
| 134478 | .unused, |
| 134479 | }, |
| 134480 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134481 | .clobbers = .{ .eflags = true }, |
| 134482 | .each = .{ .once = &.{ |
| 134483 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 134484 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 134485 | .{ .@"0:", .vp_b, .maxs, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 134486 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 134487 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134488 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134489 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134490 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134491 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134492 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 134493 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134494 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 134495 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134496 | } }, |
| 134497 | }, .{ |
| 134498 | .required_features = .{ .sse4_1, null, null, null }, |
| 134499 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134500 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 134501 | .patterns = &.{ |
| 134502 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134503 | }, |
| 134504 | .extra_temps = .{ |
| 134505 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134506 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134507 | .unused, |
| 134508 | .unused, |
| 134509 | .unused, |
| 134510 | .unused, |
| 134511 | .unused, |
| 134512 | .unused, |
| 134513 | .unused, |
| 134514 | .unused, |
| 134515 | .unused, |
| 134516 | }, |
| 134517 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134518 | .clobbers = .{ .eflags = true }, |
| 134519 | .each = .{ .once = &.{ |
| 134520 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 134521 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 134522 | .{ .@"0:", .p_b, .maxs, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 134523 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 134524 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134525 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134526 | .{ ._, .p_b, .maxs, .dst0x, .tmp1x, ._, ._ }, |
| 134527 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134528 | .{ ._, .p_b, .maxs, .dst0x, .tmp1x, ._, ._ }, |
| 134529 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 134530 | .{ ._, .p_b, .maxs, .dst0x, .tmp1x, ._, ._ }, |
| 134531 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 134532 | .{ ._, .p_w, .srl, .tmp1x, .ui(8), ._, ._ }, |
| 134533 | .{ ._, .p_b, .maxs, .dst0x, .tmp1x, ._, ._ }, |
| 134534 | } }, |
| 134535 | }, .{ |
| 134536 | .required_features = .{ .sse2, null, null, null }, |
| 134537 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134538 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 134539 | .patterns = &.{ |
| 134540 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134541 | }, |
| 134542 | .extra_temps = .{ |
| 134543 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134544 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134545 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134546 | .unused, |
| 134547 | .unused, |
| 134548 | .unused, |
| 134549 | .unused, |
| 134550 | .unused, |
| 134551 | .unused, |
| 134552 | .unused, |
| 134553 | .unused, |
| 134554 | }, |
| 134555 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134556 | .clobbers = .{ .eflags = true }, |
| 134557 | .each = .{ .once = &.{ |
| 134558 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 134559 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 134560 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 134561 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 134562 | .{ ._, .p_b, .cmpgt, .tmp2x, .tmp1x, ._, ._ }, |
| 134563 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 134564 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 134565 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 134566 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 134567 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134568 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134569 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 134570 | .{ ._, .p_b, .cmpgt, .tmp2x, .tmp1x, ._, ._ }, |
| 134571 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 134572 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 134573 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 134574 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134575 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 134576 | .{ ._, .p_b, .cmpgt, .tmp2x, .tmp1x, ._, ._ }, |
| 134577 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 134578 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 134579 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 134580 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 134581 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 134582 | .{ ._, .p_b, .cmpgt, .tmp2x, .tmp1x, ._, ._ }, |
| 134583 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 134584 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 134585 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 134586 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 134587 | .{ ._, .p_w, .srl, .tmp1x, .ui(8), ._, ._ }, |
| 134588 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 134589 | .{ ._, .p_b, .cmpgt, .tmp2x, .tmp1x, ._, ._ }, |
| 134590 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 134591 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 134592 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 134593 | } }, |
| 134594 | }, .{ |
| 134595 | .required_features = .{ .avx2, null, null, null }, |
| 134596 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 134597 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 134598 | .patterns = &.{ |
| 134599 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134600 | }, |
| 134601 | .extra_temps = .{ |
| 134602 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134603 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 134604 | .unused, |
| 134605 | .unused, |
| 134606 | .unused, |
| 134607 | .unused, |
| 134608 | .unused, |
| 134609 | .unused, |
| 134610 | .unused, |
| 134611 | .unused, |
| 134612 | .unused, |
| 134613 | }, |
| 134614 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134615 | .clobbers = .{ .eflags = true }, |
| 134616 | .each = .{ .once = &.{ |
| 134617 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 134618 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 134619 | .{ .@"0:", .vp_b, .maxu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 134620 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 134621 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134622 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 134623 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134624 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134625 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134626 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134627 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134628 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 134629 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134630 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 134631 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134632 | } }, |
| 134633 | }, .{ |
| 134634 | .required_features = .{ .avx, null, null, null }, |
| 134635 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 134636 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 134637 | .patterns = &.{ |
| 134638 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134639 | }, |
| 134640 | .extra_temps = .{ |
| 134641 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134642 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 134643 | .unused, |
| 134644 | .unused, |
| 134645 | .unused, |
| 134646 | .unused, |
| 134647 | .unused, |
| 134648 | .unused, |
| 134649 | .unused, |
| 134650 | .unused, |
| 134651 | .unused, |
| 134652 | }, |
| 134653 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134654 | .clobbers = .{ .eflags = true }, |
| 134655 | .each = .{ .once = &.{ |
| 134656 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 134657 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 134658 | .{ .@"0:", .vp_b, .maxu, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 134659 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 134660 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134661 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134662 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134663 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134664 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134665 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 134666 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134667 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 134668 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 134669 | } }, |
| 134670 | }, .{ |
| 134671 | .required_features = .{ .sse2, null, null, null }, |
| 134672 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 134673 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 134674 | .patterns = &.{ |
| 134675 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134676 | }, |
| 134677 | .extra_temps = .{ |
| 134678 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134679 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 134680 | .unused, |
| 134681 | .unused, |
| 134682 | .unused, |
| 134683 | .unused, |
| 134684 | .unused, |
| 134685 | .unused, |
| 134686 | .unused, |
| 134687 | .unused, |
| 134688 | .unused, |
| 134689 | }, |
| 134690 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134691 | .clobbers = .{ .eflags = true }, |
| 134692 | .each = .{ .once = &.{ |
| 134693 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 134694 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 134695 | .{ .@"0:", .p_b, .maxu, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 134696 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 134697 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134698 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134699 | .{ ._, .p_b, .maxu, .dst0x, .tmp1x, ._, ._ }, |
| 134700 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 134701 | .{ ._, .p_b, .maxu, .dst0x, .tmp1x, ._, ._ }, |
| 134702 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 134703 | .{ ._, .p_b, .maxu, .dst0x, .tmp1x, ._, ._ }, |
| 134704 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 134705 | .{ ._, .p_w, .srl, .tmp1x, .ui(8), ._, ._ }, |
| 134706 | .{ ._, .p_b, .maxu, .dst0x, .tmp1x, ._, ._ }, |
| 134707 | } }, |
| 134708 | }, .{ |
| 134709 | .required_features = .{ .avx512f, null, null, null }, |
| 134710 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134711 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 134712 | .patterns = &.{ |
| 134713 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134714 | }, |
| 134715 | .extra_temps = .{ |
| 134716 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134717 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 134718 | .{ .type = .vector_64_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 134719 | .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } }, |
| 134720 | .unused, |
| 134721 | .unused, |
| 134722 | .unused, |
| 134723 | .unused, |
| 134724 | .unused, |
| 134725 | .unused, |
| 134726 | .unused, |
| 134727 | }, |
| 134728 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134729 | .clobbers = .{ .eflags = true }, |
| 134730 | .each = .{ .once = &.{ |
| 134731 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 134732 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 134733 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 134734 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 134735 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 134736 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 134737 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 134738 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 134739 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 134740 | .{ .@"0:", .vp_b, .maxs, .tmp3y, .tmp3y, .memid(.src0y, .tmp0, 32), ._ }, |
| 134741 | .{ ._, .vp_b, .maxs, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 134742 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 134743 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134744 | .{ ._, .vp_b, .maxs, .dst0y, .dst0y, .tmp3y, ._ }, |
| 134745 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 134746 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134747 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134748 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134749 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134750 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134751 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 134752 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134753 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 134754 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134755 | } }, |
| 134756 | }, .{ |
| 134757 | .required_features = .{ .avx2, null, null, null }, |
| 134758 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134759 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 134760 | .patterns = &.{ |
| 134761 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134762 | }, |
| 134763 | .extra_temps = .{ |
| 134764 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134765 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 134766 | .{ .type = .vector_32_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 134767 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134768 | .unused, |
| 134769 | .unused, |
| 134770 | .unused, |
| 134771 | .unused, |
| 134772 | .unused, |
| 134773 | .unused, |
| 134774 | .unused, |
| 134775 | }, |
| 134776 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134777 | .clobbers = .{ .eflags = true }, |
| 134778 | .each = .{ .once = &.{ |
| 134779 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 134780 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 134781 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 134782 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 134783 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 134784 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 134785 | .{ .@"0:", .vp_b, .maxs, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 134786 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 134787 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134788 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 134789 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134790 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134791 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134792 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134793 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134794 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 134795 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134796 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 134797 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134798 | } }, |
| 134799 | }, .{ |
| 134800 | .required_features = .{ .avx, null, null, null }, |
| 134801 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134802 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 134803 | .patterns = &.{ |
| 134804 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134805 | }, |
| 134806 | .extra_temps = .{ |
| 134807 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134808 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 134809 | .{ .type = .vector_32_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 134810 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134811 | .unused, |
| 134812 | .unused, |
| 134813 | .unused, |
| 134814 | .unused, |
| 134815 | .unused, |
| 134816 | .unused, |
| 134817 | .unused, |
| 134818 | }, |
| 134819 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134820 | .clobbers = .{ .eflags = true }, |
| 134821 | .each = .{ .once = &.{ |
| 134822 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 134823 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 134824 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 134825 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 134826 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 134827 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 134828 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 134829 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134830 | .{ .@"0:", .vp_b, .maxs, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 134831 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 134832 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134833 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134834 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134835 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134836 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134837 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 134838 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134839 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 134840 | .{ ._, .vp_b, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 134841 | } }, |
| 134842 | }, .{ |
| 134843 | .required_features = .{ .sse4_1, null, null, null }, |
| 134844 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134845 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 134846 | .patterns = &.{ |
| 134847 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134848 | }, |
| 134849 | .extra_temps = .{ |
| 134850 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134851 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 134852 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 134853 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134854 | .unused, |
| 134855 | .unused, |
| 134856 | .unused, |
| 134857 | .unused, |
| 134858 | .unused, |
| 134859 | .unused, |
| 134860 | .unused, |
| 134861 | }, |
| 134862 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134863 | .clobbers = .{ .eflags = true }, |
| 134864 | .each = .{ .once = &.{ |
| 134865 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 134866 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 134867 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 134868 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 134869 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 134870 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 134871 | .{ .@"0:", .p_b, .maxs, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 134872 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 134873 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134874 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134875 | .{ ._, .p_b, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 134876 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134877 | .{ ._, .p_b, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 134878 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 134879 | .{ ._, .p_b, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 134880 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 134881 | .{ ._, .p_w, .srl, .tmp3x, .ui(8), ._, ._ }, |
| 134882 | .{ ._, .p_b, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 134883 | } }, |
| 134884 | }, .{ |
| 134885 | .required_features = .{ .sse2, null, null, null }, |
| 134886 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 134887 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 134888 | .patterns = &.{ |
| 134889 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134890 | }, |
| 134891 | .extra_temps = .{ |
| 134892 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134893 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 134894 | .{ .type = .vector_16_i8, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 134895 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134896 | .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } }, |
| 134897 | .unused, |
| 134898 | .unused, |
| 134899 | .unused, |
| 134900 | .unused, |
| 134901 | .unused, |
| 134902 | .unused, |
| 134903 | }, |
| 134904 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134905 | .clobbers = .{ .eflags = true }, |
| 134906 | .each = .{ .once = &.{ |
| 134907 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 134908 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 134909 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 134910 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 134911 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 134912 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 134913 | .{ .@"0:", ._dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 134914 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 134915 | .{ ._, .p_b, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 134916 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 134917 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 134918 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 134919 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 134920 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134921 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134922 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 134923 | .{ ._, .p_b, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 134924 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 134925 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 134926 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 134927 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 134928 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 134929 | .{ ._, .p_b, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 134930 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 134931 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 134932 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 134933 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 134934 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 134935 | .{ ._, .p_b, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 134936 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 134937 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 134938 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 134939 | .{ ._, ._dqa, .mov, .tmp3x, .dst0x, ._, ._ }, |
| 134940 | .{ ._, .p_w, .srl, .tmp3x, .ui(8), ._, ._ }, |
| 134941 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 134942 | .{ ._, .p_b, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 134943 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 134944 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 134945 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 134946 | } }, |
| 134947 | }, .{ |
| 134948 | .required_features = .{ .avx512f, null, null, null }, |
| 134949 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 134950 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 134951 | .patterns = &.{ |
| 134952 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134953 | }, |
| 134954 | .extra_temps = .{ |
| 134955 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 134956 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 134957 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 134958 | .unused, |
| 134959 | .unused, |
| 134960 | .unused, |
| 134961 | .unused, |
| 134962 | .unused, |
| 134963 | .unused, |
| 134964 | .unused, |
| 134965 | .unused, |
| 134966 | }, |
| 134967 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 134968 | .clobbers = .{ .eflags = true }, |
| 134969 | .each = .{ .once = &.{ |
| 134970 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 134971 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 134972 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 134973 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 134974 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 134975 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 134976 | .{ .@"0:", .vp_b, .maxu, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 134977 | .{ ._, .vp_b, .maxu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 134978 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 134979 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 134980 | .{ ._, .vp_b, .maxu, .dst0y, .dst0y, .tmp2y, ._ }, |
| 134981 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 134982 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134983 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 134984 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134985 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 134986 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134987 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 134988 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134989 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 134990 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 134991 | } }, |
| 134992 | }, .{ |
| 134993 | .required_features = .{ .avx2, null, null, null }, |
| 134994 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 134995 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 134996 | .patterns = &.{ |
| 134997 | .{ .src = .{ .to_mem, .none, .none } }, |
| 134998 | }, |
| 134999 | .extra_temps = .{ |
| 135000 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 135001 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 135002 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 135003 | .unused, |
| 135004 | .unused, |
| 135005 | .unused, |
| 135006 | .unused, |
| 135007 | .unused, |
| 135008 | .unused, |
| 135009 | .unused, |
| 135010 | .unused, |
| 135011 | }, |
| 135012 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 135013 | .clobbers = .{ .eflags = true }, |
| 135014 | .each = .{ .once = &.{ |
| 135015 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 135016 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 135017 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 135018 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 135019 | .{ .@"0:", .vp_b, .maxu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 135020 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 135021 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 135022 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 135023 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135024 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 135025 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135026 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 135027 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135028 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 135029 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135030 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 135031 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135032 | } }, |
| 135033 | }, .{ |
| 135034 | .required_features = .{ .avx, null, null, null }, |
| 135035 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 135036 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 135037 | .patterns = &.{ |
| 135038 | .{ .src = .{ .to_mem, .none, .none } }, |
| 135039 | }, |
| 135040 | .extra_temps = .{ |
| 135041 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 135042 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 135043 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 135044 | .unused, |
| 135045 | .unused, |
| 135046 | .unused, |
| 135047 | .unused, |
| 135048 | .unused, |
| 135049 | .unused, |
| 135050 | .unused, |
| 135051 | .unused, |
| 135052 | }, |
| 135053 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 135054 | .clobbers = .{ .eflags = true }, |
| 135055 | .each = .{ .once = &.{ |
| 135056 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 135057 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 135058 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 135059 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 135060 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 135061 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135062 | .{ .@"0:", .vp_b, .maxu, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 135063 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 135064 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 135065 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 135066 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135067 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 135068 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135069 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 135070 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135071 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 135072 | .{ ._, .vp_b, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135073 | } }, |
| 135074 | }, .{ |
| 135075 | .required_features = .{ .sse2, null, null, null }, |
| 135076 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 135077 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 135078 | .patterns = &.{ |
| 135079 | .{ .src = .{ .to_mem, .none, .none } }, |
| 135080 | }, |
| 135081 | .extra_temps = .{ |
| 135082 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 135083 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 135084 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 135085 | .unused, |
| 135086 | .unused, |
| 135087 | .unused, |
| 135088 | .unused, |
| 135089 | .unused, |
| 135090 | .unused, |
| 135091 | .unused, |
| 135092 | .unused, |
| 135093 | }, |
| 135094 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 135095 | .clobbers = .{ .eflags = true }, |
| 135096 | .each = .{ .once = &.{ |
| 135097 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 135098 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 135099 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 135100 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 135101 | .{ .@"0:", .p_b, .maxu, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 135102 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 135103 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 135104 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 135105 | .{ ._, .p_b, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 135106 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 135107 | .{ ._, .p_b, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 135108 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 135109 | .{ ._, .p_b, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 135110 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 135111 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 135112 | .{ ._, .p_b, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 135113 | } }, |
| 135114 | }, .{ |
| 135115 | .required_features = .{ .cmov, .slow_incdec, null, null }, |
| 135116 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 135117 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 135118 | .patterns = &.{ |
| 135119 | .{ .src = .{ .to_mem, .none, .none } }, |
| 135120 | }, |
| 135121 | .extra_temps = .{ |
| 135122 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 135123 | .{ .type = .i8, .kind = .{ .rc = .general_purpose } }, |
| 135124 | .unused, |
| 135125 | .unused, |
| 135126 | .unused, |
| 135127 | .unused, |
| 135128 | .unused, |
| 135129 | .unused, |
| 135130 | .unused, |
| 135131 | .unused, |
| 135132 | .unused, |
| 135133 | }, |
| 135134 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 135135 | .clobbers = .{ .eflags = true }, |
| 135136 | .each = .{ .once = &.{ |
| 135137 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 135138 | .{ ._, ._, .movsx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 135139 | .{ .@"0:", ._, .movsx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 135140 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 135141 | .{ ._, ._l, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 135142 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| 135143 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 135144 | } }, |
| 135145 | }, .{ |
| 135146 | .required_features = .{ .cmov, null, null, null }, |
| 135147 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 135148 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 135149 | .patterns = &.{ |
| 135150 | .{ .src = .{ .to_mem, .none, .none } }, |
| 135151 | }, |
| 135152 | .extra_temps = .{ |
| 135153 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 135154 | .{ .type = .i8, .kind = .{ .rc = .general_purpose } }, |
| 135155 | .unused, |
| 135156 | .unused, |
| 135157 | .unused, |
| 135158 | .unused, |
| 135159 | .unused, |
| 135160 | .unused, |
| 135161 | .unused, |
| 135162 | .unused, |
| 135163 | .unused, |
| 135164 | }, |
| 135165 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 135166 | .clobbers = .{ .eflags = true }, |
| 135167 | .each = .{ .once = &.{ |
| 135168 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 135169 | .{ ._, ._, .movsx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 135170 | .{ .@"0:", ._, .movsx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 135171 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 135172 | .{ ._, ._l, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 135173 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| 135174 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| 135175 | } }, |
| 135176 | }, .{ |
| 135177 | .required_features = .{ .slow_incdec, null, null, null }, |
| 135178 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 135179 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 135180 | .patterns = &.{ |
| 135181 | .{ .src = .{ .to_mem, .none, .none } }, |
| 135182 | }, |
| 135183 | .extra_temps = .{ |
| 135184 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 135185 | .{ .type = .i8, .kind = .{ .rc = .general_purpose } }, |
| 135186 | .unused, |
| 135187 | .unused, |
| 135188 | .unused, |
| 135189 | .unused, |
| 135190 | .unused, |
| 135191 | .unused, |
| 135192 | .unused, |
| 135193 | .unused, |
| 135194 | .unused, |
| 135195 | }, |
| 135196 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 135197 | .clobbers = .{ .eflags = true }, |
| 135198 | .each = .{ .once = &.{ |
| 135199 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 135200 | .{ ._, ._, .movsx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 135201 | .{ .@"0:", ._, .movsx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 135202 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 135203 | .{ ._, ._nl, .j, .@"1f", ._, ._, ._ }, |
| 135204 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 135205 | .{ .@"1:", ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| 135206 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 135207 | } }, |
| 135208 | }, .{ |
| 135209 | .dst_constraints = .{ .{ .signed_int = .byte }, .any }, |
| 135210 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 135211 | .patterns = &.{ |
| 135212 | .{ .src = .{ .to_mem, .none, .none } }, |
| 135213 | }, |
| 135214 | .extra_temps = .{ |
| 135215 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 135216 | .{ .type = .i8, .kind = .{ .rc = .general_purpose } }, |
| 135217 | .unused, |
| 135218 | .unused, |
| 135219 | .unused, |
| 135220 | .unused, |
| 135221 | .unused, |
| 135222 | .unused, |
| 135223 | .unused, |
| 135224 | .unused, |
| 135225 | .unused, |
| 135226 | }, |
| 135227 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 135228 | .clobbers = .{ .eflags = true }, |
| 135229 | .each = .{ .once = &.{ |
| 135230 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 135231 | .{ ._, ._, .movsx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 135232 | .{ .@"0:", ._, .movsx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 135233 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 135234 | .{ ._, ._nl, .j, .@"1f", ._, ._, ._ }, |
| 135235 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 135236 | .{ .@"1:", ._c, .de, .tmp0d, ._, ._, ._ }, |
| 135237 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| 135238 | } }, |
| 135239 | }, .{ |
| 135240 | .required_features = .{ .cmov, .slow_incdec, null, null }, |
| 135241 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 135242 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 135243 | .patterns = &.{ |
| 135244 | .{ .src = .{ .to_mem, .none, .none } }, |
| 135245 | }, |
| 135246 | .extra_temps = .{ |
| 135247 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 135248 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 135249 | .unused, |
| 135250 | .unused, |
| 135251 | .unused, |
| 135252 | .unused, |
| 135253 | .unused, |
| 135254 | .unused, |
| 135255 | .unused, |
| 135256 | .unused, |
| 135257 | .unused, |
| 135258 | }, |
| 135259 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 135260 | .clobbers = .{ .eflags = true }, |
| 135261 | .each = .{ .once = &.{ |
| 135262 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 135263 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 135264 | .{ .@"0:", ._, .movzx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 135265 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 135266 | .{ ._, ._b, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 135267 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| 135268 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 135269 | } }, |
| 135270 | }, .{ |
| 135271 | .required_features = .{ .cmov, null, null, null }, |
| 135272 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 135273 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 135274 | .patterns = &.{ |
| 135275 | .{ .src = .{ .to_mem, .none, .none } }, |
| 135276 | }, |
| 135277 | .extra_temps = .{ |
| 135278 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 135279 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 135280 | .unused, |
| 135281 | .unused, |
| 135282 | .unused, |
| 135283 | .unused, |
| 135284 | .unused, |
| 135285 | .unused, |
| 135286 | .unused, |
| 135287 | .unused, |
| 135288 | .unused, |
| 135289 | }, |
| 135290 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 135291 | .clobbers = .{ .eflags = true }, |
| 135292 | .each = .{ .once = &.{ |
| 135293 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 135294 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 135295 | .{ .@"0:", ._, .movzx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 135296 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 135297 | .{ ._, ._b, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 135298 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| 135299 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| 135300 | } }, |
| 135301 | }, .{ |
| 135302 | .required_features = .{ .slow_incdec, null, null, null }, |
| 135303 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 135304 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 135305 | .patterns = &.{ |
| 135306 | .{ .src = .{ .to_mem, .none, .none } }, |
| 135307 | }, |
| 135308 | .extra_temps = .{ |
| 135309 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 135310 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 135311 | .unused, |
| 135312 | .unused, |
| 135313 | .unused, |
| 135314 | .unused, |
| 135315 | .unused, |
| 135316 | .unused, |
| 135317 | .unused, |
| 135318 | .unused, |
| 135319 | .unused, |
| 135320 | }, |
| 135321 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 135322 | .clobbers = .{ .eflags = true }, |
| 135323 | .each = .{ .once = &.{ |
| 135324 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 135325 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 135326 | .{ .@"0:", ._, .movzx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 135327 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 135328 | .{ ._, ._nb, .j, .@"1f", ._, ._, ._ }, |
| 135329 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 135330 | .{ .@"1:", ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| 135331 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 135332 | } }, |
| 135333 | }, .{ |
| 135334 | .dst_constraints = .{ .{ .unsigned_int = .byte }, .any }, |
| 135335 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 135336 | .patterns = &.{ |
| 135337 | .{ .src = .{ .to_mem, .none, .none } }, |
| 135338 | }, |
| 135339 | .extra_temps = .{ |
| 135340 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 135341 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 135342 | .unused, |
| 135343 | .unused, |
| 135344 | .unused, |
| 135345 | .unused, |
| 135346 | .unused, |
| 135347 | .unused, |
| 135348 | .unused, |
| 135349 | .unused, |
| 135350 | .unused, |
| 135351 | }, |
| 135352 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 135353 | .clobbers = .{ .eflags = true }, |
| 135354 | .each = .{ .once = &.{ |
| 135355 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 135356 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 135357 | .{ .@"0:", ._, .movzx, .tmp1d, .memi(.src0b, .tmp0), ._, ._ }, |
| 135358 | .{ ._, ._, .cmp, .dst0b, .tmp1b, ._, ._ }, |
| 135359 | .{ ._, ._nb, .j, .@"1f", ._, ._, ._ }, |
| 135360 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 135361 | .{ .@"1:", ._c, .de, .tmp0d, ._, ._, ._ }, |
| 135362 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| 135363 | } }, |
| 135364 | }, .{ |
| 135365 | .required_features = .{ .avx, null, null, null }, |
| 135366 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 135367 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 135368 | .patterns = &.{ |
| 135369 | .{ .src = .{ .to_sse, .none, .none } }, |
| 135370 | }, |
| 135371 | .extra_temps = .{ |
| 135372 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 135373 | .unused, |
| 135374 | .unused, |
| 135375 | .unused, |
| 135376 | .unused, |
| 135377 | .unused, |
| 135378 | .unused, |
| 135379 | .unused, |
| 135380 | .unused, |
| 135381 | .unused, |
| 135382 | .unused, |
| 135383 | }, |
| 135384 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 135385 | .each = .{ .once = &.{ |
| 135386 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 135387 | .{ ._, .vp_w, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 135388 | } }, |
| 135389 | }, .{ |
| 135390 | .required_features = .{ .sse2, null, null, null }, |
| 135391 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 135392 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 135393 | .patterns = &.{ |
| 135394 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 135395 | }, |
| 135396 | .extra_temps = .{ |
| 135397 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 135398 | .unused, |
| 135399 | .unused, |
| 135400 | .unused, |
| 135401 | .unused, |
| 135402 | .unused, |
| 135403 | .unused, |
| 135404 | .unused, |
| 135405 | .unused, |
| 135406 | .unused, |
| 135407 | .unused, |
| 135408 | }, |
| 135409 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 135410 | .each = .{ .once = &.{ |
| 135411 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 135412 | .{ ._, .p_w, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 135413 | } }, |
| 135414 | }, .{ |
| 135415 | .required_features = .{ .avx, null, null, null }, |
| 135416 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 135417 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 135418 | .patterns = &.{ |
| 135419 | .{ .src = .{ .to_sse, .none, .none } }, |
| 135420 | }, |
| 135421 | .extra_temps = .{ |
| 135422 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 135423 | .unused, |
| 135424 | .unused, |
| 135425 | .unused, |
| 135426 | .unused, |
| 135427 | .unused, |
| 135428 | .unused, |
| 135429 | .unused, |
| 135430 | .unused, |
| 135431 | .unused, |
| 135432 | .unused, |
| 135433 | }, |
| 135434 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 135435 | .each = .{ .once = &.{ |
| 135436 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 135437 | .{ ._, .vp_w, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 135438 | } }, |
| 135439 | }, .{ |
| 135440 | .required_features = .{ .sse4_1, null, null, null }, |
| 135441 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 135442 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 135443 | .patterns = &.{ |
| 135444 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 135445 | }, |
| 135446 | .extra_temps = .{ |
| 135447 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 135448 | .unused, |
| 135449 | .unused, |
| 135450 | .unused, |
| 135451 | .unused, |
| 135452 | .unused, |
| 135453 | .unused, |
| 135454 | .unused, |
| 135455 | .unused, |
| 135456 | .unused, |
| 135457 | .unused, |
| 135458 | }, |
| 135459 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 135460 | .each = .{ .once = &.{ |
| 135461 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 135462 | .{ ._, .p_w, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 135463 | } }, |
| 135464 | }, .{ |
| 135465 | .required_features = .{ .sse2, null, null, null }, |
| 135466 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 135467 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 135468 | .patterns = &.{ |
| 135469 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 135470 | }, |
| 135471 | .extra_temps = .{ |
| 135472 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 135473 | .unused, |
| 135474 | .unused, |
| 135475 | .unused, |
| 135476 | .unused, |
| 135477 | .unused, |
| 135478 | .unused, |
| 135479 | .unused, |
| 135480 | .unused, |
| 135481 | .unused, |
| 135482 | .unused, |
| 135483 | }, |
| 135484 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 135485 | .each = .{ .once = &.{ |
| 135486 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 135487 | .{ ._, .p_w, .subus, .dst0x, .tmp0x, ._, ._ }, |
| 135488 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 135489 | } }, |
| 135490 | }, .{ |
| 135491 | .required_features = .{ .avx, null, null, null }, |
| 135492 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 135493 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 135494 | .patterns = &.{ |
| 135495 | .{ .src = .{ .to_sse, .none, .none } }, |
| 135496 | }, |
| 135497 | .extra_temps = .{ |
| 135498 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 135499 | .unused, |
| 135500 | .unused, |
| 135501 | .unused, |
| 135502 | .unused, |
| 135503 | .unused, |
| 135504 | .unused, |
| 135505 | .unused, |
| 135506 | .unused, |
| 135507 | .unused, |
| 135508 | .unused, |
| 135509 | }, |
| 135510 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 135511 | .each = .{ .once = &.{ |
| 135512 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 135513 | .{ ._, .vp_w, .maxs, .tmp0x, .src0x, .tmp0x, ._ }, |
| 135514 | .{ ._, .vp_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 135515 | .{ ._, .vp_w, .maxs, .dst0x, .tmp0x, .dst0x, ._ }, |
| 135516 | } }, |
| 135517 | }, .{ |
| 135518 | .required_features = .{ .sse2, null, null, null }, |
| 135519 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 135520 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 135521 | .patterns = &.{ |
| 135522 | .{ .src = .{ .to_sse, .none, .none } }, |
| 135523 | }, |
| 135524 | .extra_temps = .{ |
| 135525 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 135526 | .unused, |
| 135527 | .unused, |
| 135528 | .unused, |
| 135529 | .unused, |
| 135530 | .unused, |
| 135531 | .unused, |
| 135532 | .unused, |
| 135533 | .unused, |
| 135534 | .unused, |
| 135535 | .unused, |
| 135536 | }, |
| 135537 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 135538 | .each = .{ .once = &.{ |
| 135539 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 135540 | .{ ._, .p_w, .maxs, .tmp0x, .src0x, ._, ._ }, |
| 135541 | .{ ._, .p_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 135542 | .{ ._, .p_w, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 135543 | } }, |
| 135544 | }, .{ |
| 135545 | .required_features = .{ .avx, null, null, null }, |
| 135546 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 135547 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 135548 | .patterns = &.{ |
| 135549 | .{ .src = .{ .to_sse, .none, .none } }, |
| 135550 | }, |
| 135551 | .extra_temps = .{ |
| 135552 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 135553 | .unused, |
| 135554 | .unused, |
| 135555 | .unused, |
| 135556 | .unused, |
| 135557 | .unused, |
| 135558 | .unused, |
| 135559 | .unused, |
| 135560 | .unused, |
| 135561 | .unused, |
| 135562 | .unused, |
| 135563 | }, |
| 135564 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 135565 | .each = .{ .once = &.{ |
| 135566 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 135567 | .{ ._, .vp_w, .maxu, .tmp0x, .src0x, .tmp0x, ._ }, |
| 135568 | .{ ._, .vp_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 135569 | .{ ._, .vp_w, .maxu, .dst0x, .tmp0x, .dst0x, ._ }, |
| 135570 | } }, |
| 135571 | }, .{ |
| 135572 | .required_features = .{ .sse4_1, null, null, null }, |
| 135573 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 135574 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 135575 | .patterns = &.{ |
| 135576 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 135577 | }, |
| 135578 | .extra_temps = .{ |
| 135579 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 135580 | .unused, |
| 135581 | .unused, |
| 135582 | .unused, |
| 135583 | .unused, |
| 135584 | .unused, |
| 135585 | .unused, |
| 135586 | .unused, |
| 135587 | .unused, |
| 135588 | .unused, |
| 135589 | .unused, |
| 135590 | }, |
| 135591 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 135592 | .each = .{ .once = &.{ |
| 135593 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 135594 | .{ ._, .p_w, .maxu, .tmp0x, .src0x, ._, ._ }, |
| 135595 | .{ ._, .p_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 135596 | .{ ._, .p_w, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 135597 | } }, |
| 135598 | }, .{ |
| 135599 | .required_features = .{ .sse2, null, null, null }, |
| 135600 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 135601 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 135602 | .patterns = &.{ |
| 135603 | .{ .src = .{ .to_sse, .none, .none } }, |
| 135604 | }, |
| 135605 | .extra_temps = .{ |
| 135606 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 135607 | .unused, |
| 135608 | .unused, |
| 135609 | .unused, |
| 135610 | .unused, |
| 135611 | .unused, |
| 135612 | .unused, |
| 135613 | .unused, |
| 135614 | .unused, |
| 135615 | .unused, |
| 135616 | .unused, |
| 135617 | }, |
| 135618 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 135619 | .each = .{ .once = &.{ |
| 135620 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 135621 | .{ ._, .p_w, .subus, .tmp0x, .src0x, ._, ._ }, |
| 135622 | .{ ._, .p_w, .add, .tmp0x, .src0x, ._, ._ }, |
| 135623 | .{ ._, .p_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 135624 | .{ ._, .p_w, .subus, .dst0x, .tmp0x, ._, ._ }, |
| 135625 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 135626 | } }, |
| 135627 | }, .{ |
| 135628 | .required_features = .{ .avx, null, null, null }, |
| 135629 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 135630 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 135631 | .patterns = &.{ |
| 135632 | .{ .src = .{ .to_sse, .none, .none } }, |
| 135633 | }, |
| 135634 | .extra_temps = .{ |
| 135635 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 135636 | .unused, |
| 135637 | .unused, |
| 135638 | .unused, |
| 135639 | .unused, |
| 135640 | .unused, |
| 135641 | .unused, |
| 135642 | .unused, |
| 135643 | .unused, |
| 135644 | .unused, |
| 135645 | .unused, |
| 135646 | }, |
| 135647 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 135648 | .each = .{ .once = &.{ |
| 135649 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 135650 | .{ ._, .vp_w, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 135651 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 135652 | .{ ._, .vp_w, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 135653 | } }, |
| 135654 | }, .{ |
| 135655 | .required_features = .{ .sse2, null, null, null }, |
| 135656 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 135657 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 135658 | .patterns = &.{ |
| 135659 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 135660 | }, |
| 135661 | .extra_temps = .{ |
| 135662 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 135663 | .unused, |
| 135664 | .unused, |
| 135665 | .unused, |
| 135666 | .unused, |
| 135667 | .unused, |
| 135668 | .unused, |
| 135669 | .unused, |
| 135670 | .unused, |
| 135671 | .unused, |
| 135672 | .unused, |
| 135673 | }, |
| 135674 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 135675 | .each = .{ .once = &.{ |
| 135676 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 135677 | .{ ._, .p_w, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 135678 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 135679 | .{ ._, .p_w, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 135680 | } }, |
| 135681 | }, .{ |
| 135682 | .required_features = .{ .avx, null, null, null }, |
| 135683 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 135684 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 135685 | .patterns = &.{ |
| 135686 | .{ .src = .{ .to_sse, .none, .none } }, |
| 135687 | }, |
| 135688 | .extra_temps = .{ |
| 135689 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 135690 | .unused, |
| 135691 | .unused, |
| 135692 | .unused, |
| 135693 | .unused, |
| 135694 | .unused, |
| 135695 | .unused, |
| 135696 | .unused, |
| 135697 | .unused, |
| 135698 | .unused, |
| 135699 | .unused, |
| 135700 | }, |
| 135701 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 135702 | .each = .{ .once = &.{ |
| 135703 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 135704 | .{ ._, .vp_w, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 135705 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 135706 | .{ ._, .vp_w, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 135707 | } }, |
| 135708 | }, .{ |
| 135709 | .required_features = .{ .sse4_1, null, null, null }, |
| 135710 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 135711 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 135712 | .patterns = &.{ |
| 135713 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 135714 | }, |
| 135715 | .extra_temps = .{ |
| 135716 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 135717 | .unused, |
| 135718 | .unused, |
| 135719 | .unused, |
| 135720 | .unused, |
| 135721 | .unused, |
| 135722 | .unused, |
| 135723 | .unused, |
| 135724 | .unused, |
| 135725 | .unused, |
| 135726 | .unused, |
| 135727 | }, |
| 135728 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 135729 | .each = .{ .once = &.{ |
| 135730 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 135731 | .{ ._, .p_w, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 135732 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 135733 | .{ ._, .p_w, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 135734 | } }, |
| 135735 | }, .{ |
| 135736 | .required_features = .{ .sse2, null, null, null }, |
| 135737 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 135738 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 135739 | .patterns = &.{ |
| 135740 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 135741 | }, |
| 135742 | .extra_temps = .{ |
| 135743 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 135744 | .unused, |
| 135745 | .unused, |
| 135746 | .unused, |
| 135747 | .unused, |
| 135748 | .unused, |
| 135749 | .unused, |
| 135750 | .unused, |
| 135751 | .unused, |
| 135752 | .unused, |
| 135753 | .unused, |
| 135754 | }, |
| 135755 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 135756 | .each = .{ .once = &.{ |
| 135757 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 135758 | .{ ._, .p_w, .subus, .dst0x, .tmp0x, ._, ._ }, |
| 135759 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 135760 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 135761 | .{ ._, .p_w, .subus, .dst0x, .tmp0x, ._, ._ }, |
| 135762 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 135763 | } }, |
| 135764 | }, .{ |
| 135765 | .required_features = .{ .avx2, null, null, null }, |
| 135766 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 135767 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 135768 | .patterns = &.{ |
| 135769 | .{ .src = .{ .mem, .none, .none } }, |
| 135770 | .{ .src = .{ .to_sse, .none, .none } }, |
| 135771 | }, |
| 135772 | .extra_temps = .{ |
| 135773 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 135774 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 135775 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 135776 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 135777 | .unused, |
| 135778 | .unused, |
| 135779 | .unused, |
| 135780 | .unused, |
| 135781 | .unused, |
| 135782 | .unused, |
| 135783 | .unused, |
| 135784 | }, |
| 135785 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 135786 | .each = .{ .once = &.{ |
| 135787 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 135788 | .{ ._, .vp_w, .broadcast, .tmp2x, .lea(.tmp0w), ._, ._ }, |
| 135789 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 135790 | .{ ._, .vp_, .xor, .dst0x, .tmp2x, .src0x, ._ }, |
| 135791 | .{ ._, .vp_, .@"or", .dst0x, .dst0x, .lea(.tmp0x), ._ }, |
| 135792 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 135793 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135794 | } }, |
| 135795 | }, .{ |
| 135796 | .required_features = .{ .avx, null, null, null }, |
| 135797 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 135798 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 135799 | .patterns = &.{ |
| 135800 | .{ .src = .{ .mem, .none, .none } }, |
| 135801 | .{ .src = .{ .to_sse, .none, .none } }, |
| 135802 | }, |
| 135803 | .extra_temps = .{ |
| 135804 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 135805 | .{ .type = .vector_2_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 135806 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 135807 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 135808 | .unused, |
| 135809 | .unused, |
| 135810 | .unused, |
| 135811 | .unused, |
| 135812 | .unused, |
| 135813 | .unused, |
| 135814 | .unused, |
| 135815 | }, |
| 135816 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 135817 | .each = .{ .once = &.{ |
| 135818 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 135819 | .{ ._, .v_ss, .broadcast, .tmp2x, .lea(.tmp0d), ._, ._ }, |
| 135820 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 135821 | .{ ._, .vp_, .xor, .dst0x, .tmp2x, .src0x, ._ }, |
| 135822 | .{ ._, .vp_, .@"or", .dst0x, .dst0x, .lea(.tmp0x), ._ }, |
| 135823 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 135824 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135825 | } }, |
| 135826 | }, .{ |
| 135827 | .required_features = .{ .sse4_1, null, null, null }, |
| 135828 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 135829 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 135830 | .patterns = &.{ |
| 135831 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 135832 | }, |
| 135833 | .extra_temps = .{ |
| 135834 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 135835 | .{ .type = .vector_4_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 135836 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 135837 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 135838 | .unused, |
| 135839 | .unused, |
| 135840 | .unused, |
| 135841 | .unused, |
| 135842 | .unused, |
| 135843 | .unused, |
| 135844 | .unused, |
| 135845 | }, |
| 135846 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 135847 | .each = .{ .once = &.{ |
| 135848 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 135849 | .{ ._, ._, .movddup, .tmp3x, .lea(.tmp0q), ._, ._ }, |
| 135850 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 135851 | .{ ._, .p_, .xor, .dst0x, .tmp3x, ._, ._ }, |
| 135852 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 135853 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 135854 | .{ ._, .p_, .xor, .dst0x, .tmp3x, ._, ._ }, |
| 135855 | } }, |
| 135856 | }, .{ |
| 135857 | .required_features = .{ .sse2, null, null, null }, |
| 135858 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 135859 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 135860 | .patterns = &.{ |
| 135861 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 135862 | }, |
| 135863 | .extra_temps = .{ |
| 135864 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 135865 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 135866 | .{ .type = .vector_8_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 135867 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 135868 | .unused, |
| 135869 | .unused, |
| 135870 | .unused, |
| 135871 | .unused, |
| 135872 | .unused, |
| 135873 | .unused, |
| 135874 | .unused, |
| 135875 | }, |
| 135876 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 135877 | .each = .{ .once = &.{ |
| 135878 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 135879 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 135880 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 135881 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 135882 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 135883 | .{ ._, .p_w, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 135884 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 135885 | .{ ._, .p_w, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 135886 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 135887 | .{ ._, .p_w, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 135888 | } }, |
| 135889 | }, .{ |
| 135890 | .required_features = .{ .avx, null, null, null }, |
| 135891 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 135892 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 135893 | .patterns = &.{ |
| 135894 | .{ .src = .{ .to_sse, .none, .none } }, |
| 135895 | }, |
| 135896 | .extra_temps = .{ |
| 135897 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 135898 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 135899 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 135900 | .unused, |
| 135901 | .unused, |
| 135902 | .unused, |
| 135903 | .unused, |
| 135904 | .unused, |
| 135905 | .unused, |
| 135906 | .unused, |
| 135907 | .unused, |
| 135908 | }, |
| 135909 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 135910 | .each = .{ .once = &.{ |
| 135911 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 135912 | .{ ._, .vp_w, .cmpeq, .tmp2x, .tmp2x, .tmp2x, ._ }, |
| 135913 | .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 135914 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135915 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 135916 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 135917 | } }, |
| 135918 | }, .{ |
| 135919 | .required_features = .{ .sse4_1, null, null, null }, |
| 135920 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 135921 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 135922 | .patterns = &.{ |
| 135923 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 135924 | }, |
| 135925 | .extra_temps = .{ |
| 135926 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 135927 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 135928 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 135929 | .unused, |
| 135930 | .unused, |
| 135931 | .unused, |
| 135932 | .unused, |
| 135933 | .unused, |
| 135934 | .unused, |
| 135935 | .unused, |
| 135936 | .unused, |
| 135937 | }, |
| 135938 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 135939 | .each = .{ .once = &.{ |
| 135940 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 135941 | .{ ._, .p_w, .cmpeq, .tmp2x, .tmp2x, ._, ._ }, |
| 135942 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 135943 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 135944 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 135945 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 135946 | } }, |
| 135947 | }, .{ |
| 135948 | .required_features = .{ .sse2, null, null, null }, |
| 135949 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 135950 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 135951 | .patterns = &.{ |
| 135952 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 135953 | }, |
| 135954 | .extra_temps = .{ |
| 135955 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 135956 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 135957 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 135958 | .unused, |
| 135959 | .unused, |
| 135960 | .unused, |
| 135961 | .unused, |
| 135962 | .unused, |
| 135963 | .unused, |
| 135964 | .unused, |
| 135965 | .unused, |
| 135966 | }, |
| 135967 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 135968 | .each = .{ .once = &.{ |
| 135969 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 135970 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 135971 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 135972 | .{ ._, .p_w, .subus, .dst0x, .tmp2x, ._, ._ }, |
| 135973 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 135974 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 135975 | .{ ._, .p_w, .subus, .dst0x, .tmp2x, ._, ._ }, |
| 135976 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 135977 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 135978 | .{ ._, .p_w, .subus, .dst0x, .tmp2x, ._, ._ }, |
| 135979 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 135980 | } }, |
| 135981 | }, .{ |
| 135982 | .required_features = .{ .avx2, null, null, null }, |
| 135983 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 135984 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 135985 | .patterns = &.{ |
| 135986 | .{ .src = .{ .to_sse, .none, .none } }, |
| 135987 | }, |
| 135988 | .extra_temps = .{ |
| 135989 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 135990 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 135991 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 135992 | .unused, |
| 135993 | .unused, |
| 135994 | .unused, |
| 135995 | .unused, |
| 135996 | .unused, |
| 135997 | .unused, |
| 135998 | .unused, |
| 135999 | .unused, |
| 136000 | }, |
| 136001 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 136002 | .each = .{ .once = &.{ |
| 136003 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136004 | .{ ._, .vp_w, .broadcast, .tmp2x, .lea(.tmp0w), ._, ._ }, |
| 136005 | .{ ._, .vp_, .xor, .dst0x, .src0x, .tmp2x, ._ }, |
| 136006 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136007 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136008 | } }, |
| 136009 | }, .{ |
| 136010 | .required_features = .{ .avx, null, null, null }, |
| 136011 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136012 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136013 | .patterns = &.{ |
| 136014 | .{ .src = .{ .to_sse, .none, .none } }, |
| 136015 | }, |
| 136016 | .extra_temps = .{ |
| 136017 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 136018 | .{ .type = .vector_2_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136019 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136020 | .unused, |
| 136021 | .unused, |
| 136022 | .unused, |
| 136023 | .unused, |
| 136024 | .unused, |
| 136025 | .unused, |
| 136026 | .unused, |
| 136027 | .unused, |
| 136028 | }, |
| 136029 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 136030 | .each = .{ .once = &.{ |
| 136031 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136032 | .{ ._, .v_ss, .broadcast, .tmp2x, .lea(.tmp0d), ._, ._ }, |
| 136033 | .{ ._, .vp_, .xor, .dst0x, .src0x, .tmp2x, ._ }, |
| 136034 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136035 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136036 | } }, |
| 136037 | }, .{ |
| 136038 | .required_features = .{ .sse4_1, null, null, null }, |
| 136039 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136040 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136041 | .patterns = &.{ |
| 136042 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 136043 | }, |
| 136044 | .extra_temps = .{ |
| 136045 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 136046 | .{ .type = .vector_4_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136047 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136048 | .unused, |
| 136049 | .unused, |
| 136050 | .unused, |
| 136051 | .unused, |
| 136052 | .unused, |
| 136053 | .unused, |
| 136054 | .unused, |
| 136055 | .unused, |
| 136056 | }, |
| 136057 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 136058 | .each = .{ .once = &.{ |
| 136059 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136060 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 136061 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 136062 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136063 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 136064 | } }, |
| 136065 | }, .{ |
| 136066 | .required_features = .{ .sse2, null, null, null }, |
| 136067 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136068 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136069 | .patterns = &.{ |
| 136070 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 136071 | }, |
| 136072 | .extra_temps = .{ |
| 136073 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136074 | .unused, |
| 136075 | .unused, |
| 136076 | .unused, |
| 136077 | .unused, |
| 136078 | .unused, |
| 136079 | .unused, |
| 136080 | .unused, |
| 136081 | .unused, |
| 136082 | .unused, |
| 136083 | .unused, |
| 136084 | }, |
| 136085 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 136086 | .each = .{ .once = &.{ |
| 136087 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 136088 | .{ ._, .p_w, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 136089 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 136090 | .{ ._, .p_w, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 136091 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 136092 | .{ ._, .p_w, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 136093 | } }, |
| 136094 | }, .{ |
| 136095 | .required_features = .{ .avx, null, null, null }, |
| 136096 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136097 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136098 | .patterns = &.{ |
| 136099 | .{ .src = .{ .to_sse, .none, .none } }, |
| 136100 | }, |
| 136101 | .extra_temps = .{ |
| 136102 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 136103 | .unused, |
| 136104 | .unused, |
| 136105 | .unused, |
| 136106 | .unused, |
| 136107 | .unused, |
| 136108 | .unused, |
| 136109 | .unused, |
| 136110 | .unused, |
| 136111 | .unused, |
| 136112 | .unused, |
| 136113 | }, |
| 136114 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 136115 | .each = .{ .once = &.{ |
| 136116 | .{ ._, .vp_w, .cmpeq, .tmp0x, .tmp0x, .tmp0x, ._ }, |
| 136117 | .{ ._, .vp_, .xor, .dst0x, .src0x, .tmp0x, ._ }, |
| 136118 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136119 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136120 | } }, |
| 136121 | }, .{ |
| 136122 | .required_features = .{ .sse4_1, null, null, null }, |
| 136123 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136124 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136125 | .patterns = &.{ |
| 136126 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 136127 | }, |
| 136128 | .extra_temps = .{ |
| 136129 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 136130 | .unused, |
| 136131 | .unused, |
| 136132 | .unused, |
| 136133 | .unused, |
| 136134 | .unused, |
| 136135 | .unused, |
| 136136 | .unused, |
| 136137 | .unused, |
| 136138 | .unused, |
| 136139 | .unused, |
| 136140 | }, |
| 136141 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 136142 | .each = .{ .once = &.{ |
| 136143 | .{ ._, .p_w, .cmpeq, .tmp0x, .tmp0x, ._, ._ }, |
| 136144 | .{ ._, .p_, .xor, .dst0x, .tmp0x, ._, ._ }, |
| 136145 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136146 | .{ ._, .p_, .xor, .dst0x, .tmp0x, ._, ._ }, |
| 136147 | } }, |
| 136148 | }, .{ |
| 136149 | .required_features = .{ .sse2, null, null, null }, |
| 136150 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136151 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136152 | .patterns = &.{ |
| 136153 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 136154 | }, |
| 136155 | .extra_temps = .{ |
| 136156 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 136157 | .unused, |
| 136158 | .unused, |
| 136159 | .unused, |
| 136160 | .unused, |
| 136161 | .unused, |
| 136162 | .unused, |
| 136163 | .unused, |
| 136164 | .unused, |
| 136165 | .unused, |
| 136166 | .unused, |
| 136167 | }, |
| 136168 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 136169 | .each = .{ .once = &.{ |
| 136170 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 136171 | .{ ._, .p_w, .subus, .dst0x, .tmp0x, ._, ._ }, |
| 136172 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 136173 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 136174 | .{ ._, .p_w, .subus, .dst0x, .tmp0x, ._, ._ }, |
| 136175 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 136176 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 136177 | .{ ._, .p_w, .subus, .dst0x, .tmp0x, ._, ._ }, |
| 136178 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 136179 | } }, |
| 136180 | }, .{ |
| 136181 | .required_features = .{ .avx2, null, null, null }, |
| 136182 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136183 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 136184 | .patterns = &.{ |
| 136185 | .{ .src = .{ .mem, .none, .none } }, |
| 136186 | .{ .src = .{ .to_sse, .none, .none } }, |
| 136187 | }, |
| 136188 | .extra_temps = .{ |
| 136189 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 136190 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136191 | .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } }, |
| 136192 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 136193 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136194 | .unused, |
| 136195 | .unused, |
| 136196 | .unused, |
| 136197 | .unused, |
| 136198 | .unused, |
| 136199 | .unused, |
| 136200 | }, |
| 136201 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 136202 | .each = .{ .once = &.{ |
| 136203 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136204 | .{ ._, .vp_w, .broadcast, .tmp2y, .lea(.tmp0w), ._, ._ }, |
| 136205 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 136206 | .{ ._, .vp_, .xor, .dst0y, .tmp2y, .src0y, ._ }, |
| 136207 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 136208 | .{ ._, .v_i128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 136209 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp4x, ._ }, |
| 136210 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136211 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136212 | } }, |
| 136213 | }, .{ |
| 136214 | .required_features = .{ .avx, null, null, null }, |
| 136215 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136216 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 136217 | .patterns = &.{ |
| 136218 | .{ .src = .{ .mem, .none, .none } }, |
| 136219 | .{ .src = .{ .to_sse, .none, .none } }, |
| 136220 | }, |
| 136221 | .extra_temps = .{ |
| 136222 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 136223 | .{ .type = .vector_2_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136224 | .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } }, |
| 136225 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 136226 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136227 | .unused, |
| 136228 | .unused, |
| 136229 | .unused, |
| 136230 | .unused, |
| 136231 | .unused, |
| 136232 | .unused, |
| 136233 | }, |
| 136234 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 136235 | .each = .{ .once = &.{ |
| 136236 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136237 | .{ ._, .v_ss, .broadcast, .tmp2y, .lea(.tmp0d), ._, ._ }, |
| 136238 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 136239 | .{ ._, .v_ps, .xor, .dst0y, .tmp2y, .src0y, ._ }, |
| 136240 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 136241 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 136242 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp4x, ._ }, |
| 136243 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136244 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136245 | } }, |
| 136246 | }, .{ |
| 136247 | .required_features = .{ .avx2, null, null, null }, |
| 136248 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136249 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 136250 | .patterns = &.{ |
| 136251 | .{ .src = .{ .to_sse, .none, .none } }, |
| 136252 | }, |
| 136253 | .extra_temps = .{ |
| 136254 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 136255 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 136256 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 136257 | .unused, |
| 136258 | .unused, |
| 136259 | .unused, |
| 136260 | .unused, |
| 136261 | .unused, |
| 136262 | .unused, |
| 136263 | .unused, |
| 136264 | .unused, |
| 136265 | }, |
| 136266 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 136267 | .each = .{ .once = &.{ |
| 136268 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136269 | .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 136270 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 136271 | .{ ._, .vp_w, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136272 | .{ ._, .vp_w, .cmpeq, .tmp2x, .tmp2x, .tmp2x, ._ }, |
| 136273 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136274 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136275 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136276 | } }, |
| 136277 | }, .{ |
| 136278 | .required_features = .{ .avx, null, null, null }, |
| 136279 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136280 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 136281 | .patterns = &.{ |
| 136282 | .{ .src = .{ .to_sse, .none, .none } }, |
| 136283 | }, |
| 136284 | .extra_temps = .{ |
| 136285 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 136286 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 136287 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 136288 | .unused, |
| 136289 | .unused, |
| 136290 | .unused, |
| 136291 | .unused, |
| 136292 | .unused, |
| 136293 | .unused, |
| 136294 | .unused, |
| 136295 | .unused, |
| 136296 | }, |
| 136297 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 136298 | .each = .{ .once = &.{ |
| 136299 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136300 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 136301 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 136302 | .{ ._, .vp_w, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136303 | .{ ._, .vp_w, .cmpeq, .tmp2x, .tmp2x, .tmp2x, ._ }, |
| 136304 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136305 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136306 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136307 | } }, |
| 136308 | }, .{ |
| 136309 | .required_features = .{ .avx2, null, null, null }, |
| 136310 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136311 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 136312 | .patterns = &.{ |
| 136313 | .{ .src = .{ .to_sse, .none, .none } }, |
| 136314 | }, |
| 136315 | .extra_temps = .{ |
| 136316 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136317 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 136318 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136319 | .unused, |
| 136320 | .unused, |
| 136321 | .unused, |
| 136322 | .unused, |
| 136323 | .unused, |
| 136324 | .unused, |
| 136325 | .unused, |
| 136326 | .unused, |
| 136327 | }, |
| 136328 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 136329 | .each = .{ .once = &.{ |
| 136330 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 136331 | .{ ._, .vp_w, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 136332 | .{ ._, ._, .lea, .tmp1p, .mem(.tmp2), ._, ._ }, |
| 136333 | .{ ._, .vp_w, .broadcast, .tmp0x, .lea(.tmp1w), ._, ._ }, |
| 136334 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136335 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136336 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136337 | } }, |
| 136338 | }, .{ |
| 136339 | .required_features = .{ .avx, null, null, null }, |
| 136340 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136341 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 136342 | .patterns = &.{ |
| 136343 | .{ .src = .{ .to_sse, .none, .none } }, |
| 136344 | }, |
| 136345 | .extra_temps = .{ |
| 136346 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136347 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 136348 | .{ .type = .vector_2_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136349 | .unused, |
| 136350 | .unused, |
| 136351 | .unused, |
| 136352 | .unused, |
| 136353 | .unused, |
| 136354 | .unused, |
| 136355 | .unused, |
| 136356 | .unused, |
| 136357 | }, |
| 136358 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 136359 | .each = .{ .once = &.{ |
| 136360 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 136361 | .{ ._, .vp_w, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 136362 | .{ ._, ._, .lea, .tmp1p, .mem(.tmp2), ._, ._ }, |
| 136363 | .{ ._, .v_ss, .broadcast, .tmp0x, .lea(.tmp1d), ._, ._ }, |
| 136364 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136365 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136366 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136367 | } }, |
| 136368 | }, .{ |
| 136369 | .required_features = .{ .avx2, null, null, null }, |
| 136370 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136371 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 136372 | .patterns = &.{ |
| 136373 | .{ .src = .{ .to_sse, .none, .none } }, |
| 136374 | }, |
| 136375 | .extra_temps = .{ |
| 136376 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 136377 | .unused, |
| 136378 | .unused, |
| 136379 | .unused, |
| 136380 | .unused, |
| 136381 | .unused, |
| 136382 | .unused, |
| 136383 | .unused, |
| 136384 | .unused, |
| 136385 | .unused, |
| 136386 | .unused, |
| 136387 | }, |
| 136388 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 136389 | .each = .{ .once = &.{ |
| 136390 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 136391 | .{ ._, .vp_w, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 136392 | .{ ._, .vp_w, .cmpeq, .tmp0x, .tmp0x, .tmp0x, ._ }, |
| 136393 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136394 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136395 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136396 | } }, |
| 136397 | }, .{ |
| 136398 | .required_features = .{ .avx, null, null, null }, |
| 136399 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136400 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 136401 | .patterns = &.{ |
| 136402 | .{ .src = .{ .to_sse, .none, .none } }, |
| 136403 | }, |
| 136404 | .extra_temps = .{ |
| 136405 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 136406 | .unused, |
| 136407 | .unused, |
| 136408 | .unused, |
| 136409 | .unused, |
| 136410 | .unused, |
| 136411 | .unused, |
| 136412 | .unused, |
| 136413 | .unused, |
| 136414 | .unused, |
| 136415 | .unused, |
| 136416 | }, |
| 136417 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 136418 | .each = .{ .once = &.{ |
| 136419 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 136420 | .{ ._, .vp_w, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 136421 | .{ ._, .vp_w, .cmpeq, .tmp0x, .tmp0x, .tmp0x, ._ }, |
| 136422 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136423 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136424 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136425 | } }, |
| 136426 | }, .{ |
| 136427 | .required_features = .{ .avx512f, null, null, null }, |
| 136428 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136429 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 136430 | .patterns = &.{ |
| 136431 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136432 | }, |
| 136433 | .extra_temps = .{ |
| 136434 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 136435 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136436 | .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } }, |
| 136437 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 136438 | .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } }, |
| 136439 | .unused, |
| 136440 | .unused, |
| 136441 | .unused, |
| 136442 | .unused, |
| 136443 | .unused, |
| 136444 | .unused, |
| 136445 | }, |
| 136446 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136447 | .each = .{ .once = &.{ |
| 136448 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136449 | .{ ._, .vp_w, .broadcast, .tmp2y, .lea(.tmp0w), ._, ._ }, |
| 136450 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 136451 | .{ ._, .vp_, .xor, .dst0y, .tmp2y, .mem(.src0y), ._ }, |
| 136452 | .{ ._, .vp_, .xor, .tmp4y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 136453 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 136454 | .{ ._, .vp_, .@"or", .tmp4y, .tmp4y, .lead(.tmp0y, 32), ._ }, |
| 136455 | .{ ._, .vp_w, .minu, .dst0y, .dst0y, .tmp4y, ._ }, |
| 136456 | .{ ._, .v_i128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 136457 | .{ ._, .vp_w, .minu, .dst0x, .dst0x, .tmp4x, ._ }, |
| 136458 | .{ ._, .vp_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 136459 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136460 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136461 | } }, |
| 136462 | }, .{ |
| 136463 | .required_features = .{ .avx512f, null, null, null }, |
| 136464 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136465 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 136466 | .patterns = &.{ |
| 136467 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136468 | }, |
| 136469 | .extra_temps = .{ |
| 136470 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 136471 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 136472 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 136473 | .unused, |
| 136474 | .unused, |
| 136475 | .unused, |
| 136476 | .unused, |
| 136477 | .unused, |
| 136478 | .unused, |
| 136479 | .unused, |
| 136480 | .unused, |
| 136481 | }, |
| 136482 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136483 | .each = .{ .once = &.{ |
| 136484 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136485 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 136486 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 136487 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 136488 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 136489 | .{ ._, .vp_w, .maxu, .dst0y, .dst0y, .tmp2y, ._ }, |
| 136490 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 136491 | .{ ._, .vp_w, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136492 | .{ ._, .vp_w, .cmpeq, .tmp2x, .tmp2x, .tmp2x, ._ }, |
| 136493 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136494 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136495 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136496 | } }, |
| 136497 | }, .{ |
| 136498 | .required_features = .{ .avx512f, null, null, null }, |
| 136499 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136500 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 136501 | .patterns = &.{ |
| 136502 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136503 | }, |
| 136504 | .extra_temps = .{ |
| 136505 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136506 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 136507 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136508 | .unused, |
| 136509 | .unused, |
| 136510 | .unused, |
| 136511 | .unused, |
| 136512 | .unused, |
| 136513 | .unused, |
| 136514 | .unused, |
| 136515 | .unused, |
| 136516 | }, |
| 136517 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136518 | .each = .{ .once = &.{ |
| 136519 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 136520 | .{ ._, .vp_w, .maxs, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 136521 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 136522 | .{ ._, .vp_w, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136523 | .{ ._, ._, .lea, .tmp1p, .mem(.tmp2), ._, ._ }, |
| 136524 | .{ ._, .vp_w, .broadcast, .tmp0x, .lea(.tmp1w), ._, ._ }, |
| 136525 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136526 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136527 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136528 | } }, |
| 136529 | }, .{ |
| 136530 | .required_features = .{ .avx512f, null, null, null }, |
| 136531 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136532 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 136533 | .patterns = &.{ |
| 136534 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136535 | }, |
| 136536 | .extra_temps = .{ |
| 136537 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 136538 | .unused, |
| 136539 | .unused, |
| 136540 | .unused, |
| 136541 | .unused, |
| 136542 | .unused, |
| 136543 | .unused, |
| 136544 | .unused, |
| 136545 | .unused, |
| 136546 | .unused, |
| 136547 | .unused, |
| 136548 | }, |
| 136549 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136550 | .each = .{ .once = &.{ |
| 136551 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 136552 | .{ ._, .vp_w, .maxu, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 136553 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 136554 | .{ ._, .vp_w, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136555 | .{ ._, .vp_w, .cmpeq, .tmp0x, .tmp0x, .tmp0x, ._ }, |
| 136556 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136557 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136558 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp0x, ._ }, |
| 136559 | } }, |
| 136560 | }, .{ |
| 136561 | .required_features = .{ .avx2, null, null, null }, |
| 136562 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136563 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 136564 | .patterns = &.{ |
| 136565 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136566 | }, |
| 136567 | .extra_temps = .{ |
| 136568 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 136569 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136570 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136571 | .unused, |
| 136572 | .unused, |
| 136573 | .unused, |
| 136574 | .unused, |
| 136575 | .unused, |
| 136576 | .unused, |
| 136577 | .unused, |
| 136578 | .unused, |
| 136579 | }, |
| 136580 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136581 | .clobbers = .{ .eflags = true }, |
| 136582 | .each = .{ .once = &.{ |
| 136583 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 136584 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 136585 | .{ .@"0:", .vp_w, .maxs, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 136586 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 136587 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 136588 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 136589 | .{ ._, .vp_w, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 136590 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 136591 | .{ ._, .vp_w, .broadcast, .tmp1x, .lea(.tmp0w), ._, ._ }, |
| 136592 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp1x, ._ }, |
| 136593 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136594 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp1x, ._ }, |
| 136595 | } }, |
| 136596 | }, .{ |
| 136597 | .required_features = .{ .avx, null, null, null }, |
| 136598 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136599 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136600 | .patterns = &.{ |
| 136601 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136602 | }, |
| 136603 | .extra_temps = .{ |
| 136604 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 136605 | .{ .type = .vector_2_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136606 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136607 | .unused, |
| 136608 | .unused, |
| 136609 | .unused, |
| 136610 | .unused, |
| 136611 | .unused, |
| 136612 | .unused, |
| 136613 | .unused, |
| 136614 | .unused, |
| 136615 | }, |
| 136616 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136617 | .clobbers = .{ .eflags = true }, |
| 136618 | .each = .{ .once = &.{ |
| 136619 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 136620 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 136621 | .{ .@"0:", .vp_w, .maxs, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 136622 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 136623 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 136624 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136625 | .{ ._, .v_ss, .broadcast, .tmp2x, .lea(.tmp0d), ._, ._ }, |
| 136626 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136627 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136628 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 136629 | } }, |
| 136630 | }, .{ |
| 136631 | .required_features = .{ .sse4_1, null, null, null }, |
| 136632 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136633 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136634 | .patterns = &.{ |
| 136635 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136636 | }, |
| 136637 | .extra_temps = .{ |
| 136638 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 136639 | .{ .type = .vector_4_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136640 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136641 | .unused, |
| 136642 | .unused, |
| 136643 | .unused, |
| 136644 | .unused, |
| 136645 | .unused, |
| 136646 | .unused, |
| 136647 | .unused, |
| 136648 | .unused, |
| 136649 | }, |
| 136650 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136651 | .clobbers = .{ .eflags = true }, |
| 136652 | .each = .{ .once = &.{ |
| 136653 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 136654 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 136655 | .{ .@"0:", .p_w, .maxs, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 136656 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 136657 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 136658 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136659 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 136660 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 136661 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136662 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 136663 | } }, |
| 136664 | }, .{ |
| 136665 | .required_features = .{ .sse2, null, null, null }, |
| 136666 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136667 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136668 | .patterns = &.{ |
| 136669 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136670 | }, |
| 136671 | .extra_temps = .{ |
| 136672 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 136673 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136674 | .unused, |
| 136675 | .unused, |
| 136676 | .unused, |
| 136677 | .unused, |
| 136678 | .unused, |
| 136679 | .unused, |
| 136680 | .unused, |
| 136681 | .unused, |
| 136682 | .unused, |
| 136683 | }, |
| 136684 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136685 | .clobbers = .{ .eflags = true }, |
| 136686 | .each = .{ .once = &.{ |
| 136687 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 136688 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 136689 | .{ .@"0:", .p_w, .maxs, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 136690 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 136691 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 136692 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 136693 | .{ ._, .p_w, .maxs, .dst0x, .tmp1x, ._, ._ }, |
| 136694 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 136695 | .{ ._, .p_w, .maxs, .dst0x, .tmp1x, ._, ._ }, |
| 136696 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 136697 | .{ ._, .p_w, .maxs, .dst0x, .tmp1x, ._, ._ }, |
| 136698 | } }, |
| 136699 | }, .{ |
| 136700 | .required_features = .{ .avx2, null, null, null }, |
| 136701 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136702 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 136703 | .patterns = &.{ |
| 136704 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136705 | }, |
| 136706 | .extra_temps = .{ |
| 136707 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 136708 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 136709 | .unused, |
| 136710 | .unused, |
| 136711 | .unused, |
| 136712 | .unused, |
| 136713 | .unused, |
| 136714 | .unused, |
| 136715 | .unused, |
| 136716 | .unused, |
| 136717 | .unused, |
| 136718 | }, |
| 136719 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136720 | .clobbers = .{ .eflags = true }, |
| 136721 | .each = .{ .once = &.{ |
| 136722 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 136723 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 136724 | .{ .@"0:", .vp_w, .maxu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 136725 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 136726 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 136727 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 136728 | .{ ._, .vp_w, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 136729 | .{ ._, .vp_w, .cmpeq, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| 136730 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp1x, ._ }, |
| 136731 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136732 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp1x, ._ }, |
| 136733 | } }, |
| 136734 | }, .{ |
| 136735 | .required_features = .{ .avx, null, null, null }, |
| 136736 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136737 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136738 | .patterns = &.{ |
| 136739 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136740 | }, |
| 136741 | .extra_temps = .{ |
| 136742 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 136743 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 136744 | .unused, |
| 136745 | .unused, |
| 136746 | .unused, |
| 136747 | .unused, |
| 136748 | .unused, |
| 136749 | .unused, |
| 136750 | .unused, |
| 136751 | .unused, |
| 136752 | .unused, |
| 136753 | }, |
| 136754 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136755 | .clobbers = .{ .eflags = true }, |
| 136756 | .each = .{ .once = &.{ |
| 136757 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 136758 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 136759 | .{ ._, .vp_w, .cmpeq, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| 136760 | .{ .@"0:", .vp_w, .maxu, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 136761 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 136762 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 136763 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp1x, ._ }, |
| 136764 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136765 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp1x, ._ }, |
| 136766 | } }, |
| 136767 | }, .{ |
| 136768 | .required_features = .{ .sse4_1, null, null, null }, |
| 136769 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136770 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136771 | .patterns = &.{ |
| 136772 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136773 | }, |
| 136774 | .extra_temps = .{ |
| 136775 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 136776 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 136777 | .unused, |
| 136778 | .unused, |
| 136779 | .unused, |
| 136780 | .unused, |
| 136781 | .unused, |
| 136782 | .unused, |
| 136783 | .unused, |
| 136784 | .unused, |
| 136785 | .unused, |
| 136786 | }, |
| 136787 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136788 | .clobbers = .{ .eflags = true }, |
| 136789 | .each = .{ .once = &.{ |
| 136790 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 136791 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 136792 | .{ ._, .p_w, .cmpeq, .tmp1x, .tmp1x, ._, ._ }, |
| 136793 | .{ .@"0:", .p_w, .maxu, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 136794 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 136795 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 136796 | .{ ._, .p_, .xor, .dst0x, .tmp1x, ._, ._ }, |
| 136797 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136798 | .{ ._, .p_, .xor, .dst0x, .tmp1x, ._, ._ }, |
| 136799 | } }, |
| 136800 | }, .{ |
| 136801 | .required_features = .{ .sse2, null, null, null }, |
| 136802 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 136803 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136804 | .patterns = &.{ |
| 136805 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136806 | }, |
| 136807 | .extra_temps = .{ |
| 136808 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 136809 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 136810 | .unused, |
| 136811 | .unused, |
| 136812 | .unused, |
| 136813 | .unused, |
| 136814 | .unused, |
| 136815 | .unused, |
| 136816 | .unused, |
| 136817 | .unused, |
| 136818 | .unused, |
| 136819 | }, |
| 136820 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136821 | .clobbers = .{ .eflags = true }, |
| 136822 | .each = .{ .once = &.{ |
| 136823 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 136824 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 136825 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 136826 | .{ ._, .p_w, .subus, .tmp1x, .dst0x, ._, ._ }, |
| 136827 | .{ ._, .p_w, .add, .dst0x, .tmp1x, ._, ._ }, |
| 136828 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 136829 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 136830 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 136831 | .{ ._, .p_w, .subus, .dst0x, .tmp1x, ._, ._ }, |
| 136832 | .{ ._, .p_w, .add, .dst0x, .tmp1x, ._, ._ }, |
| 136833 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 136834 | .{ ._, .p_w, .subus, .dst0x, .tmp1x, ._, ._ }, |
| 136835 | .{ ._, .p_w, .add, .dst0x, .tmp1x, ._, ._ }, |
| 136836 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 136837 | .{ ._, .p_w, .subus, .dst0x, .tmp1x, ._, ._ }, |
| 136838 | .{ ._, .p_w, .add, .dst0x, .tmp1x, ._, ._ }, |
| 136839 | } }, |
| 136840 | }, .{ |
| 136841 | .required_features = .{ .avx512f, null, null, null }, |
| 136842 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136843 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 136844 | .patterns = &.{ |
| 136845 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136846 | }, |
| 136847 | .extra_temps = .{ |
| 136848 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 136849 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 136850 | .{ .type = .vector_32_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 136851 | .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } }, |
| 136852 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136853 | .unused, |
| 136854 | .unused, |
| 136855 | .unused, |
| 136856 | .unused, |
| 136857 | .unused, |
| 136858 | .unused, |
| 136859 | }, |
| 136860 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136861 | .clobbers = .{ .eflags = true }, |
| 136862 | .each = .{ .once = &.{ |
| 136863 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136864 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 136865 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 136866 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 136867 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 136868 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 136869 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 136870 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 136871 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 136872 | .{ .@"0:", .vp_w, .maxs, .tmp3y, .tmp3y, .memid(.src0y, .tmp0, 32), ._ }, |
| 136873 | .{ ._, .vp_w, .maxs, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 136874 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 136875 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 136876 | .{ ._, .vp_w, .maxs, .dst0y, .dst0y, .tmp3y, ._ }, |
| 136877 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 136878 | .{ ._, .vp_w, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 136879 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ }, |
| 136880 | .{ ._, .vp_w, .broadcast, .tmp3x, .lea(.tmp0w), ._, ._ }, |
| 136881 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp3x, ._ }, |
| 136882 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136883 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp3x, ._ }, |
| 136884 | } }, |
| 136885 | }, .{ |
| 136886 | .required_features = .{ .avx2, null, null, null }, |
| 136887 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136888 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 136889 | .patterns = &.{ |
| 136890 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136891 | }, |
| 136892 | .extra_temps = .{ |
| 136893 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 136894 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 136895 | .{ .type = .vector_16_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 136896 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136897 | .{ .type = .i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136898 | .unused, |
| 136899 | .unused, |
| 136900 | .unused, |
| 136901 | .unused, |
| 136902 | .unused, |
| 136903 | .unused, |
| 136904 | }, |
| 136905 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136906 | .clobbers = .{ .eflags = true }, |
| 136907 | .each = .{ .once = &.{ |
| 136908 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136909 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 136910 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 136911 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 136912 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 136913 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 136914 | .{ .@"0:", .vp_w, .maxs, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 136915 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 136916 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 136917 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 136918 | .{ ._, .vp_w, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 136919 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ }, |
| 136920 | .{ ._, .vp_w, .broadcast, .tmp3x, .lea(.tmp0w), ._, ._ }, |
| 136921 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp3x, ._ }, |
| 136922 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136923 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp3x, ._ }, |
| 136924 | } }, |
| 136925 | }, .{ |
| 136926 | .required_features = .{ .avx, null, null, null }, |
| 136927 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136928 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 136929 | .patterns = &.{ |
| 136930 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136931 | }, |
| 136932 | .extra_temps = .{ |
| 136933 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 136934 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 136935 | .{ .type = .vector_16_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 136936 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136937 | .{ .type = .vector_2_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136938 | .unused, |
| 136939 | .unused, |
| 136940 | .unused, |
| 136941 | .unused, |
| 136942 | .unused, |
| 136943 | .unused, |
| 136944 | }, |
| 136945 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136946 | .clobbers = .{ .eflags = true }, |
| 136947 | .each = .{ .once = &.{ |
| 136948 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136949 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 136950 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 136951 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 136952 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 136953 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 136954 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 136955 | .{ ._, .vp_w, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 136956 | .{ .@"0:", .vp_w, .maxs, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 136957 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 136958 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 136959 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ }, |
| 136960 | .{ ._, .v_ss, .broadcast, .tmp3x, .lea(.tmp0d), ._, ._ }, |
| 136961 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp3x, ._ }, |
| 136962 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 136963 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp3x, ._ }, |
| 136964 | } }, |
| 136965 | }, .{ |
| 136966 | .required_features = .{ .sse4_1, null, null, null }, |
| 136967 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 136968 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 136969 | .patterns = &.{ |
| 136970 | .{ .src = .{ .to_mem, .none, .none } }, |
| 136971 | }, |
| 136972 | .extra_temps = .{ |
| 136973 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 136974 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 136975 | .{ .type = .vector_8_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 136976 | .{ .type = .vector_4_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smax, .outside = .smax } } }, |
| 136977 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 136978 | .unused, |
| 136979 | .unused, |
| 136980 | .unused, |
| 136981 | .unused, |
| 136982 | .unused, |
| 136983 | .unused, |
| 136984 | }, |
| 136985 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 136986 | .clobbers = .{ .eflags = true }, |
| 136987 | .each = .{ .once = &.{ |
| 136988 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 136989 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 136990 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 136991 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 136992 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 136993 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 136994 | .{ .@"0:", .p_w, .maxs, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 136995 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 136996 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 136997 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 136998 | .{ ._, ._, .movddup, .tmp4x, .lea(.tmp0q), ._, ._ }, |
| 136999 | .{ ._, .p_, .xor, .dst0x, .tmp4x, ._, ._ }, |
| 137000 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 137001 | .{ ._, .p_, .xor, .dst0x, .tmp4x, ._, ._ }, |
| 137002 | } }, |
| 137003 | }, .{ |
| 137004 | .required_features = .{ .sse2, null, null, null }, |
| 137005 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 137006 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 137007 | .patterns = &.{ |
| 137008 | .{ .src = .{ .to_mem, .none, .none } }, |
| 137009 | }, |
| 137010 | .extra_temps = .{ |
| 137011 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 137012 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 137013 | .{ .type = .vector_8_i16, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 137014 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 137015 | .unused, |
| 137016 | .unused, |
| 137017 | .unused, |
| 137018 | .unused, |
| 137019 | .unused, |
| 137020 | .unused, |
| 137021 | .unused, |
| 137022 | }, |
| 137023 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 137024 | .clobbers = .{ .eflags = true }, |
| 137025 | .each = .{ .once = &.{ |
| 137026 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 137027 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 137028 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 137029 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 137030 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 137031 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 137032 | .{ .@"0:", .p_w, .maxs, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 137033 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 137034 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 137035 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 137036 | .{ ._, .p_w, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 137037 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 137038 | .{ ._, .p_w, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 137039 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b01), ._ }, |
| 137040 | .{ ._, .p_w, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 137041 | } }, |
| 137042 | }, .{ |
| 137043 | .required_features = .{ .avx512f, null, null, null }, |
| 137044 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 137045 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 137046 | .patterns = &.{ |
| 137047 | .{ .src = .{ .to_mem, .none, .none } }, |
| 137048 | }, |
| 137049 | .extra_temps = .{ |
| 137050 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 137051 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 137052 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 137053 | .unused, |
| 137054 | .unused, |
| 137055 | .unused, |
| 137056 | .unused, |
| 137057 | .unused, |
| 137058 | .unused, |
| 137059 | .unused, |
| 137060 | .unused, |
| 137061 | }, |
| 137062 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 137063 | .clobbers = .{ .eflags = true }, |
| 137064 | .each = .{ .once = &.{ |
| 137065 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 137066 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 137067 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 137068 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 137069 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 137070 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 137071 | .{ .@"0:", .vp_w, .maxu, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 137072 | .{ ._, .vp_w, .maxu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 137073 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 137074 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 137075 | .{ ._, .vp_w, .maxu, .dst0y, .dst0y, .tmp2y, ._ }, |
| 137076 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 137077 | .{ ._, .vp_w, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 137078 | .{ ._, .vp_w, .cmpeq, .tmp2x, .tmp2x, .tmp2x, ._ }, |
| 137079 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 137080 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 137081 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 137082 | } }, |
| 137083 | }, .{ |
| 137084 | .required_features = .{ .avx2, null, null, null }, |
| 137085 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 137086 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 137087 | .patterns = &.{ |
| 137088 | .{ .src = .{ .to_mem, .none, .none } }, |
| 137089 | }, |
| 137090 | .extra_temps = .{ |
| 137091 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 137092 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 137093 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 137094 | .unused, |
| 137095 | .unused, |
| 137096 | .unused, |
| 137097 | .unused, |
| 137098 | .unused, |
| 137099 | .unused, |
| 137100 | .unused, |
| 137101 | .unused, |
| 137102 | }, |
| 137103 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 137104 | .clobbers = .{ .eflags = true }, |
| 137105 | .each = .{ .once = &.{ |
| 137106 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 137107 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 137108 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 137109 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 137110 | .{ .@"0:", .vp_w, .maxu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 137111 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 137112 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 137113 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 137114 | .{ ._, .vp_w, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 137115 | .{ ._, .vp_w, .cmpeq, .tmp2x, .tmp2x, .tmp2x, ._ }, |
| 137116 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 137117 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 137118 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 137119 | } }, |
| 137120 | }, .{ |
| 137121 | .required_features = .{ .avx, null, null, null }, |
| 137122 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 137123 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 137124 | .patterns = &.{ |
| 137125 | .{ .src = .{ .to_mem, .none, .none } }, |
| 137126 | }, |
| 137127 | .extra_temps = .{ |
| 137128 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 137129 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 137130 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 137131 | .unused, |
| 137132 | .unused, |
| 137133 | .unused, |
| 137134 | .unused, |
| 137135 | .unused, |
| 137136 | .unused, |
| 137137 | .unused, |
| 137138 | .unused, |
| 137139 | }, |
| 137140 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 137141 | .clobbers = .{ .eflags = true }, |
| 137142 | .each = .{ .once = &.{ |
| 137143 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 137144 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 137145 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 137146 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 137147 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 137148 | .{ ._, .vp_w, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 137149 | .{ .@"0:", .vp_w, .maxu, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 137150 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 137151 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 137152 | .{ ._, .vp_w, .cmpeq, .tmp2x, .tmp2x, .tmp2x, ._ }, |
| 137153 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 137154 | .{ ._, .vph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 137155 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 137156 | } }, |
| 137157 | }, .{ |
| 137158 | .required_features = .{ .sse4_1, null, null, null }, |
| 137159 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 137160 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 137161 | .patterns = &.{ |
| 137162 | .{ .src = .{ .to_mem, .none, .none } }, |
| 137163 | }, |
| 137164 | .extra_temps = .{ |
| 137165 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 137166 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 137167 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 137168 | .unused, |
| 137169 | .unused, |
| 137170 | .unused, |
| 137171 | .unused, |
| 137172 | .unused, |
| 137173 | .unused, |
| 137174 | .unused, |
| 137175 | .unused, |
| 137176 | }, |
| 137177 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 137178 | .clobbers = .{ .eflags = true }, |
| 137179 | .each = .{ .once = &.{ |
| 137180 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 137181 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 137182 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 137183 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 137184 | .{ ._, .p_w, .cmpeq, .tmp2x, .tmp2x, ._, ._ }, |
| 137185 | .{ .@"0:", .p_w, .maxu, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 137186 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 137187 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 137188 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137189 | .{ ._, .ph_w, .minposu, .dst0x, .dst0x, ._, ._ }, |
| 137190 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137191 | } }, |
| 137192 | }, .{ |
| 137193 | .required_features = .{ .sse2, null, null, null }, |
| 137194 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 137195 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 137196 | .patterns = &.{ |
| 137197 | .{ .src = .{ .to_mem, .none, .none } }, |
| 137198 | }, |
| 137199 | .extra_temps = .{ |
| 137200 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 137201 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 137202 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 137203 | .unused, |
| 137204 | .unused, |
| 137205 | .unused, |
| 137206 | .unused, |
| 137207 | .unused, |
| 137208 | .unused, |
| 137209 | .unused, |
| 137210 | .unused, |
| 137211 | }, |
| 137212 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 137213 | .clobbers = .{ .eflags = true }, |
| 137214 | .each = .{ .once = &.{ |
| 137215 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 137216 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 137217 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 137218 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 137219 | .{ .@"0:", ._dqa, .mov, .tmp2x, .memi(.src0x, .tmp0), ._, ._ }, |
| 137220 | .{ ._, .p_w, .subus, .tmp2x, .dst0x, ._, ._ }, |
| 137221 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 137222 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 137223 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 137224 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 137225 | .{ ._, .p_w, .subus, .dst0x, .tmp2x, ._, ._ }, |
| 137226 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 137227 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 137228 | .{ ._, .p_w, .subus, .dst0x, .tmp2x, ._, ._ }, |
| 137229 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 137230 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 137231 | .{ ._, .p_w, .subus, .dst0x, .tmp2x, ._, ._ }, |
| 137232 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 137233 | } }, |
| 137234 | }, .{ |
| 137235 | .required_features = .{ .cmov, null, null, null }, |
| 137236 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 137237 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any }, |
| 137238 | .patterns = &.{ |
| 137239 | .{ .src = .{ .to_mem, .none, .none } }, |
| 137240 | }, |
| 137241 | .extra_temps = .{ |
| 137242 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 137243 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 137244 | .unused, |
| 137245 | .unused, |
| 137246 | .unused, |
| 137247 | .unused, |
| 137248 | .unused, |
| 137249 | .unused, |
| 137250 | .unused, |
| 137251 | .unused, |
| 137252 | .unused, |
| 137253 | }, |
| 137254 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 137255 | .clobbers = .{ .eflags = true }, |
| 137256 | .each = .{ .once = &.{ |
| 137257 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 137258 | .{ ._, ._, .movsx, .dst0d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 137259 | .{ .@"0:", ._, .movsx, .tmp1d, .memi(.src0w, .tmp0), ._, ._ }, |
| 137260 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 137261 | .{ ._, ._l, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 137262 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 137263 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 137264 | } }, |
| 137265 | }, .{ |
| 137266 | .dst_constraints = .{ .{ .signed_int = .word }, .any }, |
| 137267 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any }, |
| 137268 | .patterns = &.{ |
| 137269 | .{ .src = .{ .to_mem, .none, .none } }, |
| 137270 | }, |
| 137271 | .extra_temps = .{ |
| 137272 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 137273 | .{ .type = .i16, .kind = .{ .rc = .general_purpose } }, |
| 137274 | .unused, |
| 137275 | .unused, |
| 137276 | .unused, |
| 137277 | .unused, |
| 137278 | .unused, |
| 137279 | .unused, |
| 137280 | .unused, |
| 137281 | .unused, |
| 137282 | .unused, |
| 137283 | }, |
| 137284 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 137285 | .clobbers = .{ .eflags = true }, |
| 137286 | .each = .{ .once = &.{ |
| 137287 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 137288 | .{ ._, ._, .movsx, .dst0d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 137289 | .{ .@"0:", ._, .movsx, .tmp1d, .memi(.src0w, .tmp0), ._, ._ }, |
| 137290 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 137291 | .{ ._, ._nl, .j, .@"1f", ._, ._, ._ }, |
| 137292 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 137293 | .{ .@"1:", ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 137294 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 137295 | } }, |
| 137296 | }, .{ |
| 137297 | .required_features = .{ .cmov, null, null, null }, |
| 137298 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 137299 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any, .any }, |
| 137300 | .patterns = &.{ |
| 137301 | .{ .src = .{ .to_mem, .none, .none } }, |
| 137302 | }, |
| 137303 | .extra_temps = .{ |
| 137304 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 137305 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 137306 | .unused, |
| 137307 | .unused, |
| 137308 | .unused, |
| 137309 | .unused, |
| 137310 | .unused, |
| 137311 | .unused, |
| 137312 | .unused, |
| 137313 | .unused, |
| 137314 | .unused, |
| 137315 | }, |
| 137316 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 137317 | .clobbers = .{ .eflags = true }, |
| 137318 | .each = .{ .once = &.{ |
| 137319 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 137320 | .{ ._, ._, .movzx, .dst0d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 137321 | .{ .@"0:", ._, .movzx, .tmp1d, .memi(.src0w, .tmp0), ._, ._ }, |
| 137322 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 137323 | .{ ._, ._b, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 137324 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 137325 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 137326 | } }, |
| 137327 | }, .{ |
| 137328 | .dst_constraints = .{ .{ .unsigned_int = .word }, .any }, |
| 137329 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any, .any }, |
| 137330 | .patterns = &.{ |
| 137331 | .{ .src = .{ .to_mem, .none, .none } }, |
| 137332 | }, |
| 137333 | .extra_temps = .{ |
| 137334 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 137335 | .{ .type = .u16, .kind = .{ .rc = .general_purpose } }, |
| 137336 | .unused, |
| 137337 | .unused, |
| 137338 | .unused, |
| 137339 | .unused, |
| 137340 | .unused, |
| 137341 | .unused, |
| 137342 | .unused, |
| 137343 | .unused, |
| 137344 | .unused, |
| 137345 | }, |
| 137346 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 137347 | .clobbers = .{ .eflags = true }, |
| 137348 | .each = .{ .once = &.{ |
| 137349 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 137350 | .{ ._, ._, .movzx, .dst0d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 137351 | .{ .@"0:", ._, .movzx, .tmp1d, .memi(.src0w, .tmp0), ._, ._ }, |
| 137352 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 137353 | .{ ._, ._nb, .j, .@"1f", ._, ._, ._ }, |
| 137354 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 137355 | .{ .@"1:", ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 137356 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 137357 | } }, |
| 137358 | }, .{ |
| 137359 | .required_features = .{ .avx, null, null, null }, |
| 137360 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 137361 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 137362 | .patterns = &.{ |
| 137363 | .{ .src = .{ .to_sse, .none, .none } }, |
| 137364 | }, |
| 137365 | .extra_temps = .{ |
| 137366 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137367 | .unused, |
| 137368 | .unused, |
| 137369 | .unused, |
| 137370 | .unused, |
| 137371 | .unused, |
| 137372 | .unused, |
| 137373 | .unused, |
| 137374 | .unused, |
| 137375 | .unused, |
| 137376 | .unused, |
| 137377 | }, |
| 137378 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 137379 | .each = .{ .once = &.{ |
| 137380 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137381 | .{ ._, .vp_d, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 137382 | } }, |
| 137383 | }, .{ |
| 137384 | .required_features = .{ .sse4_1, null, null, null }, |
| 137385 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 137386 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 137387 | .patterns = &.{ |
| 137388 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137389 | }, |
| 137390 | .extra_temps = .{ |
| 137391 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137392 | .unused, |
| 137393 | .unused, |
| 137394 | .unused, |
| 137395 | .unused, |
| 137396 | .unused, |
| 137397 | .unused, |
| 137398 | .unused, |
| 137399 | .unused, |
| 137400 | .unused, |
| 137401 | .unused, |
| 137402 | }, |
| 137403 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137404 | .each = .{ .once = &.{ |
| 137405 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137406 | .{ ._, .p_d, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 137407 | } }, |
| 137408 | }, .{ |
| 137409 | .required_features = .{ .sse2, null, null, null }, |
| 137410 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 137411 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 137412 | .patterns = &.{ |
| 137413 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137414 | }, |
| 137415 | .extra_temps = .{ |
| 137416 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137417 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137418 | .unused, |
| 137419 | .unused, |
| 137420 | .unused, |
| 137421 | .unused, |
| 137422 | .unused, |
| 137423 | .unused, |
| 137424 | .unused, |
| 137425 | .unused, |
| 137426 | .unused, |
| 137427 | }, |
| 137428 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137429 | .each = .{ .once = &.{ |
| 137430 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137431 | .{ ._, ._dqa, .mov, .tmp1x, .src0x, ._, ._ }, |
| 137432 | .{ ._, .p_d, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 137433 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 137434 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 137435 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 137436 | } }, |
| 137437 | }, .{ |
| 137438 | .required_features = .{ .avx, null, null, null }, |
| 137439 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137440 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 137441 | .patterns = &.{ |
| 137442 | .{ .src = .{ .to_sse, .none, .none } }, |
| 137443 | }, |
| 137444 | .extra_temps = .{ |
| 137445 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 137446 | .unused, |
| 137447 | .unused, |
| 137448 | .unused, |
| 137449 | .unused, |
| 137450 | .unused, |
| 137451 | .unused, |
| 137452 | .unused, |
| 137453 | .unused, |
| 137454 | .unused, |
| 137455 | .unused, |
| 137456 | }, |
| 137457 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 137458 | .each = .{ .once = &.{ |
| 137459 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137460 | .{ ._, .vp_d, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 137461 | } }, |
| 137462 | }, .{ |
| 137463 | .required_features = .{ .sse4_1, null, null, null }, |
| 137464 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137465 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 137466 | .patterns = &.{ |
| 137467 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137468 | }, |
| 137469 | .extra_temps = .{ |
| 137470 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 137471 | .unused, |
| 137472 | .unused, |
| 137473 | .unused, |
| 137474 | .unused, |
| 137475 | .unused, |
| 137476 | .unused, |
| 137477 | .unused, |
| 137478 | .unused, |
| 137479 | .unused, |
| 137480 | .unused, |
| 137481 | }, |
| 137482 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137483 | .each = .{ .once = &.{ |
| 137484 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137485 | .{ ._, .p_d, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 137486 | } }, |
| 137487 | }, .{ |
| 137488 | .required_features = .{ .sse3, null, null, null }, |
| 137489 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137490 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 137491 | .patterns = &.{ |
| 137492 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137493 | }, |
| 137494 | .extra_temps = .{ |
| 137495 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 137496 | .{ .type = .vector_2_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 137497 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137498 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137499 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137500 | .unused, |
| 137501 | .unused, |
| 137502 | .unused, |
| 137503 | .unused, |
| 137504 | .unused, |
| 137505 | .unused, |
| 137506 | }, |
| 137507 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137508 | .each = .{ .once = &.{ |
| 137509 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 137510 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 137511 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137512 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 137513 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 137514 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 137515 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 137516 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 137517 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 137518 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137519 | } }, |
| 137520 | }, .{ |
| 137521 | .required_features = .{ .sse2, null, null, null }, |
| 137522 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137523 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 137524 | .patterns = &.{ |
| 137525 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137526 | }, |
| 137527 | .extra_temps = .{ |
| 137528 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 137529 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 137530 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137531 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137532 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137533 | .unused, |
| 137534 | .unused, |
| 137535 | .unused, |
| 137536 | .unused, |
| 137537 | .unused, |
| 137538 | .unused, |
| 137539 | }, |
| 137540 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137541 | .each = .{ .once = &.{ |
| 137542 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 137543 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 137544 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137545 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 137546 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 137547 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 137548 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 137549 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 137550 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 137551 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137552 | } }, |
| 137553 | }, .{ |
| 137554 | .required_features = .{ .avx, null, null, null }, |
| 137555 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 137556 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137557 | .patterns = &.{ |
| 137558 | .{ .src = .{ .to_sse, .none, .none } }, |
| 137559 | }, |
| 137560 | .extra_temps = .{ |
| 137561 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137562 | .unused, |
| 137563 | .unused, |
| 137564 | .unused, |
| 137565 | .unused, |
| 137566 | .unused, |
| 137567 | .unused, |
| 137568 | .unused, |
| 137569 | .unused, |
| 137570 | .unused, |
| 137571 | .unused, |
| 137572 | }, |
| 137573 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 137574 | .each = .{ .once = &.{ |
| 137575 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137576 | .{ ._, .vp_d, .maxs, .tmp0x, .src0x, .tmp0x, ._ }, |
| 137577 | .{ ._, .vp_d, .shuf, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 137578 | .{ ._, .vp_d, .maxs, .dst0x, .tmp0x, .dst0x, ._ }, |
| 137579 | } }, |
| 137580 | }, .{ |
| 137581 | .required_features = .{ .sse4_1, null, null, null }, |
| 137582 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137583 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137584 | .patterns = &.{ |
| 137585 | .{ .src = .{ .to_sse, .none, .none } }, |
| 137586 | }, |
| 137587 | .extra_temps = .{ |
| 137588 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137589 | .unused, |
| 137590 | .unused, |
| 137591 | .unused, |
| 137592 | .unused, |
| 137593 | .unused, |
| 137594 | .unused, |
| 137595 | .unused, |
| 137596 | .unused, |
| 137597 | .unused, |
| 137598 | .unused, |
| 137599 | }, |
| 137600 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 137601 | .each = .{ .once = &.{ |
| 137602 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137603 | .{ ._, .p_d, .maxs, .tmp0x, .src0x, ._, ._ }, |
| 137604 | .{ ._, .p_d, .shuf, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 137605 | .{ ._, .p_d, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 137606 | } }, |
| 137607 | }, .{ |
| 137608 | .required_features = .{ .sse2, null, null, null }, |
| 137609 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 137610 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137611 | .patterns = &.{ |
| 137612 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137613 | }, |
| 137614 | .extra_temps = .{ |
| 137615 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137616 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137617 | .unused, |
| 137618 | .unused, |
| 137619 | .unused, |
| 137620 | .unused, |
| 137621 | .unused, |
| 137622 | .unused, |
| 137623 | .unused, |
| 137624 | .unused, |
| 137625 | .unused, |
| 137626 | }, |
| 137627 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137628 | .each = .{ .once = &.{ |
| 137629 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137630 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 137631 | .{ ._, .p_d, .cmpgt, .tmp1x, .src0x, ._, ._ }, |
| 137632 | .{ ._, .p_, .@"and", .tmp0x, .tmp1x, ._, ._ }, |
| 137633 | .{ ._, .p_, .andn, .tmp1x, .src0x, ._, ._ }, |
| 137634 | .{ ._, .p_, .@"or", .tmp0x, .tmp1x, ._, ._ }, |
| 137635 | .{ ._, .p_w, .shufl, .dst0x, .dst0x, .ui(0b11_10), ._ }, |
| 137636 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 137637 | .{ ._, .p_d, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 137638 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 137639 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 137640 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 137641 | } }, |
| 137642 | }, .{ |
| 137643 | .required_features = .{ .avx, null, null, null }, |
| 137644 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137645 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137646 | .patterns = &.{ |
| 137647 | .{ .src = .{ .to_sse, .none, .none } }, |
| 137648 | }, |
| 137649 | .extra_temps = .{ |
| 137650 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 137651 | .unused, |
| 137652 | .unused, |
| 137653 | .unused, |
| 137654 | .unused, |
| 137655 | .unused, |
| 137656 | .unused, |
| 137657 | .unused, |
| 137658 | .unused, |
| 137659 | .unused, |
| 137660 | .unused, |
| 137661 | }, |
| 137662 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 137663 | .each = .{ .once = &.{ |
| 137664 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137665 | .{ ._, .vp_d, .maxu, .tmp0x, .src0x, .tmp0x, ._ }, |
| 137666 | .{ ._, .vp_d, .shuf, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 137667 | .{ ._, .vp_d, .maxu, .dst0x, .tmp0x, .dst0x, ._ }, |
| 137668 | } }, |
| 137669 | }, .{ |
| 137670 | .required_features = .{ .sse4_1, null, null, null }, |
| 137671 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137672 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137673 | .patterns = &.{ |
| 137674 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137675 | }, |
| 137676 | .extra_temps = .{ |
| 137677 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 137678 | .unused, |
| 137679 | .unused, |
| 137680 | .unused, |
| 137681 | .unused, |
| 137682 | .unused, |
| 137683 | .unused, |
| 137684 | .unused, |
| 137685 | .unused, |
| 137686 | .unused, |
| 137687 | .unused, |
| 137688 | }, |
| 137689 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137690 | .each = .{ .once = &.{ |
| 137691 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137692 | .{ ._, .p_d, .maxu, .tmp0x, .src0x, ._, ._ }, |
| 137693 | .{ ._, .p_d, .shuf, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 137694 | .{ ._, .p_d, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 137695 | } }, |
| 137696 | }, .{ |
| 137697 | .required_features = .{ .sse3, null, null, null }, |
| 137698 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137699 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137700 | .patterns = &.{ |
| 137701 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137702 | }, |
| 137703 | .extra_temps = .{ |
| 137704 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 137705 | .{ .type = .vector_2_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 137706 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137707 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137708 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137709 | .unused, |
| 137710 | .unused, |
| 137711 | .unused, |
| 137712 | .unused, |
| 137713 | .unused, |
| 137714 | .unused, |
| 137715 | }, |
| 137716 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137717 | .each = .{ .once = &.{ |
| 137718 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 137719 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 137720 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137721 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 137722 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 137723 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 137724 | .{ ._, .p_, .@"and", .tmp3x, .tmp4x, ._, ._ }, |
| 137725 | .{ ._, .p_, .andn, .tmp4x, .dst0x, ._, ._ }, |
| 137726 | .{ ._, .p_, .@"or", .tmp3x, .tmp4x, ._, ._ }, |
| 137727 | .{ ._, .p_w, .shufl, .dst0x, .dst0x, .ui(0b11_10), ._ }, |
| 137728 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 137729 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 137730 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 137731 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 137732 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 137733 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137734 | } }, |
| 137735 | }, .{ |
| 137736 | .required_features = .{ .sse2, null, null, null }, |
| 137737 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137738 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137739 | .patterns = &.{ |
| 137740 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137741 | }, |
| 137742 | .extra_temps = .{ |
| 137743 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 137744 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 137745 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137746 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137747 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137748 | .unused, |
| 137749 | .unused, |
| 137750 | .unused, |
| 137751 | .unused, |
| 137752 | .unused, |
| 137753 | .unused, |
| 137754 | }, |
| 137755 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137756 | .each = .{ .once = &.{ |
| 137757 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 137758 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 137759 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137760 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 137761 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 137762 | .{ ._, .p_d, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 137763 | .{ ._, .p_, .@"and", .tmp3x, .tmp4x, ._, ._ }, |
| 137764 | .{ ._, .p_, .andn, .tmp4x, .dst0x, ._, ._ }, |
| 137765 | .{ ._, .p_, .@"or", .tmp3x, .tmp4x, ._, ._ }, |
| 137766 | .{ ._, .p_w, .shufl, .dst0x, .dst0x, .ui(0b11_10), ._ }, |
| 137767 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 137768 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 137769 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 137770 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 137771 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 137772 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137773 | } }, |
| 137774 | }, .{ |
| 137775 | .required_features = .{ .avx, null, null, null }, |
| 137776 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 137777 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137778 | .patterns = &.{ |
| 137779 | .{ .src = .{ .to_sse, .none, .none } }, |
| 137780 | }, |
| 137781 | .extra_temps = .{ |
| 137782 | .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } }, |
| 137783 | .unused, |
| 137784 | .unused, |
| 137785 | .unused, |
| 137786 | .unused, |
| 137787 | .unused, |
| 137788 | .unused, |
| 137789 | .unused, |
| 137790 | .unused, |
| 137791 | .unused, |
| 137792 | .unused, |
| 137793 | }, |
| 137794 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 137795 | .each = .{ .once = &.{ |
| 137796 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137797 | .{ ._, .vp_d, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 137798 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 137799 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 137800 | } }, |
| 137801 | }, .{ |
| 137802 | .required_features = .{ .sse4_1, null, null, null }, |
| 137803 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 137804 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137805 | .patterns = &.{ |
| 137806 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137807 | }, |
| 137808 | .extra_temps = .{ |
| 137809 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137810 | .unused, |
| 137811 | .unused, |
| 137812 | .unused, |
| 137813 | .unused, |
| 137814 | .unused, |
| 137815 | .unused, |
| 137816 | .unused, |
| 137817 | .unused, |
| 137818 | .unused, |
| 137819 | .unused, |
| 137820 | }, |
| 137821 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137822 | .each = .{ .once = &.{ |
| 137823 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137824 | .{ ._, .p_d, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 137825 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 137826 | .{ ._, .p_d, .maxs, .dst0x, .tmp0x, ._, ._ }, |
| 137827 | } }, |
| 137828 | }, .{ |
| 137829 | .required_features = .{ .sse2, null, null, null }, |
| 137830 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 137831 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137832 | .patterns = &.{ |
| 137833 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137834 | }, |
| 137835 | .extra_temps = .{ |
| 137836 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137837 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137838 | .unused, |
| 137839 | .unused, |
| 137840 | .unused, |
| 137841 | .unused, |
| 137842 | .unused, |
| 137843 | .unused, |
| 137844 | .unused, |
| 137845 | .unused, |
| 137846 | .unused, |
| 137847 | }, |
| 137848 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137849 | .each = .{ .once = &.{ |
| 137850 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137851 | .{ ._, ._dqa, .mov, .tmp1x, .src0x, ._, ._ }, |
| 137852 | .{ ._, .p_d, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 137853 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 137854 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 137855 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 137856 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 137857 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 137858 | .{ ._, .p_d, .cmpgt, .tmp1x, .tmp0x, ._, ._ }, |
| 137859 | .{ ._, .p_, .@"and", .dst0x, .tmp1x, ._, ._ }, |
| 137860 | .{ ._, .p_, .andn, .tmp1x, .tmp0x, ._, ._ }, |
| 137861 | .{ ._, .p_, .@"or", .dst0x, .tmp1x, ._, ._ }, |
| 137862 | } }, |
| 137863 | }, .{ |
| 137864 | .required_features = .{ .avx, null, null, null }, |
| 137865 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137866 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137867 | .patterns = &.{ |
| 137868 | .{ .src = .{ .to_sse, .none, .none } }, |
| 137869 | }, |
| 137870 | .extra_temps = .{ |
| 137871 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 137872 | .unused, |
| 137873 | .unused, |
| 137874 | .unused, |
| 137875 | .unused, |
| 137876 | .unused, |
| 137877 | .unused, |
| 137878 | .unused, |
| 137879 | .unused, |
| 137880 | .unused, |
| 137881 | .unused, |
| 137882 | }, |
| 137883 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 137884 | .each = .{ .once = &.{ |
| 137885 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137886 | .{ ._, .vp_d, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 137887 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 137888 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 137889 | } }, |
| 137890 | }, .{ |
| 137891 | .required_features = .{ .sse4_1, null, null, null }, |
| 137892 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137893 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137894 | .patterns = &.{ |
| 137895 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137896 | }, |
| 137897 | .extra_temps = .{ |
| 137898 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 137899 | .unused, |
| 137900 | .unused, |
| 137901 | .unused, |
| 137902 | .unused, |
| 137903 | .unused, |
| 137904 | .unused, |
| 137905 | .unused, |
| 137906 | .unused, |
| 137907 | .unused, |
| 137908 | .unused, |
| 137909 | }, |
| 137910 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137911 | .each = .{ .once = &.{ |
| 137912 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 137913 | .{ ._, .p_d, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 137914 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 137915 | .{ ._, .p_d, .maxu, .dst0x, .tmp0x, ._, ._ }, |
| 137916 | } }, |
| 137917 | }, .{ |
| 137918 | .required_features = .{ .sse3, null, null, null }, |
| 137919 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137920 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137921 | .patterns = &.{ |
| 137922 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137923 | }, |
| 137924 | .extra_temps = .{ |
| 137925 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 137926 | .{ .type = .vector_2_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 137927 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137928 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137929 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137930 | .unused, |
| 137931 | .unused, |
| 137932 | .unused, |
| 137933 | .unused, |
| 137934 | .unused, |
| 137935 | .unused, |
| 137936 | }, |
| 137937 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137938 | .each = .{ .once = &.{ |
| 137939 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 137940 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 137941 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137942 | .{ ._, .p_d, .shuf, .tmp3x, .src0x, .ui(0b11_10), ._ }, |
| 137943 | .{ ._, ._dqa, .mov, .tmp4x, .src0x, ._, ._ }, |
| 137944 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 137945 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 137946 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 137947 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 137948 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 137949 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 137950 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 137951 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 137952 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 137953 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 137954 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137955 | } }, |
| 137956 | }, .{ |
| 137957 | .required_features = .{ .sse2, null, null, null }, |
| 137958 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 137959 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 137960 | .patterns = &.{ |
| 137961 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 137962 | }, |
| 137963 | .extra_temps = .{ |
| 137964 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 137965 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 137966 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137967 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137968 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 137969 | .unused, |
| 137970 | .unused, |
| 137971 | .unused, |
| 137972 | .unused, |
| 137973 | .unused, |
| 137974 | .unused, |
| 137975 | }, |
| 137976 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 137977 | .each = .{ .once = &.{ |
| 137978 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 137979 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 137980 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137981 | .{ ._, .p_d, .shuf, .tmp3x, .src0x, .ui(0b11_10), ._ }, |
| 137982 | .{ ._, ._dqa, .mov, .tmp4x, .src0x, ._, ._ }, |
| 137983 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 137984 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 137985 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 137986 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 137987 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 137988 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 137989 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 137990 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 137991 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 137992 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 137993 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 137994 | } }, |
| 137995 | }, .{ |
| 137996 | .required_features = .{ .avx2, null, null, null }, |
| 137997 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 137998 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 137999 | .patterns = &.{ |
| 138000 | .{ .src = .{ .to_sse, .none, .none } }, |
| 138001 | }, |
| 138002 | .extra_temps = .{ |
| 138003 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 138004 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138005 | .{ .type = .vector_8_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 138006 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138007 | .unused, |
| 138008 | .unused, |
| 138009 | .unused, |
| 138010 | .unused, |
| 138011 | .unused, |
| 138012 | .unused, |
| 138013 | .unused, |
| 138014 | }, |
| 138015 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 138016 | .each = .{ .once = &.{ |
| 138017 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138018 | .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 138019 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 138020 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 138021 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 138022 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138023 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138024 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138025 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138026 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138027 | } }, |
| 138028 | }, .{ |
| 138029 | .required_features = .{ .avx, null, null, null }, |
| 138030 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138031 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 138032 | .patterns = &.{ |
| 138033 | .{ .src = .{ .to_sse, .none, .none } }, |
| 138034 | }, |
| 138035 | .extra_temps = .{ |
| 138036 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 138037 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138038 | .{ .type = .vector_8_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 138039 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138040 | .unused, |
| 138041 | .unused, |
| 138042 | .unused, |
| 138043 | .unused, |
| 138044 | .unused, |
| 138045 | .unused, |
| 138046 | .unused, |
| 138047 | }, |
| 138048 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 138049 | .each = .{ .once = &.{ |
| 138050 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138051 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 138052 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 138053 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 138054 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 138055 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138056 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138057 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138058 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138059 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138060 | } }, |
| 138061 | }, .{ |
| 138062 | .required_features = .{ .avx2, null, null, null }, |
| 138063 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138064 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 138065 | .patterns = &.{ |
| 138066 | .{ .src = .{ .to_sse, .none, .none } }, |
| 138067 | }, |
| 138068 | .extra_temps = .{ |
| 138069 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 138070 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138071 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 138072 | .unused, |
| 138073 | .unused, |
| 138074 | .unused, |
| 138075 | .unused, |
| 138076 | .unused, |
| 138077 | .unused, |
| 138078 | .unused, |
| 138079 | .unused, |
| 138080 | }, |
| 138081 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 138082 | .each = .{ .once = &.{ |
| 138083 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138084 | .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 138085 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 138086 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 138087 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 138088 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 138089 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 138090 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 138091 | } }, |
| 138092 | }, .{ |
| 138093 | .required_features = .{ .avx, null, null, null }, |
| 138094 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138095 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 138096 | .patterns = &.{ |
| 138097 | .{ .src = .{ .to_sse, .none, .none } }, |
| 138098 | }, |
| 138099 | .extra_temps = .{ |
| 138100 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 138101 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138102 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 138103 | .unused, |
| 138104 | .unused, |
| 138105 | .unused, |
| 138106 | .unused, |
| 138107 | .unused, |
| 138108 | .unused, |
| 138109 | .unused, |
| 138110 | .unused, |
| 138111 | }, |
| 138112 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 138113 | .each = .{ .once = &.{ |
| 138114 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138115 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 138116 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 138117 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 138118 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 138119 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 138120 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 138121 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 138122 | } }, |
| 138123 | }, .{ |
| 138124 | .required_features = .{ .avx2, null, null, null }, |
| 138125 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138126 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 138127 | .patterns = &.{ |
| 138128 | .{ .src = .{ .to_sse, .none, .none } }, |
| 138129 | }, |
| 138130 | .extra_temps = .{ |
| 138131 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138132 | .unused, |
| 138133 | .unused, |
| 138134 | .unused, |
| 138135 | .unused, |
| 138136 | .unused, |
| 138137 | .unused, |
| 138138 | .unused, |
| 138139 | .unused, |
| 138140 | .unused, |
| 138141 | .unused, |
| 138142 | }, |
| 138143 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 138144 | .each = .{ .once = &.{ |
| 138145 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 138146 | .{ ._, .vp_d, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 138147 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 138148 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138149 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 138150 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138151 | } }, |
| 138152 | }, .{ |
| 138153 | .required_features = .{ .avx, null, null, null }, |
| 138154 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138155 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 138156 | .patterns = &.{ |
| 138157 | .{ .src = .{ .to_sse, .none, .none } }, |
| 138158 | }, |
| 138159 | .extra_temps = .{ |
| 138160 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138161 | .unused, |
| 138162 | .unused, |
| 138163 | .unused, |
| 138164 | .unused, |
| 138165 | .unused, |
| 138166 | .unused, |
| 138167 | .unused, |
| 138168 | .unused, |
| 138169 | .unused, |
| 138170 | .unused, |
| 138171 | }, |
| 138172 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 138173 | .each = .{ .once = &.{ |
| 138174 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 138175 | .{ ._, .vp_d, .maxs, .dst0x, .src0x, .tmp0x, ._ }, |
| 138176 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 138177 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138178 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 138179 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138180 | } }, |
| 138181 | }, .{ |
| 138182 | .required_features = .{ .avx2, null, null, null }, |
| 138183 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138184 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 138185 | .patterns = &.{ |
| 138186 | .{ .src = .{ .to_sse, .none, .none } }, |
| 138187 | }, |
| 138188 | .extra_temps = .{ |
| 138189 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 138190 | .unused, |
| 138191 | .unused, |
| 138192 | .unused, |
| 138193 | .unused, |
| 138194 | .unused, |
| 138195 | .unused, |
| 138196 | .unused, |
| 138197 | .unused, |
| 138198 | .unused, |
| 138199 | .unused, |
| 138200 | }, |
| 138201 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 138202 | .each = .{ .once = &.{ |
| 138203 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 138204 | .{ ._, .vp_d, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 138205 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 138206 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138207 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 138208 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138209 | } }, |
| 138210 | }, .{ |
| 138211 | .required_features = .{ .avx, null, null, null }, |
| 138212 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138213 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 138214 | .patterns = &.{ |
| 138215 | .{ .src = .{ .to_sse, .none, .none } }, |
| 138216 | }, |
| 138217 | .extra_temps = .{ |
| 138218 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 138219 | .unused, |
| 138220 | .unused, |
| 138221 | .unused, |
| 138222 | .unused, |
| 138223 | .unused, |
| 138224 | .unused, |
| 138225 | .unused, |
| 138226 | .unused, |
| 138227 | .unused, |
| 138228 | .unused, |
| 138229 | }, |
| 138230 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 138231 | .each = .{ .once = &.{ |
| 138232 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 138233 | .{ ._, .vp_d, .maxu, .dst0x, .src0x, .tmp0x, ._ }, |
| 138234 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 138235 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138236 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 138237 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138238 | } }, |
| 138239 | }, .{ |
| 138240 | .required_features = .{ .avx512f, null, null, null }, |
| 138241 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138242 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 138243 | .patterns = &.{ |
| 138244 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138245 | }, |
| 138246 | .extra_temps = .{ |
| 138247 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 138248 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138249 | .{ .type = .vector_16_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 138250 | .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } }, |
| 138251 | .unused, |
| 138252 | .unused, |
| 138253 | .unused, |
| 138254 | .unused, |
| 138255 | .unused, |
| 138256 | .unused, |
| 138257 | .unused, |
| 138258 | }, |
| 138259 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138260 | .each = .{ .once = &.{ |
| 138261 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138262 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 138263 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 138264 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 138265 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 138266 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 138267 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 138268 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 138269 | .{ ._, .vp_d, .maxs, .dst0y, .dst0y, .tmp3y, ._ }, |
| 138270 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 138271 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138272 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138273 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138274 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138275 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138276 | } }, |
| 138277 | }, .{ |
| 138278 | .required_features = .{ .avx512f, null, null, null }, |
| 138279 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138280 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 138281 | .patterns = &.{ |
| 138282 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138283 | }, |
| 138284 | .extra_temps = .{ |
| 138285 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 138286 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138287 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 138288 | .unused, |
| 138289 | .unused, |
| 138290 | .unused, |
| 138291 | .unused, |
| 138292 | .unused, |
| 138293 | .unused, |
| 138294 | .unused, |
| 138295 | .unused, |
| 138296 | }, |
| 138297 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138298 | .each = .{ .once = &.{ |
| 138299 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138300 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 138301 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 138302 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 138303 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 138304 | .{ ._, .vp_d, .maxu, .dst0y, .dst0y, .tmp2y, ._ }, |
| 138305 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 138306 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 138307 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 138308 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 138309 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 138310 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 138311 | } }, |
| 138312 | }, .{ |
| 138313 | .required_features = .{ .avx512f, null, null, null }, |
| 138314 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138315 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 138316 | .patterns = &.{ |
| 138317 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138318 | }, |
| 138319 | .extra_temps = .{ |
| 138320 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138321 | .unused, |
| 138322 | .unused, |
| 138323 | .unused, |
| 138324 | .unused, |
| 138325 | .unused, |
| 138326 | .unused, |
| 138327 | .unused, |
| 138328 | .unused, |
| 138329 | .unused, |
| 138330 | .unused, |
| 138331 | }, |
| 138332 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138333 | .each = .{ .once = &.{ |
| 138334 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 138335 | .{ ._, .vp_d, .maxs, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 138336 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 138337 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138338 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 138339 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138340 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 138341 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138342 | } }, |
| 138343 | }, .{ |
| 138344 | .required_features = .{ .avx512f, null, null, null }, |
| 138345 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138346 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 138347 | .patterns = &.{ |
| 138348 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138349 | }, |
| 138350 | .extra_temps = .{ |
| 138351 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 138352 | .unused, |
| 138353 | .unused, |
| 138354 | .unused, |
| 138355 | .unused, |
| 138356 | .unused, |
| 138357 | .unused, |
| 138358 | .unused, |
| 138359 | .unused, |
| 138360 | .unused, |
| 138361 | .unused, |
| 138362 | }, |
| 138363 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138364 | .each = .{ .once = &.{ |
| 138365 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 138366 | .{ ._, .vp_d, .maxu, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 138367 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 138368 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138369 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 138370 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138371 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 138372 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp0x, ._ }, |
| 138373 | } }, |
| 138374 | }, .{ |
| 138375 | .required_features = .{ .avx2, null, null, null }, |
| 138376 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138377 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 138378 | .patterns = &.{ |
| 138379 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138380 | }, |
| 138381 | .extra_temps = .{ |
| 138382 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138383 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138384 | .unused, |
| 138385 | .unused, |
| 138386 | .unused, |
| 138387 | .unused, |
| 138388 | .unused, |
| 138389 | .unused, |
| 138390 | .unused, |
| 138391 | .unused, |
| 138392 | .unused, |
| 138393 | }, |
| 138394 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138395 | .clobbers = .{ .eflags = true }, |
| 138396 | .each = .{ .once = &.{ |
| 138397 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 138398 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 138399 | .{ .@"0:", .vp_d, .maxs, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 138400 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 138401 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138402 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 138403 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 138404 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138405 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 138406 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138407 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 138408 | } }, |
| 138409 | }, .{ |
| 138410 | .required_features = .{ .avx, null, null, null }, |
| 138411 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138412 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 138413 | .patterns = &.{ |
| 138414 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138415 | }, |
| 138416 | .extra_temps = .{ |
| 138417 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138418 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138419 | .unused, |
| 138420 | .unused, |
| 138421 | .unused, |
| 138422 | .unused, |
| 138423 | .unused, |
| 138424 | .unused, |
| 138425 | .unused, |
| 138426 | .unused, |
| 138427 | .unused, |
| 138428 | }, |
| 138429 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138430 | .clobbers = .{ .eflags = true }, |
| 138431 | .each = .{ .once = &.{ |
| 138432 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 138433 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 138434 | .{ .@"0:", .vp_d, .maxs, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 138435 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 138436 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138437 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138438 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 138439 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138440 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp1x, ._ }, |
| 138441 | } }, |
| 138442 | }, .{ |
| 138443 | .required_features = .{ .sse4_1, null, null, null }, |
| 138444 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138445 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 138446 | .patterns = &.{ |
| 138447 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138448 | }, |
| 138449 | .extra_temps = .{ |
| 138450 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138451 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138452 | .unused, |
| 138453 | .unused, |
| 138454 | .unused, |
| 138455 | .unused, |
| 138456 | .unused, |
| 138457 | .unused, |
| 138458 | .unused, |
| 138459 | .unused, |
| 138460 | .unused, |
| 138461 | }, |
| 138462 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138463 | .clobbers = .{ .eflags = true }, |
| 138464 | .each = .{ .once = &.{ |
| 138465 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 138466 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 138467 | .{ .@"0:", .p_d, .maxs, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 138468 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 138469 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138470 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138471 | .{ ._, .p_d, .maxs, .dst0x, .tmp1x, ._, ._ }, |
| 138472 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138473 | .{ ._, .p_d, .maxs, .dst0x, .tmp1x, ._, ._ }, |
| 138474 | } }, |
| 138475 | }, .{ |
| 138476 | .required_features = .{ .sse2, null, null, null }, |
| 138477 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138478 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 138479 | .patterns = &.{ |
| 138480 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138481 | }, |
| 138482 | .extra_temps = .{ |
| 138483 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138484 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138485 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138486 | .unused, |
| 138487 | .unused, |
| 138488 | .unused, |
| 138489 | .unused, |
| 138490 | .unused, |
| 138491 | .unused, |
| 138492 | .unused, |
| 138493 | .unused, |
| 138494 | }, |
| 138495 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138496 | .clobbers = .{ .eflags = true }, |
| 138497 | .each = .{ .once = &.{ |
| 138498 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 138499 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 138500 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 138501 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 138502 | .{ ._, .p_d, .cmpgt, .tmp2x, .tmp1x, ._, ._ }, |
| 138503 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 138504 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 138505 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 138506 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 138507 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138508 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138509 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 138510 | .{ ._, .p_d, .cmpgt, .tmp2x, .tmp1x, ._, ._ }, |
| 138511 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 138512 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 138513 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 138514 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138515 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 138516 | .{ ._, .p_d, .cmpgt, .tmp2x, .tmp1x, ._, ._ }, |
| 138517 | .{ ._, .p_, .@"and", .dst0x, .tmp2x, ._, ._ }, |
| 138518 | .{ ._, .p_, .andn, .tmp2x, .tmp1x, ._, ._ }, |
| 138519 | .{ ._, .p_, .@"or", .dst0x, .tmp2x, ._, ._ }, |
| 138520 | } }, |
| 138521 | }, .{ |
| 138522 | .required_features = .{ .avx2, null, null, null }, |
| 138523 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138524 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 138525 | .patterns = &.{ |
| 138526 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138527 | }, |
| 138528 | .extra_temps = .{ |
| 138529 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138530 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 138531 | .unused, |
| 138532 | .unused, |
| 138533 | .unused, |
| 138534 | .unused, |
| 138535 | .unused, |
| 138536 | .unused, |
| 138537 | .unused, |
| 138538 | .unused, |
| 138539 | .unused, |
| 138540 | }, |
| 138541 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138542 | .clobbers = .{ .eflags = true }, |
| 138543 | .each = .{ .once = &.{ |
| 138544 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 138545 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 138546 | .{ .@"0:", .vp_d, .maxu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 138547 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 138548 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138549 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 138550 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 138551 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138552 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 138553 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138554 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 138555 | } }, |
| 138556 | }, .{ |
| 138557 | .required_features = .{ .avx, null, null, null }, |
| 138558 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138559 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 138560 | .patterns = &.{ |
| 138561 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138562 | }, |
| 138563 | .extra_temps = .{ |
| 138564 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138565 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 138566 | .unused, |
| 138567 | .unused, |
| 138568 | .unused, |
| 138569 | .unused, |
| 138570 | .unused, |
| 138571 | .unused, |
| 138572 | .unused, |
| 138573 | .unused, |
| 138574 | .unused, |
| 138575 | }, |
| 138576 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138577 | .clobbers = .{ .eflags = true }, |
| 138578 | .each = .{ .once = &.{ |
| 138579 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 138580 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 138581 | .{ .@"0:", .vp_d, .maxu, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 138582 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 138583 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138584 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138585 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 138586 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138587 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp1x, ._ }, |
| 138588 | } }, |
| 138589 | }, .{ |
| 138590 | .required_features = .{ .sse4_1, null, null, null }, |
| 138591 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138592 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 138593 | .patterns = &.{ |
| 138594 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138595 | }, |
| 138596 | .extra_temps = .{ |
| 138597 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138598 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 138599 | .unused, |
| 138600 | .unused, |
| 138601 | .unused, |
| 138602 | .unused, |
| 138603 | .unused, |
| 138604 | .unused, |
| 138605 | .unused, |
| 138606 | .unused, |
| 138607 | .unused, |
| 138608 | }, |
| 138609 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138610 | .clobbers = .{ .eflags = true }, |
| 138611 | .each = .{ .once = &.{ |
| 138612 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 138613 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 138614 | .{ .@"0:", .p_d, .maxu, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 138615 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 138616 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138617 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138618 | .{ ._, .p_d, .maxu, .dst0x, .tmp1x, ._, ._ }, |
| 138619 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 138620 | .{ ._, .p_d, .maxu, .dst0x, .tmp1x, ._, ._ }, |
| 138621 | } }, |
| 138622 | }, .{ |
| 138623 | .required_features = .{ .sse3, null, null, null }, |
| 138624 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138625 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 138626 | .patterns = &.{ |
| 138627 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138628 | }, |
| 138629 | .extra_temps = .{ |
| 138630 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138631 | .{ .type = .vector_2_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 138632 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138633 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138634 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138635 | .unused, |
| 138636 | .unused, |
| 138637 | .unused, |
| 138638 | .unused, |
| 138639 | .unused, |
| 138640 | .unused, |
| 138641 | }, |
| 138642 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138643 | .clobbers = .{ .eflags = true }, |
| 138644 | .each = .{ .once = &.{ |
| 138645 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138646 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 138647 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 138648 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 138649 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 138650 | .{ .@"0:", ._dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 138651 | .{ ._, .p_, .xor, .tmp3x, .tmp2x, ._, ._ }, |
| 138652 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 138653 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 138654 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 138655 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 138656 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 138657 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 138658 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138659 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138660 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 138661 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 138662 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 138663 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 138664 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 138665 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138666 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 138667 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 138668 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 138669 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 138670 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 138671 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 138672 | } }, |
| 138673 | }, .{ |
| 138674 | .required_features = .{ .sse2, null, null, null }, |
| 138675 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138676 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 138677 | .patterns = &.{ |
| 138678 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138679 | }, |
| 138680 | .extra_temps = .{ |
| 138681 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138682 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 138683 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138684 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138685 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138686 | .unused, |
| 138687 | .unused, |
| 138688 | .unused, |
| 138689 | .unused, |
| 138690 | .unused, |
| 138691 | .unused, |
| 138692 | }, |
| 138693 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138694 | .clobbers = .{ .eflags = true }, |
| 138695 | .each = .{ .once = &.{ |
| 138696 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138697 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 138698 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 138699 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 138700 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 138701 | .{ .@"0:", ._dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 138702 | .{ ._, .p_, .xor, .tmp3x, .tmp2x, ._, ._ }, |
| 138703 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 138704 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 138705 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 138706 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 138707 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 138708 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 138709 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138710 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138711 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 138712 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 138713 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 138714 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 138715 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 138716 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138717 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 138718 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 138719 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 138720 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 138721 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 138722 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 138723 | } }, |
| 138724 | }, .{ |
| 138725 | .required_features = .{ .avx512f, null, null, null }, |
| 138726 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138727 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 138728 | .patterns = &.{ |
| 138729 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138730 | }, |
| 138731 | .extra_temps = .{ |
| 138732 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138733 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138734 | .{ .type = .vector_16_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 138735 | .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } }, |
| 138736 | .unused, |
| 138737 | .unused, |
| 138738 | .unused, |
| 138739 | .unused, |
| 138740 | .unused, |
| 138741 | .unused, |
| 138742 | .unused, |
| 138743 | }, |
| 138744 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138745 | .clobbers = .{ .eflags = true }, |
| 138746 | .each = .{ .once = &.{ |
| 138747 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138748 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 138749 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 138750 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 138751 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 138752 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 138753 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 138754 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 138755 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 138756 | .{ .@"0:", .vp_d, .maxs, .tmp3y, .tmp3y, .memid(.src0y, .tmp0, 32), ._ }, |
| 138757 | .{ ._, .vp_d, .maxs, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 138758 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 138759 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138760 | .{ ._, .vp_d, .maxs, .dst0y, .dst0y, .tmp3y, ._ }, |
| 138761 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 138762 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138763 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138764 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138765 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138766 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138767 | } }, |
| 138768 | }, .{ |
| 138769 | .required_features = .{ .avx2, null, null, null }, |
| 138770 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138771 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 138772 | .patterns = &.{ |
| 138773 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138774 | }, |
| 138775 | .extra_temps = .{ |
| 138776 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138777 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138778 | .{ .type = .vector_16_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 138779 | .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } }, |
| 138780 | .unused, |
| 138781 | .unused, |
| 138782 | .unused, |
| 138783 | .unused, |
| 138784 | .unused, |
| 138785 | .unused, |
| 138786 | .unused, |
| 138787 | }, |
| 138788 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138789 | .clobbers = .{ .eflags = true }, |
| 138790 | .each = .{ .once = &.{ |
| 138791 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138792 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 138793 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 138794 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 138795 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 138796 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 138797 | .{ .@"0:", .vp_d, .maxs, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 138798 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 138799 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138800 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 138801 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138802 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138803 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138804 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138805 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138806 | } }, |
| 138807 | }, .{ |
| 138808 | .required_features = .{ .avx, null, null, null }, |
| 138809 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138810 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 138811 | .patterns = &.{ |
| 138812 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138813 | }, |
| 138814 | .extra_temps = .{ |
| 138815 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138816 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138817 | .{ .type = .vector_8_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 138818 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138819 | .unused, |
| 138820 | .unused, |
| 138821 | .unused, |
| 138822 | .unused, |
| 138823 | .unused, |
| 138824 | .unused, |
| 138825 | .unused, |
| 138826 | }, |
| 138827 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138828 | .clobbers = .{ .eflags = true }, |
| 138829 | .each = .{ .once = &.{ |
| 138830 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138831 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 138832 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 138833 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 138834 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 138835 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 138836 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 138837 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138838 | .{ .@"0:", .vp_d, .maxs, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 138839 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 138840 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138841 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138842 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138843 | .{ ._, .vp_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138844 | .{ ._, .vp_d, .maxs, .dst0x, .dst0x, .tmp3x, ._ }, |
| 138845 | } }, |
| 138846 | }, .{ |
| 138847 | .required_features = .{ .sse4_1, null, null, null }, |
| 138848 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138849 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 138850 | .patterns = &.{ |
| 138851 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138852 | }, |
| 138853 | .extra_temps = .{ |
| 138854 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138855 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138856 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 138857 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138858 | .unused, |
| 138859 | .unused, |
| 138860 | .unused, |
| 138861 | .unused, |
| 138862 | .unused, |
| 138863 | .unused, |
| 138864 | .unused, |
| 138865 | }, |
| 138866 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138867 | .clobbers = .{ .eflags = true }, |
| 138868 | .each = .{ .once = &.{ |
| 138869 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138870 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 138871 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 138872 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 138873 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 138874 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 138875 | .{ .@"0:", .p_d, .maxs, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 138876 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 138877 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138878 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138879 | .{ ._, .p_d, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 138880 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138881 | .{ ._, .p_d, .maxs, .dst0x, .tmp3x, ._, ._ }, |
| 138882 | } }, |
| 138883 | }, .{ |
| 138884 | .required_features = .{ .sse2, null, null, null }, |
| 138885 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 138886 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 138887 | .patterns = &.{ |
| 138888 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138889 | }, |
| 138890 | .extra_temps = .{ |
| 138891 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138892 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138893 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 138894 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138895 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 138896 | .unused, |
| 138897 | .unused, |
| 138898 | .unused, |
| 138899 | .unused, |
| 138900 | .unused, |
| 138901 | .unused, |
| 138902 | }, |
| 138903 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138904 | .clobbers = .{ .eflags = true }, |
| 138905 | .each = .{ .once = &.{ |
| 138906 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138907 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 138908 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 138909 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 138910 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 138911 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 138912 | .{ .@"0:", ._dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 138913 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 138914 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 138915 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 138916 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 138917 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 138918 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 138919 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138920 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138921 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 138922 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 138923 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 138924 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 138925 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 138926 | .{ ._, .p_w, .shufl, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 138927 | .{ ._, ._dqa, .mov, .tmp4x, .dst0x, ._, ._ }, |
| 138928 | .{ ._, .p_d, .cmpgt, .tmp4x, .tmp3x, ._, ._ }, |
| 138929 | .{ ._, .p_, .@"and", .dst0x, .tmp4x, ._, ._ }, |
| 138930 | .{ ._, .p_, .andn, .tmp4x, .tmp3x, ._, ._ }, |
| 138931 | .{ ._, .p_, .@"or", .dst0x, .tmp4x, ._, ._ }, |
| 138932 | } }, |
| 138933 | }, .{ |
| 138934 | .required_features = .{ .avx512f, null, null, null }, |
| 138935 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138936 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 138937 | .patterns = &.{ |
| 138938 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138939 | }, |
| 138940 | .extra_temps = .{ |
| 138941 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138942 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138943 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 138944 | .unused, |
| 138945 | .unused, |
| 138946 | .unused, |
| 138947 | .unused, |
| 138948 | .unused, |
| 138949 | .unused, |
| 138950 | .unused, |
| 138951 | .unused, |
| 138952 | }, |
| 138953 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138954 | .clobbers = .{ .eflags = true }, |
| 138955 | .each = .{ .once = &.{ |
| 138956 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138957 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 138958 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 138959 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 138960 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 138961 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 138962 | .{ .@"0:", .vp_d, .maxu, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 138963 | .{ ._, .vp_d, .maxu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 138964 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 138965 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 138966 | .{ ._, .vp_d, .maxu, .dst0y, .dst0y, .tmp2y, ._ }, |
| 138967 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 138968 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 138969 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 138970 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 138971 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 138972 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 138973 | } }, |
| 138974 | }, .{ |
| 138975 | .required_features = .{ .avx2, null, null, null }, |
| 138976 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 138977 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 138978 | .patterns = &.{ |
| 138979 | .{ .src = .{ .to_mem, .none, .none } }, |
| 138980 | }, |
| 138981 | .extra_temps = .{ |
| 138982 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 138983 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 138984 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 138985 | .unused, |
| 138986 | .unused, |
| 138987 | .unused, |
| 138988 | .unused, |
| 138989 | .unused, |
| 138990 | .unused, |
| 138991 | .unused, |
| 138992 | .unused, |
| 138993 | }, |
| 138994 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 138995 | .clobbers = .{ .eflags = true }, |
| 138996 | .each = .{ .once = &.{ |
| 138997 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 138998 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 138999 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 139000 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 139001 | .{ .@"0:", .vp_d, .maxu, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 139002 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 139003 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139004 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 139005 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139006 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 139007 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139008 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 139009 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139010 | } }, |
| 139011 | }, .{ |
| 139012 | .required_features = .{ .avx, null, null, null }, |
| 139013 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 139014 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 139015 | .patterns = &.{ |
| 139016 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139017 | }, |
| 139018 | .extra_temps = .{ |
| 139019 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139020 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 139021 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 139022 | .unused, |
| 139023 | .unused, |
| 139024 | .unused, |
| 139025 | .unused, |
| 139026 | .unused, |
| 139027 | .unused, |
| 139028 | .unused, |
| 139029 | .unused, |
| 139030 | }, |
| 139031 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139032 | .clobbers = .{ .eflags = true }, |
| 139033 | .each = .{ .once = &.{ |
| 139034 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139035 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 139036 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 139037 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 139038 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 139039 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139040 | .{ .@"0:", .vp_d, .maxu, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 139041 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 139042 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139043 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 139044 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139045 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 139046 | .{ ._, .vp_d, .maxu, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139047 | } }, |
| 139048 | }, .{ |
| 139049 | .required_features = .{ .sse4_1, null, null, null }, |
| 139050 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 139051 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 139052 | .patterns = &.{ |
| 139053 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139054 | }, |
| 139055 | .extra_temps = .{ |
| 139056 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139057 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 139058 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 139059 | .unused, |
| 139060 | .unused, |
| 139061 | .unused, |
| 139062 | .unused, |
| 139063 | .unused, |
| 139064 | .unused, |
| 139065 | .unused, |
| 139066 | .unused, |
| 139067 | }, |
| 139068 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139069 | .clobbers = .{ .eflags = true }, |
| 139070 | .each = .{ .once = &.{ |
| 139071 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139072 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 139073 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 139074 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 139075 | .{ .@"0:", .p_d, .maxu, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 139076 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 139077 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139078 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 139079 | .{ ._, .p_d, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 139080 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 139081 | .{ ._, .p_d, .maxu, .dst0x, .tmp2x, ._, ._ }, |
| 139082 | } }, |
| 139083 | }, .{ |
| 139084 | .required_features = .{ .sse3, null, null, null }, |
| 139085 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 139086 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 139087 | .patterns = &.{ |
| 139088 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139089 | }, |
| 139090 | .extra_temps = .{ |
| 139091 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139092 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 139093 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 139094 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 139095 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 139096 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 139097 | .unused, |
| 139098 | .unused, |
| 139099 | .unused, |
| 139100 | .unused, |
| 139101 | .unused, |
| 139102 | }, |
| 139103 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139104 | .clobbers = .{ .eflags = true }, |
| 139105 | .each = .{ .once = &.{ |
| 139106 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139107 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 139108 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 139109 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 139110 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 139111 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 139112 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 139113 | .{ .@"0:", ._dqa, .mov, .tmp4x, .memi(.src0x, .tmp0), ._, ._ }, |
| 139114 | .{ ._, .p_, .xor, .tmp4x, .tmp2x, ._, ._ }, |
| 139115 | .{ ._, ._dqa, .mov, .tmp5x, .dst0x, ._, ._ }, |
| 139116 | .{ ._, .p_d, .cmpgt, .tmp5x, .tmp4x, ._, ._ }, |
| 139117 | .{ ._, .p_, .@"and", .dst0x, .tmp5x, ._, ._ }, |
| 139118 | .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ }, |
| 139119 | .{ ._, .p_, .@"or", .dst0x, .tmp5x, ._, ._ }, |
| 139120 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 139121 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139122 | .{ ._, .p_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 139123 | .{ ._, ._dqa, .mov, .tmp5x, .dst0x, ._, ._ }, |
| 139124 | .{ ._, .p_d, .cmpgt, .tmp5x, .tmp4x, ._, ._ }, |
| 139125 | .{ ._, .p_, .@"and", .dst0x, .tmp5x, ._, ._ }, |
| 139126 | .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ }, |
| 139127 | .{ ._, .p_, .@"or", .dst0x, .tmp5x, ._, ._ }, |
| 139128 | .{ ._, .p_w, .shufl, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 139129 | .{ ._, ._dqa, .mov, .tmp5x, .dst0x, ._, ._ }, |
| 139130 | .{ ._, .p_d, .cmpgt, .tmp5x, .tmp4x, ._, ._ }, |
| 139131 | .{ ._, .p_, .@"and", .dst0x, .tmp5x, ._, ._ }, |
| 139132 | .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ }, |
| 139133 | .{ ._, .p_, .@"or", .dst0x, .tmp5x, ._, ._ }, |
| 139134 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 139135 | } }, |
| 139136 | }, .{ |
| 139137 | .required_features = .{ .sse2, null, null, null }, |
| 139138 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 139139 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 139140 | .patterns = &.{ |
| 139141 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139142 | }, |
| 139143 | .extra_temps = .{ |
| 139144 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139145 | .{ .type = .vector_4_i32, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 139146 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 139147 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 139148 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 139149 | .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } }, |
| 139150 | .unused, |
| 139151 | .unused, |
| 139152 | .unused, |
| 139153 | .unused, |
| 139154 | .unused, |
| 139155 | }, |
| 139156 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139157 | .clobbers = .{ .eflags = true }, |
| 139158 | .each = .{ .once = &.{ |
| 139159 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139160 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 139161 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 139162 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 139163 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 139164 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 139165 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 139166 | .{ .@"0:", ._dqa, .mov, .tmp4x, .memi(.src0x, .tmp0), ._, ._ }, |
| 139167 | .{ ._, .p_, .xor, .tmp4x, .tmp2x, ._, ._ }, |
| 139168 | .{ ._, ._dqa, .mov, .tmp5x, .dst0x, ._, ._ }, |
| 139169 | .{ ._, .p_d, .cmpgt, .tmp5x, .tmp4x, ._, ._ }, |
| 139170 | .{ ._, .p_, .@"and", .dst0x, .tmp5x, ._, ._ }, |
| 139171 | .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ }, |
| 139172 | .{ ._, .p_, .@"or", .dst0x, .tmp5x, ._, ._ }, |
| 139173 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 139174 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139175 | .{ ._, .p_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 139176 | .{ ._, ._dqa, .mov, .tmp5x, .dst0x, ._, ._ }, |
| 139177 | .{ ._, .p_d, .cmpgt, .tmp5x, .tmp4x, ._, ._ }, |
| 139178 | .{ ._, .p_, .@"and", .dst0x, .tmp5x, ._, ._ }, |
| 139179 | .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ }, |
| 139180 | .{ ._, .p_, .@"or", .dst0x, .tmp5x, ._, ._ }, |
| 139181 | .{ ._, .p_w, .shufl, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 139182 | .{ ._, ._dqa, .mov, .tmp5x, .dst0x, ._, ._ }, |
| 139183 | .{ ._, .p_d, .cmpgt, .tmp5x, .tmp4x, ._, ._ }, |
| 139184 | .{ ._, .p_, .@"and", .dst0x, .tmp5x, ._, ._ }, |
| 139185 | .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ }, |
| 139186 | .{ ._, .p_, .@"or", .dst0x, .tmp5x, ._, ._ }, |
| 139187 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 139188 | } }, |
| 139189 | }, .{ |
| 139190 | .required_features = .{ .cmov, null, null, null }, |
| 139191 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 139192 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 139193 | .patterns = &.{ |
| 139194 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139195 | }, |
| 139196 | .extra_temps = .{ |
| 139197 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139198 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, |
| 139199 | .unused, |
| 139200 | .unused, |
| 139201 | .unused, |
| 139202 | .unused, |
| 139203 | .unused, |
| 139204 | .unused, |
| 139205 | .unused, |
| 139206 | .unused, |
| 139207 | .unused, |
| 139208 | }, |
| 139209 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 139210 | .clobbers = .{ .eflags = true }, |
| 139211 | .each = .{ .once = &.{ |
| 139212 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size), ._, ._ }, |
| 139213 | .{ ._, ._, .mov, .dst0d, .memad(.src0d, .add_unaligned_size, -4), ._, ._ }, |
| 139214 | .{ .@"0:", ._, .mov, .tmp1d, .memi(.src0d, .tmp0), ._, ._ }, |
| 139215 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 139216 | .{ ._, ._l, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 139217 | .{ ._, ._, .sub, .tmp0d, .si(4), ._, ._ }, |
| 139218 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139219 | } }, |
| 139220 | }, .{ |
| 139221 | .dst_constraints = .{ .{ .signed_int = .dword }, .any }, |
| 139222 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 139223 | .patterns = &.{ |
| 139224 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139225 | }, |
| 139226 | .extra_temps = .{ |
| 139227 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139228 | .{ .type = .i32, .kind = .{ .rc = .general_purpose } }, |
| 139229 | .unused, |
| 139230 | .unused, |
| 139231 | .unused, |
| 139232 | .unused, |
| 139233 | .unused, |
| 139234 | .unused, |
| 139235 | .unused, |
| 139236 | .unused, |
| 139237 | .unused, |
| 139238 | }, |
| 139239 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 139240 | .clobbers = .{ .eflags = true }, |
| 139241 | .each = .{ .once = &.{ |
| 139242 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size), ._, ._ }, |
| 139243 | .{ ._, ._, .mov, .dst0d, .memad(.src0d, .add_unaligned_size, -4), ._, ._ }, |
| 139244 | .{ .@"0:", ._, .mov, .tmp1d, .memi(.src0d, .tmp0), ._, ._ }, |
| 139245 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 139246 | .{ ._, ._nl, .j, .@"1f", ._, ._, ._ }, |
| 139247 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 139248 | .{ .@"1:", ._, .sub, .tmp0d, .si(4), ._, ._ }, |
| 139249 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139250 | } }, |
| 139251 | }, .{ |
| 139252 | .required_features = .{ .cmov, null, null, null }, |
| 139253 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 139254 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 139255 | .patterns = &.{ |
| 139256 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139257 | }, |
| 139258 | .extra_temps = .{ |
| 139259 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139260 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139261 | .unused, |
| 139262 | .unused, |
| 139263 | .unused, |
| 139264 | .unused, |
| 139265 | .unused, |
| 139266 | .unused, |
| 139267 | .unused, |
| 139268 | .unused, |
| 139269 | .unused, |
| 139270 | }, |
| 139271 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 139272 | .clobbers = .{ .eflags = true }, |
| 139273 | .each = .{ .once = &.{ |
| 139274 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size), ._, ._ }, |
| 139275 | .{ ._, ._, .mov, .dst0d, .memad(.src0d, .add_unaligned_size, -4), ._, ._ }, |
| 139276 | .{ .@"0:", ._, .mov, .tmp1d, .memi(.src0d, .tmp0), ._, ._ }, |
| 139277 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 139278 | .{ ._, ._b, .cmov, .dst0d, .tmp1d, ._, ._ }, |
| 139279 | .{ ._, ._, .sub, .tmp0d, .si(4), ._, ._ }, |
| 139280 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139281 | } }, |
| 139282 | }, .{ |
| 139283 | .dst_constraints = .{ .{ .unsigned_int = .dword }, .any }, |
| 139284 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 139285 | .patterns = &.{ |
| 139286 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139287 | }, |
| 139288 | .extra_temps = .{ |
| 139289 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139290 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139291 | .unused, |
| 139292 | .unused, |
| 139293 | .unused, |
| 139294 | .unused, |
| 139295 | .unused, |
| 139296 | .unused, |
| 139297 | .unused, |
| 139298 | .unused, |
| 139299 | .unused, |
| 139300 | }, |
| 139301 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 139302 | .clobbers = .{ .eflags = true }, |
| 139303 | .each = .{ .once = &.{ |
| 139304 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size), ._, ._ }, |
| 139305 | .{ ._, ._, .mov, .dst0d, .memad(.src0d, .add_unaligned_size, -4), ._, ._ }, |
| 139306 | .{ .@"0:", ._, .mov, .tmp1d, .memi(.src0d, .tmp0), ._, ._ }, |
| 139307 | .{ ._, ._, .cmp, .dst0d, .tmp1d, ._, ._ }, |
| 139308 | .{ ._, ._nb, .j, .@"1f", ._, ._, ._ }, |
| 139309 | .{ ._, ._, .mov, .dst0d, .tmp1d, ._, ._ }, |
| 139310 | .{ .@"1:", ._, .sub, .tmp0d, .si(4), ._, ._ }, |
| 139311 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139312 | } }, |
| 139313 | }, .{ |
| 139314 | .required_features = .{ .avx, null, null, null }, |
| 139315 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 139316 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 139317 | .patterns = &.{ |
| 139318 | .{ .src = .{ .to_sse, .none, .none } }, |
| 139319 | }, |
| 139320 | .extra_temps = .{ |
| 139321 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139322 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139323 | .unused, |
| 139324 | .unused, |
| 139325 | .unused, |
| 139326 | .unused, |
| 139327 | .unused, |
| 139328 | .unused, |
| 139329 | .unused, |
| 139330 | .unused, |
| 139331 | .unused, |
| 139332 | }, |
| 139333 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 139334 | .each = .{ .once = &.{ |
| 139335 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 139336 | .{ ._, .vp_q, .cmpgt, .tmp1x, .tmp0x, .src0x, ._ }, |
| 139337 | .{ ._, .vp_b, .blendv, .dst0x, .src0x, .tmp0x, .tmp1x }, |
| 139338 | } }, |
| 139339 | }, .{ |
| 139340 | .required_features = .{ .sse4_2, null, null, null }, |
| 139341 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 139342 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 139343 | .patterns = &.{ |
| 139344 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 139345 | }, |
| 139346 | .extra_temps = .{ |
| 139347 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139348 | .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } }, |
| 139349 | .unused, |
| 139350 | .unused, |
| 139351 | .unused, |
| 139352 | .unused, |
| 139353 | .unused, |
| 139354 | .unused, |
| 139355 | .unused, |
| 139356 | .unused, |
| 139357 | .unused, |
| 139358 | }, |
| 139359 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 139360 | .each = .{ .once = &.{ |
| 139361 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 139362 | .{ ._, ._dqa, .mov, .tmp1x, .tmp0x, ._, ._ }, |
| 139363 | .{ ._, .p_q, .cmpgt, .tmp1x, .src0x, ._, ._ }, |
| 139364 | .{ ._, .p_b, .blendv, .dst0x, .tmp0x, .tmp1x, ._ }, |
| 139365 | } }, |
| 139366 | }, .{ |
| 139367 | .required_features = .{ .avx, null, null, null }, |
| 139368 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 139369 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 139370 | .patterns = &.{ |
| 139371 | .{ .src = .{ .mem, .none, .none } }, |
| 139372 | .{ .src = .{ .to_sse, .none, .none } }, |
| 139373 | }, |
| 139374 | .extra_temps = .{ |
| 139375 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 139376 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 139377 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139378 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139379 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139380 | .unused, |
| 139381 | .unused, |
| 139382 | .unused, |
| 139383 | .unused, |
| 139384 | .unused, |
| 139385 | .unused, |
| 139386 | }, |
| 139387 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 139388 | .each = .{ .once = &.{ |
| 139389 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139390 | .{ ._, .v_, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 139391 | .{ ._, .vp_, .xor, .dst0x, .tmp2x, .src0x, ._ }, |
| 139392 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 139393 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139394 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 139395 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139396 | } }, |
| 139397 | }, .{ |
| 139398 | .required_features = .{ .sse4_2, null, null, null }, |
| 139399 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 139400 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 139401 | .patterns = &.{ |
| 139402 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 139403 | }, |
| 139404 | .extra_temps = .{ |
| 139405 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 139406 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 139407 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139408 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139409 | .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } }, |
| 139410 | .unused, |
| 139411 | .unused, |
| 139412 | .unused, |
| 139413 | .unused, |
| 139414 | .unused, |
| 139415 | .unused, |
| 139416 | }, |
| 139417 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 139418 | .each = .{ .once = &.{ |
| 139419 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139420 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 139421 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 139422 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 139423 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 139424 | .{ ._, .p_q, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 139425 | .{ ._, .p_b, .blendv, .dst0x, .tmp3x, .tmp4x, ._ }, |
| 139426 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 139427 | } }, |
| 139428 | }, .{ |
| 139429 | .required_features = .{ .avx2, null, null, null }, |
| 139430 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 139431 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 139432 | .patterns = &.{ |
| 139433 | .{ .src = .{ .to_sse, .none, .none } }, |
| 139434 | }, |
| 139435 | .extra_temps = .{ |
| 139436 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139437 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139438 | .unused, |
| 139439 | .unused, |
| 139440 | .unused, |
| 139441 | .unused, |
| 139442 | .unused, |
| 139443 | .unused, |
| 139444 | .unused, |
| 139445 | .unused, |
| 139446 | .unused, |
| 139447 | }, |
| 139448 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 139449 | .each = .{ .once = &.{ |
| 139450 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 139451 | .{ ._, .vp_q, .cmpgt, .tmp1x, .tmp0x, .src0x, ._ }, |
| 139452 | .{ ._, .vp_b, .blendv, .tmp0x, .src0x, .tmp0x, .tmp1x }, |
| 139453 | .{ ._, .v_i128, .extract, .dst0x, .src0y, .ui(1), ._ }, |
| 139454 | .{ ._, .vp_q, .cmpgt, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 139455 | .{ ._, .vp_b, .blendv, .dst0x, .tmp0x, .dst0x, .tmp1x }, |
| 139456 | } }, |
| 139457 | }, .{ |
| 139458 | .required_features = .{ .avx, null, null, null }, |
| 139459 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 139460 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 139461 | .patterns = &.{ |
| 139462 | .{ .src = .{ .to_sse, .none, .none } }, |
| 139463 | }, |
| 139464 | .extra_temps = .{ |
| 139465 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139466 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139467 | .unused, |
| 139468 | .unused, |
| 139469 | .unused, |
| 139470 | .unused, |
| 139471 | .unused, |
| 139472 | .unused, |
| 139473 | .unused, |
| 139474 | .unused, |
| 139475 | .unused, |
| 139476 | }, |
| 139477 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 139478 | .each = .{ .once = &.{ |
| 139479 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 139480 | .{ ._, .vp_q, .cmpgt, .tmp1x, .tmp0x, .src0x, ._ }, |
| 139481 | .{ ._, .vp_b, .blendv, .tmp0x, .src0x, .tmp0x, .tmp1x }, |
| 139482 | .{ ._, .v_f128, .extract, .dst0x, .src0y, .ui(1), ._ }, |
| 139483 | .{ ._, .vp_q, .cmpgt, .tmp1x, .dst0x, .tmp0x, ._ }, |
| 139484 | .{ ._, .vp_b, .blendv, .dst0x, .tmp0x, .dst0x, .tmp1x }, |
| 139485 | } }, |
| 139486 | }, .{ |
| 139487 | .required_features = .{ .avx2, null, null, null }, |
| 139488 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 139489 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 139490 | .patterns = &.{ |
| 139491 | .{ .src = .{ .mem, .none, .none } }, |
| 139492 | .{ .src = .{ .to_sse, .none, .none } }, |
| 139493 | }, |
| 139494 | .extra_temps = .{ |
| 139495 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 139496 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 139497 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139498 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139499 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139500 | .unused, |
| 139501 | .unused, |
| 139502 | .unused, |
| 139503 | .unused, |
| 139504 | .unused, |
| 139505 | .unused, |
| 139506 | }, |
| 139507 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 139508 | .each = .{ .once = &.{ |
| 139509 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139510 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 139511 | .{ ._, .vp_, .xor, .dst0y, .tmp2y, .src0y, ._ }, |
| 139512 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 139513 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139514 | .{ ._, .vp_b, .blendv, .tmp3x, .dst0x, .tmp3x, .tmp4x }, |
| 139515 | .{ ._, .v_i128, .extract, .dst0x, .dst0y, .ui(1), ._ }, |
| 139516 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 139517 | .{ ._, .vp_b, .blendv, .dst0x, .tmp3x, .dst0x, .tmp4x }, |
| 139518 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139519 | } }, |
| 139520 | }, .{ |
| 139521 | .required_features = .{ .avx, null, null, null }, |
| 139522 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 139523 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 139524 | .patterns = &.{ |
| 139525 | .{ .src = .{ .mem, .none, .none } }, |
| 139526 | .{ .src = .{ .to_sse, .none, .none } }, |
| 139527 | }, |
| 139528 | .extra_temps = .{ |
| 139529 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 139530 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 139531 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139532 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139533 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139534 | .unused, |
| 139535 | .unused, |
| 139536 | .unused, |
| 139537 | .unused, |
| 139538 | .unused, |
| 139539 | .unused, |
| 139540 | }, |
| 139541 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 139542 | .each = .{ .once = &.{ |
| 139543 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139544 | .{ ._, .v_sd, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 139545 | .{ ._, .v_pd, .xor, .dst0y, .tmp2y, .src0y, ._ }, |
| 139546 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 139547 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139548 | .{ ._, .vp_b, .blendv, .tmp3x, .dst0x, .tmp3x, .tmp4x }, |
| 139549 | .{ ._, .v_f128, .extract, .dst0x, .dst0y, .ui(1), ._ }, |
| 139550 | .{ ._, .vp_q, .cmpgt, .tmp4x, .dst0x, .tmp3x, ._ }, |
| 139551 | .{ ._, .vp_b, .blendv, .dst0x, .tmp3x, .dst0x, .tmp4x }, |
| 139552 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139553 | } }, |
| 139554 | }, .{ |
| 139555 | .required_features = .{ .avx2, null, null, null }, |
| 139556 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 139557 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 139558 | .patterns = &.{ |
| 139559 | .{ .src = .{ .to_sse, .none, .none } }, |
| 139560 | }, |
| 139561 | .extra_temps = .{ |
| 139562 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139563 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139564 | .unused, |
| 139565 | .unused, |
| 139566 | .unused, |
| 139567 | .unused, |
| 139568 | .unused, |
| 139569 | .unused, |
| 139570 | .unused, |
| 139571 | .unused, |
| 139572 | .unused, |
| 139573 | }, |
| 139574 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 139575 | .each = .{ .once = &.{ |
| 139576 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 139577 | .{ ._, .vp_q, .cmpgt, .tmp1x, .tmp0x, .src0x, ._ }, |
| 139578 | .{ ._, .vp_b, .blendv, .dst0x, .src0x, .tmp0x, .tmp1x }, |
| 139579 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 139580 | .{ ._, .vp_q, .cmpgt, .tmp1x, .tmp0x, .dst0x, ._ }, |
| 139581 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x }, |
| 139582 | } }, |
| 139583 | }, .{ |
| 139584 | .required_features = .{ .avx, null, null, null }, |
| 139585 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 139586 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 139587 | .patterns = &.{ |
| 139588 | .{ .src = .{ .to_sse, .none, .none } }, |
| 139589 | }, |
| 139590 | .extra_temps = .{ |
| 139591 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139592 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139593 | .unused, |
| 139594 | .unused, |
| 139595 | .unused, |
| 139596 | .unused, |
| 139597 | .unused, |
| 139598 | .unused, |
| 139599 | .unused, |
| 139600 | .unused, |
| 139601 | .unused, |
| 139602 | }, |
| 139603 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 139604 | .each = .{ .once = &.{ |
| 139605 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 139606 | .{ ._, .vp_q, .cmpgt, .tmp1x, .tmp0x, .src0x, ._ }, |
| 139607 | .{ ._, .vp_b, .blendv, .dst0x, .src0x, .tmp0x, .tmp1x }, |
| 139608 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 139609 | .{ ._, .vp_q, .cmpgt, .tmp1x, .tmp0x, .dst0x, ._ }, |
| 139610 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x }, |
| 139611 | } }, |
| 139612 | }, .{ |
| 139613 | .required_features = .{ .avx2, null, null, null }, |
| 139614 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 139615 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 139616 | .patterns = &.{ |
| 139617 | .{ .src = .{ .mem, .none, .none } }, |
| 139618 | .{ .src = .{ .to_sse, .none, .none } }, |
| 139619 | }, |
| 139620 | .extra_temps = .{ |
| 139621 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 139622 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 139623 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139624 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139625 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139626 | .unused, |
| 139627 | .unused, |
| 139628 | .unused, |
| 139629 | .unused, |
| 139630 | .unused, |
| 139631 | .unused, |
| 139632 | }, |
| 139633 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 139634 | .each = .{ .once = &.{ |
| 139635 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139636 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 139637 | .{ ._, .vp_, .xor, .dst0y, .tmp2y, .src0y, ._ }, |
| 139638 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 139639 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139640 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 139641 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 139642 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139643 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 139644 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139645 | } }, |
| 139646 | }, .{ |
| 139647 | .required_features = .{ .avx, null, null, null }, |
| 139648 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 139649 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 139650 | .patterns = &.{ |
| 139651 | .{ .src = .{ .mem, .none, .none } }, |
| 139652 | .{ .src = .{ .to_sse, .none, .none } }, |
| 139653 | }, |
| 139654 | .extra_temps = .{ |
| 139655 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 139656 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 139657 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139658 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139659 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139660 | .unused, |
| 139661 | .unused, |
| 139662 | .unused, |
| 139663 | .unused, |
| 139664 | .unused, |
| 139665 | .unused, |
| 139666 | }, |
| 139667 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 139668 | .each = .{ .once = &.{ |
| 139669 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139670 | .{ ._, .v_sd, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 139671 | .{ ._, .v_pd, .xor, .dst0y, .tmp2y, .src0y, ._ }, |
| 139672 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 139673 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139674 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 139675 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 139676 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139677 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 139678 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139679 | } }, |
| 139680 | }, .{ |
| 139681 | .required_features = .{ .avx512f, null, null, null }, |
| 139682 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 139683 | .src_constraints = .{ .{ .exclusive_scalar_signed_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 139684 | .patterns = &.{ |
| 139685 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139686 | }, |
| 139687 | .extra_temps = .{ |
| 139688 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 139689 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 139690 | .{ .type = .vector_8_i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 139691 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139692 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139693 | .unused, |
| 139694 | .unused, |
| 139695 | .unused, |
| 139696 | .unused, |
| 139697 | .unused, |
| 139698 | .unused, |
| 139699 | }, |
| 139700 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139701 | .each = .{ .once = &.{ |
| 139702 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139703 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 139704 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 139705 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 139706 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 139707 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 139708 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 139709 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 139710 | .{ ._, .vp_q, .cmpgt, .tmp4y, .tmp3y, .dst0y, ._ }, |
| 139711 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp3y, .tmp4y }, |
| 139712 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 139713 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139714 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 139715 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 139716 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139717 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 139718 | } }, |
| 139719 | }, .{ |
| 139720 | .required_features = .{ .avx512f, null, null, null }, |
| 139721 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 139722 | .src_constraints = .{ .{ .exclusive_scalar_unsigned_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 139723 | .patterns = &.{ |
| 139724 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139725 | }, |
| 139726 | .extra_temps = .{ |
| 139727 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 139728 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 139729 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139730 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 139731 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139732 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139733 | .unused, |
| 139734 | .unused, |
| 139735 | .unused, |
| 139736 | .unused, |
| 139737 | .unused, |
| 139738 | }, |
| 139739 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139740 | .each = .{ .once = &.{ |
| 139741 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139742 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 139743 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 139744 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 139745 | .{ ._, .v_dqa, .mov, .tmp4y, .memd(.src0y, 32), ._, ._ }, |
| 139746 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 139747 | .{ ._, .vp_, .@"and", .tmp4y, .tmp4y, .lead(.tmp0y, 32), ._ }, |
| 139748 | .{ ._, .vp_, .xor, .dst0y, .dst0y, .tmp2y, ._ }, |
| 139749 | .{ ._, .vp_, .xor, .tmp4y, .tmp4y, .tmp2y, ._ }, |
| 139750 | .{ ._, .vp_q, .cmpgt, .tmp5y, .tmp4y, .dst0y, ._ }, |
| 139751 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp4y, .tmp5y }, |
| 139752 | .{ ._, .v_i128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 139753 | .{ ._, .vp_q, .cmpgt, .tmp5x, .tmp4x, .dst0x, ._ }, |
| 139754 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 139755 | .{ ._, .vp_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 139756 | .{ ._, .vp_q, .cmpgt, .tmp5x, .tmp4x, .dst0x, ._ }, |
| 139757 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 139758 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139759 | } }, |
| 139760 | }, .{ |
| 139761 | .required_features = .{ .avx512f, null, null, null }, |
| 139762 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 139763 | .src_constraints = .{ .{ .exact_scalar_signed_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 139764 | .patterns = &.{ |
| 139765 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139766 | }, |
| 139767 | .extra_temps = .{ |
| 139768 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139769 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139770 | .unused, |
| 139771 | .unused, |
| 139772 | .unused, |
| 139773 | .unused, |
| 139774 | .unused, |
| 139775 | .unused, |
| 139776 | .unused, |
| 139777 | .unused, |
| 139778 | .unused, |
| 139779 | }, |
| 139780 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139781 | .each = .{ .once = &.{ |
| 139782 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 139783 | .{ ._, .v_dqa, .mov, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 139784 | .{ ._, .vp_q, .cmpgt, .tmp1y, .tmp0y, .dst0y, ._ }, |
| 139785 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp0y, .tmp1y }, |
| 139786 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 139787 | .{ ._, .vp_q, .cmpgt, .tmp1x, .tmp0x, .dst0x, ._ }, |
| 139788 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x }, |
| 139789 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 139790 | .{ ._, .vp_q, .cmpgt, .tmp1x, .tmp0x, .dst0x, ._ }, |
| 139791 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x }, |
| 139792 | } }, |
| 139793 | }, .{ |
| 139794 | .required_features = .{ .avx512f, null, null, null }, |
| 139795 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 139796 | .src_constraints = .{ .{ .exact_scalar_unsigned_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 139797 | .patterns = &.{ |
| 139798 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139799 | }, |
| 139800 | .extra_temps = .{ |
| 139801 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 139802 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 139803 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139804 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139805 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139806 | .unused, |
| 139807 | .unused, |
| 139808 | .unused, |
| 139809 | .unused, |
| 139810 | .unused, |
| 139811 | .unused, |
| 139812 | }, |
| 139813 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139814 | .each = .{ .once = &.{ |
| 139815 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139816 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 139817 | .{ ._, .vp_, .xor, .dst0y, .tmp2y, .mem(.src0y), ._ }, |
| 139818 | .{ ._, .vp_, .xor, .tmp3y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 139819 | .{ ._, .vp_q, .cmpgt, .tmp4y, .tmp3y, .dst0y, ._ }, |
| 139820 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp3y, .tmp4y }, |
| 139821 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 139822 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139823 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 139824 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 139825 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139826 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 139827 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139828 | } }, |
| 139829 | }, .{ |
| 139830 | .required_features = .{ .avx2, null, null, null }, |
| 139831 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 139832 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 139833 | .patterns = &.{ |
| 139834 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139835 | }, |
| 139836 | .extra_temps = .{ |
| 139837 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139838 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139839 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139840 | .unused, |
| 139841 | .unused, |
| 139842 | .unused, |
| 139843 | .unused, |
| 139844 | .unused, |
| 139845 | .unused, |
| 139846 | .unused, |
| 139847 | .unused, |
| 139848 | }, |
| 139849 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139850 | .clobbers = .{ .eflags = true }, |
| 139851 | .each = .{ .once = &.{ |
| 139852 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 139853 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 139854 | .{ .@"0:", .v_dqa, .mov, .tmp1y, .memi(.src0y, .tmp0), ._, ._ }, |
| 139855 | .{ ._, .vp_q, .cmpgt, .tmp2y, .tmp1y, .dst0y, ._ }, |
| 139856 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp1y, .tmp2y }, |
| 139857 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 139858 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139859 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 139860 | .{ ._, .vp_q, .cmpgt, .tmp2x, .tmp1x, .dst0x, ._ }, |
| 139861 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp1x, .tmp2x }, |
| 139862 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 139863 | .{ ._, .vp_q, .cmpgt, .tmp2x, .tmp1x, .dst0x, ._ }, |
| 139864 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp1x, .tmp2x }, |
| 139865 | } }, |
| 139866 | }, .{ |
| 139867 | .required_features = .{ .avx, null, null, null }, |
| 139868 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 139869 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 139870 | .patterns = &.{ |
| 139871 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139872 | }, |
| 139873 | .extra_temps = .{ |
| 139874 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139875 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139876 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139877 | .unused, |
| 139878 | .unused, |
| 139879 | .unused, |
| 139880 | .unused, |
| 139881 | .unused, |
| 139882 | .unused, |
| 139883 | .unused, |
| 139884 | .unused, |
| 139885 | }, |
| 139886 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139887 | .clobbers = .{ .eflags = true }, |
| 139888 | .each = .{ .once = &.{ |
| 139889 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 139890 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 139891 | .{ .@"0:", .v_dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 139892 | .{ ._, .vp_q, .cmpgt, .tmp2x, .tmp1x, .dst0x, ._ }, |
| 139893 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp1x, .tmp2x }, |
| 139894 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 139895 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139896 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 139897 | .{ ._, .vp_q, .cmpgt, .tmp2x, .tmp1x, .dst0x, ._ }, |
| 139898 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp1x, .tmp2x }, |
| 139899 | } }, |
| 139900 | }, .{ |
| 139901 | .required_features = .{ .sse4_2, null, null, null }, |
| 139902 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 139903 | .src_constraints = .{ .{ .unaligned_multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 139904 | .patterns = &.{ |
| 139905 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139906 | }, |
| 139907 | .extra_temps = .{ |
| 139908 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139909 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139910 | .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } }, |
| 139911 | .unused, |
| 139912 | .unused, |
| 139913 | .unused, |
| 139914 | .unused, |
| 139915 | .unused, |
| 139916 | .unused, |
| 139917 | .unused, |
| 139918 | .unused, |
| 139919 | }, |
| 139920 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139921 | .clobbers = .{ .eflags = true }, |
| 139922 | .each = .{ .once = &.{ |
| 139923 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 139924 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 139925 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 139926 | .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ }, |
| 139927 | .{ ._, .p_q, .cmpgt, .tmp2x, .dst0x, ._, ._ }, |
| 139928 | .{ ._, .p_b, .blendv, .dst0x, .tmp1x, .tmp2x, ._ }, |
| 139929 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 139930 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139931 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 139932 | .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ }, |
| 139933 | .{ ._, .p_q, .cmpgt, .tmp2x, .dst0x, ._, ._ }, |
| 139934 | .{ ._, .p_b, .blendv, .dst0x, .tmp1x, .tmp2x, ._ }, |
| 139935 | } }, |
| 139936 | }, .{ |
| 139937 | .required_features = .{ .avx2, null, null, null }, |
| 139938 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 139939 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 139940 | .patterns = &.{ |
| 139941 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139942 | }, |
| 139943 | .extra_temps = .{ |
| 139944 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139945 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 139946 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139947 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139948 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 139949 | .unused, |
| 139950 | .unused, |
| 139951 | .unused, |
| 139952 | .unused, |
| 139953 | .unused, |
| 139954 | .unused, |
| 139955 | }, |
| 139956 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139957 | .clobbers = .{ .eflags = true }, |
| 139958 | .each = .{ .once = &.{ |
| 139959 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 139960 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 139961 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 139962 | .{ ._, .vp_, .xor, .dst0y, .tmp2y, .memad(.src0y, .add_unaligned_size, -32), ._ }, |
| 139963 | .{ .@"0:", .vp_, .xor, .tmp3y, .tmp2y, .memi(.src0y, .tmp0), ._ }, |
| 139964 | .{ ._, .vp_q, .cmpgt, .tmp4y, .tmp3y, .dst0y, ._ }, |
| 139965 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp3y, .tmp4y }, |
| 139966 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 139967 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 139968 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 139969 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139970 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 139971 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 139972 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 139973 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 139974 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 139975 | } }, |
| 139976 | }, .{ |
| 139977 | .required_features = .{ .avx, null, null, null }, |
| 139978 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 139979 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 139980 | .patterns = &.{ |
| 139981 | .{ .src = .{ .to_mem, .none, .none } }, |
| 139982 | }, |
| 139983 | .extra_temps = .{ |
| 139984 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 139985 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 139986 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139987 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139988 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 139989 | .unused, |
| 139990 | .unused, |
| 139991 | .unused, |
| 139992 | .unused, |
| 139993 | .unused, |
| 139994 | .unused, |
| 139995 | }, |
| 139996 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 139997 | .clobbers = .{ .eflags = true }, |
| 139998 | .each = .{ .once = &.{ |
| 139999 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 140000 | .{ ._, .v_, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 140001 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 140002 | .{ ._, .vp_, .xor, .dst0x, .tmp2x, .memad(.src0x, .add_unaligned_size, -16), ._ }, |
| 140003 | .{ .@"0:", .vp_, .xor, .tmp3x, .tmp2x, .memi(.src0x, .tmp0), ._ }, |
| 140004 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 140005 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 140006 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 140007 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140008 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 140009 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 140010 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 140011 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 140012 | } }, |
| 140013 | }, .{ |
| 140014 | .required_features = .{ .sse4_2, null, null, null }, |
| 140015 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 140016 | .src_constraints = .{ .{ .unaligned_multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 140017 | .patterns = &.{ |
| 140018 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140019 | }, |
| 140020 | .extra_temps = .{ |
| 140021 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140022 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 140023 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 140024 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 140025 | .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } }, |
| 140026 | .unused, |
| 140027 | .unused, |
| 140028 | .unused, |
| 140029 | .unused, |
| 140030 | .unused, |
| 140031 | .unused, |
| 140032 | }, |
| 140033 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 140034 | .clobbers = .{ .eflags = true }, |
| 140035 | .each = .{ .once = &.{ |
| 140036 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 140037 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 140038 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 140039 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 140040 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 140041 | .{ .@"0:", ._dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 140042 | .{ ._, .p_, .xor, .tmp3x, .tmp2x, ._, ._ }, |
| 140043 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 140044 | .{ ._, .p_q, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 140045 | .{ ._, .p_b, .blendv, .dst0x, .tmp3x, .tmp4x, ._ }, |
| 140046 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 140047 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140048 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 140049 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 140050 | .{ ._, .p_q, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 140051 | .{ ._, .p_b, .blendv, .dst0x, .tmp3x, .tmp4x, ._ }, |
| 140052 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 140053 | } }, |
| 140054 | }, .{ |
| 140055 | .required_features = .{ .avx512f, null, null, null }, |
| 140056 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 140057 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 140058 | .patterns = &.{ |
| 140059 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140060 | }, |
| 140061 | .extra_temps = .{ |
| 140062 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140063 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 140064 | .{ .type = .vector_8_i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 140065 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 140066 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 140067 | .unused, |
| 140068 | .unused, |
| 140069 | .unused, |
| 140070 | .unused, |
| 140071 | .unused, |
| 140072 | .unused, |
| 140073 | }, |
| 140074 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 140075 | .clobbers = .{ .eflags = true }, |
| 140076 | .each = .{ .once = &.{ |
| 140077 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 140078 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 140079 | .{ ._, .v_dqa, .mov, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 140080 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 140081 | .{ ._, .vp_, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 140082 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 140083 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 140084 | .{ ._, .vp_, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 140085 | .{ ._, ._, .mov, .tmp0d, .sia(-96, .src0, .add_size), ._, ._ }, |
| 140086 | .{ ._, .vp_q, .cmpgt, .tmp4y, .tmp3y, .dst0y, ._ }, |
| 140087 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp3y, .tmp4y }, |
| 140088 | .{ .@"0:", .v_dqa, .mov, .tmp3y, .memi(.src0y, .tmp0), ._, ._ }, |
| 140089 | .{ ._, .vp_q, .cmpgt, .tmp4y, .tmp3y, .dst0y, ._ }, |
| 140090 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp3y, .tmp4y }, |
| 140091 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 140092 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140093 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 140094 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 140095 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 140096 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 140097 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 140098 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 140099 | } }, |
| 140100 | }, .{ |
| 140101 | .required_features = .{ .avx2, null, null, null }, |
| 140102 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 140103 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 140104 | .patterns = &.{ |
| 140105 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140106 | }, |
| 140107 | .extra_temps = .{ |
| 140108 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140109 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 140110 | .{ .type = .vector_4_i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 140111 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 140112 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 140113 | .unused, |
| 140114 | .unused, |
| 140115 | .unused, |
| 140116 | .unused, |
| 140117 | .unused, |
| 140118 | .unused, |
| 140119 | }, |
| 140120 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 140121 | .clobbers = .{ .eflags = true }, |
| 140122 | .each = .{ .once = &.{ |
| 140123 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 140124 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 140125 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 140126 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 140127 | .{ ._, .vp_, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 140128 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 140129 | .{ .@"0:", .v_dqa, .mov, .tmp3y, .memi(.src0y, .tmp0), ._, ._ }, |
| 140130 | .{ ._, .vp_q, .cmpgt, .tmp4y, .tmp3y, .dst0y, ._ }, |
| 140131 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp3y, .tmp4y }, |
| 140132 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 140133 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140134 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 140135 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 140136 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 140137 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 140138 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 140139 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 140140 | } }, |
| 140141 | }, .{ |
| 140142 | .required_features = .{ .avx, null, null, null }, |
| 140143 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 140144 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 140145 | .patterns = &.{ |
| 140146 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140147 | }, |
| 140148 | .extra_temps = .{ |
| 140149 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140150 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 140151 | .{ .type = .vector_4_i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 140152 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 140153 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 140154 | .unused, |
| 140155 | .unused, |
| 140156 | .unused, |
| 140157 | .unused, |
| 140158 | .unused, |
| 140159 | .unused, |
| 140160 | }, |
| 140161 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 140162 | .clobbers = .{ .eflags = true }, |
| 140163 | .each = .{ .once = &.{ |
| 140164 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 140165 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 140166 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 140167 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 140168 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 140169 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 140170 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 140171 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 140172 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 140173 | .{ .@"0:", .v_dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 140174 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 140175 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 140176 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 140177 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140178 | .{ ._, .vp_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 140179 | .{ ._, .vp_q, .cmpgt, .tmp4x, .tmp3x, .dst0x, ._ }, |
| 140180 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp3x, .tmp4x }, |
| 140181 | } }, |
| 140182 | }, .{ |
| 140183 | .required_features = .{ .sse4_2, null, null, null }, |
| 140184 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 140185 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 140186 | .patterns = &.{ |
| 140187 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140188 | }, |
| 140189 | .extra_temps = .{ |
| 140190 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140191 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 140192 | .{ .type = .vector_2_i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .outside = .smin } } }, |
| 140193 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 140194 | .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } }, |
| 140195 | .unused, |
| 140196 | .unused, |
| 140197 | .unused, |
| 140198 | .unused, |
| 140199 | .unused, |
| 140200 | .unused, |
| 140201 | }, |
| 140202 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 140203 | .clobbers = .{ .eflags = true }, |
| 140204 | .each = .{ .once = &.{ |
| 140205 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 140206 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 140207 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 140208 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 140209 | .{ ._, .p_, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 140210 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 140211 | .{ .@"0:", ._dqa, .mov, .tmp3x, .memi(.src0x, .tmp0), ._, ._ }, |
| 140212 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 140213 | .{ ._, .p_q, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 140214 | .{ ._, .p_b, .blendv, .dst0x, .tmp3x, .tmp4x, ._ }, |
| 140215 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 140216 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140217 | .{ ._, .p_d, .shuf, .tmp3x, .dst0x, .ui(0b11_10), ._ }, |
| 140218 | .{ ._, ._dqa, .mov, .tmp4x, .tmp3x, ._, ._ }, |
| 140219 | .{ ._, .p_q, .cmpgt, .tmp4x, .dst0x, ._, ._ }, |
| 140220 | .{ ._, .p_b, .blendv, .dst0x, .tmp3x, .tmp4x, ._ }, |
| 140221 | } }, |
| 140222 | }, .{ |
| 140223 | .required_features = .{ .avx512f, null, null, null }, |
| 140224 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 140225 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 140226 | .patterns = &.{ |
| 140227 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140228 | }, |
| 140229 | .extra_temps = .{ |
| 140230 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140231 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 140232 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 140233 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 140234 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 140235 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 140236 | .unused, |
| 140237 | .unused, |
| 140238 | .unused, |
| 140239 | .unused, |
| 140240 | .unused, |
| 140241 | }, |
| 140242 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 140243 | .clobbers = .{ .eflags = true }, |
| 140244 | .each = .{ .once = &.{ |
| 140245 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 140246 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 140247 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 140248 | .{ ._, .v_dqa, .mov, .tmp4y, .memad(.src0y, .add_size, -32), ._, ._ }, |
| 140249 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_size, -64), ._, ._ }, |
| 140250 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 140251 | .{ ._, .vp_, .@"and", .tmp4y, .tmp4y, .lead(.tmp0y, 32), ._ }, |
| 140252 | .{ ._, .vp_, .xor, .dst0y, .dst0y, .tmp2y, ._ }, |
| 140253 | .{ ._, .vp_, .xor, .tmp4y, .tmp4y, .tmp2y, ._ }, |
| 140254 | .{ ._, ._, .mov, .tmp0d, .sia(-96, .src0, .add_size), ._, ._ }, |
| 140255 | .{ ._, .vp_q, .cmpgt, .tmp5y, .tmp4y, .dst0y, ._ }, |
| 140256 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp4y, .tmp5y }, |
| 140257 | .{ .@"0:", .vp_, .xor, .tmp4y, .tmp2y, .memi(.src0y, .tmp0), ._ }, |
| 140258 | .{ ._, .vp_q, .cmpgt, .tmp5y, .tmp4y, .dst0y, ._ }, |
| 140259 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp4y, .tmp5y }, |
| 140260 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 140261 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140262 | .{ ._, .v_i128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 140263 | .{ ._, .vp_q, .cmpgt, .tmp5x, .tmp4x, .dst0x, ._ }, |
| 140264 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 140265 | .{ ._, .vp_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 140266 | .{ ._, .vp_q, .cmpgt, .tmp5x, .tmp4x, .dst0x, ._ }, |
| 140267 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 140268 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 140269 | } }, |
| 140270 | }, .{ |
| 140271 | .required_features = .{ .avx2, null, null, null }, |
| 140272 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 140273 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 140274 | .patterns = &.{ |
| 140275 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140276 | }, |
| 140277 | .extra_temps = .{ |
| 140278 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140279 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 140280 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 140281 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 140282 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 140283 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 140284 | .unused, |
| 140285 | .unused, |
| 140286 | .unused, |
| 140287 | .unused, |
| 140288 | .unused, |
| 140289 | }, |
| 140290 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 140291 | .clobbers = .{ .eflags = true }, |
| 140292 | .each = .{ .once = &.{ |
| 140293 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 140294 | .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 140295 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 140296 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_size, -32), ._, ._ }, |
| 140297 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 140298 | .{ ._, .vp_, .xor, .dst0y, .dst0y, .tmp2y, ._ }, |
| 140299 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 140300 | .{ .@"0:", .vp_, .xor, .tmp4y, .tmp2y, .memi(.src0y, .tmp0), ._ }, |
| 140301 | .{ ._, .vp_q, .cmpgt, .tmp5y, .tmp4y, .dst0y, ._ }, |
| 140302 | .{ ._, .vp_b, .blendv, .dst0y, .dst0y, .tmp4y, .tmp5y }, |
| 140303 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 140304 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140305 | .{ ._, .v_i128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 140306 | .{ ._, .vp_q, .cmpgt, .tmp5x, .tmp4x, .dst0x, ._ }, |
| 140307 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 140308 | .{ ._, .vp_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 140309 | .{ ._, .vp_q, .cmpgt, .tmp5x, .tmp4x, .dst0x, ._ }, |
| 140310 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 140311 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 140312 | } }, |
| 140313 | }, .{ |
| 140314 | .required_features = .{ .avx, null, null, null }, |
| 140315 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 140316 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 140317 | .patterns = &.{ |
| 140318 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140319 | }, |
| 140320 | .extra_temps = .{ |
| 140321 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140322 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 140323 | .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } }, |
| 140324 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 140325 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 140326 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 140327 | .unused, |
| 140328 | .unused, |
| 140329 | .unused, |
| 140330 | .unused, |
| 140331 | .unused, |
| 140332 | }, |
| 140333 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 140334 | .clobbers = .{ .eflags = true }, |
| 140335 | .each = .{ .once = &.{ |
| 140336 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 140337 | .{ ._, .v_sd, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ }, |
| 140338 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 140339 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_size, -32), ._, ._ }, |
| 140340 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 140341 | .{ ._, .v_ps, .xor, .dst0y, .dst0y, .tmp2y, ._ }, |
| 140342 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 140343 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 140344 | .{ ._, .vp_q, .cmpgt, .tmp5x, .tmp4x, .dst0x, ._ }, |
| 140345 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 140346 | .{ .@"0:", .vp_, .xor, .tmp4x, .tmp2x, .memi(.src0x, .tmp0), ._ }, |
| 140347 | .{ ._, .vp_q, .cmpgt, .tmp5x, .tmp4x, .dst0x, ._ }, |
| 140348 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 140349 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 140350 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140351 | .{ ._, .vp_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 140352 | .{ ._, .vp_q, .cmpgt, .tmp5x, .tmp4x, .dst0x, ._ }, |
| 140353 | .{ ._, .vp_b, .blendv, .dst0x, .dst0x, .tmp4x, .tmp5x }, |
| 140354 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .tmp2x, ._ }, |
| 140355 | } }, |
| 140356 | }, .{ |
| 140357 | .required_features = .{ .sse4_2, null, null, null }, |
| 140358 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 140359 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 140360 | .patterns = &.{ |
| 140361 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140362 | }, |
| 140363 | .extra_temps = .{ |
| 140364 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140365 | .{ .type = .i64, .kind = .{ .splat_int_mem = .{ .ref = .src0, .inside = .smin, .outside = .smin } } }, |
| 140366 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 140367 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 140368 | .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } }, |
| 140369 | .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } }, |
| 140370 | .unused, |
| 140371 | .unused, |
| 140372 | .unused, |
| 140373 | .unused, |
| 140374 | .unused, |
| 140375 | }, |
| 140376 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 140377 | .clobbers = .{ .eflags = true }, |
| 140378 | .each = .{ .once = &.{ |
| 140379 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 140380 | .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 140381 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ }, |
| 140382 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 140383 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 140384 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 140385 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 140386 | .{ .@"0:", ._dqa, .mov, .tmp4x, .memi(.src0x, .tmp0), ._, ._ }, |
| 140387 | .{ ._, .p_, .xor, .tmp4x, .tmp2x, ._, ._ }, |
| 140388 | .{ ._, ._dqa, .mov, .tmp5x, .tmp4x, ._, ._ }, |
| 140389 | .{ ._, .p_q, .cmpgt, .tmp5x, .dst0x, ._, ._ }, |
| 140390 | .{ ._, .p_b, .blendv, .dst0x, .tmp4x, .tmp5x, ._ }, |
| 140391 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 140392 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140393 | .{ ._, .p_d, .shuf, .tmp4x, .dst0x, .ui(0b11_10), ._ }, |
| 140394 | .{ ._, ._dqa, .mov, .tmp5x, .tmp4x, ._, ._ }, |
| 140395 | .{ ._, .p_q, .cmpgt, .tmp5x, .dst0x, ._, ._ }, |
| 140396 | .{ ._, .p_b, .blendv, .dst0x, .tmp4x, .tmp5x, ._ }, |
| 140397 | .{ ._, .p_, .xor, .dst0x, .tmp2x, ._, ._ }, |
| 140398 | } }, |
| 140399 | }, .{ |
| 140400 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| 140401 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 140402 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 140403 | .patterns = &.{ |
| 140404 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140405 | }, |
| 140406 | .extra_temps = .{ |
| 140407 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140408 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 140409 | .unused, |
| 140410 | .unused, |
| 140411 | .unused, |
| 140412 | .unused, |
| 140413 | .unused, |
| 140414 | .unused, |
| 140415 | .unused, |
| 140416 | .unused, |
| 140417 | .unused, |
| 140418 | }, |
| 140419 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 140420 | .clobbers = .{ .eflags = true }, |
| 140421 | .each = .{ .once = &.{ |
| 140422 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 140423 | .{ ._, ._, .mov, .dst0q, .memad(.src0q, .add_unaligned_size, -8), ._, ._ }, |
| 140424 | .{ .@"0:", ._, .mov, .tmp1q, .memi(.src0q, .tmp0), ._, ._ }, |
| 140425 | .{ ._, ._, .cmp, .dst0q, .tmp1q, ._, ._ }, |
| 140426 | .{ ._, ._l, .cmov, .dst0q, .tmp1q, ._, ._ }, |
| 140427 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 140428 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140429 | } }, |
| 140430 | }, .{ |
| 140431 | .required_features = .{ .@"64bit", null, null, null }, |
| 140432 | .dst_constraints = .{ .{ .signed_int = .qword }, .any }, |
| 140433 | .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 140434 | .patterns = &.{ |
| 140435 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140436 | }, |
| 140437 | .extra_temps = .{ |
| 140438 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140439 | .{ .type = .i64, .kind = .{ .rc = .general_purpose } }, |
| 140440 | .unused, |
| 140441 | .unused, |
| 140442 | .unused, |
| 140443 | .unused, |
| 140444 | .unused, |
| 140445 | .unused, |
| 140446 | .unused, |
| 140447 | .unused, |
| 140448 | .unused, |
| 140449 | }, |
| 140450 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 140451 | .clobbers = .{ .eflags = true }, |
| 140452 | .each = .{ .once = &.{ |
| 140453 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 140454 | .{ ._, ._, .mov, .dst0q, .memad(.src0q, .add_unaligned_size, -8), ._, ._ }, |
| 140455 | .{ .@"0:", ._, .mov, .tmp1q, .memi(.src0q, .tmp0), ._, ._ }, |
| 140456 | .{ ._, ._, .cmp, .dst0q, .tmp1q, ._, ._ }, |
| 140457 | .{ ._, ._nl, .j, .@"1f", ._, ._, ._ }, |
| 140458 | .{ ._, ._, .mov, .dst0q, .tmp1q, ._, ._ }, |
| 140459 | .{ .@"1:", ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 140460 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140461 | } }, |
| 140462 | }, .{ |
| 140463 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| 140464 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 140465 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 140466 | .patterns = &.{ |
| 140467 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140468 | }, |
| 140469 | .extra_temps = .{ |
| 140470 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140471 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 140472 | .unused, |
| 140473 | .unused, |
| 140474 | .unused, |
| 140475 | .unused, |
| 140476 | .unused, |
| 140477 | .unused, |
| 140478 | .unused, |
| 140479 | .unused, |
| 140480 | .unused, |
| 140481 | }, |
| 140482 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 140483 | .clobbers = .{ .eflags = true }, |
| 140484 | .each = .{ .once = &.{ |
| 140485 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 140486 | .{ ._, ._, .mov, .dst0q, .memad(.src0q, .add_unaligned_size, -8), ._, ._ }, |
| 140487 | .{ .@"0:", ._, .mov, .tmp1q, .memi(.src0q, .tmp0), ._, ._ }, |
| 140488 | .{ ._, ._, .cmp, .dst0q, .tmp1q, ._, ._ }, |
| 140489 | .{ ._, ._b, .cmov, .dst0q, .tmp1q, ._, ._ }, |
| 140490 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 140491 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140492 | } }, |
| 140493 | }, .{ |
| 140494 | .required_features = .{ .@"64bit", null, null, null }, |
| 140495 | .dst_constraints = .{ .{ .unsigned_int = .qword }, .any }, |
| 140496 | .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 140497 | .patterns = &.{ |
| 140498 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140499 | }, |
| 140500 | .extra_temps = .{ |
| 140501 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 140502 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 140503 | .unused, |
| 140504 | .unused, |
| 140505 | .unused, |
| 140506 | .unused, |
| 140507 | .unused, |
| 140508 | .unused, |
| 140509 | .unused, |
| 140510 | .unused, |
| 140511 | .unused, |
| 140512 | }, |
| 140513 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 140514 | .clobbers = .{ .eflags = true }, |
| 140515 | .each = .{ .once = &.{ |
| 140516 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 140517 | .{ ._, ._, .mov, .dst0q, .memad(.src0q, .add_unaligned_size, -8), ._, ._ }, |
| 140518 | .{ .@"0:", ._, .mov, .tmp1q, .memi(.src0q, .tmp0), ._, ._ }, |
| 140519 | .{ ._, ._, .cmp, .dst0q, .tmp1q, ._, ._ }, |
| 140520 | .{ ._, ._nb, .j, .@"1f", ._, ._, ._ }, |
| 140521 | .{ ._, ._, .mov, .dst0q, .tmp1q, ._, ._ }, |
| 140522 | .{ .@"1:", ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 140523 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140524 | } }, |
| 140525 | }, .{ |
| 140526 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| 140527 | .dst_constraints = .{ .{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 140528 | .src_constraints = .{ .{ .scalar_remainder_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 140529 | .patterns = &.{ |
| 140530 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140531 | }, |
| 140532 | .extra_temps = .{ |
| 140533 | .{ .type = .u32, .kind = .{ .reg = .rdi } }, |
| 140534 | .{ .type = .usize, .kind = .{ .reg = .rsi } }, |
| 140535 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| 140536 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 140537 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 140538 | .unused, |
| 140539 | .unused, |
| 140540 | .unused, |
| 140541 | .unused, |
| 140542 | .unused, |
| 140543 | .unused, |
| 140544 | }, |
| 140545 | .dst_temps = .{ .mem, .unused }, |
| 140546 | .clobbers = .{ .eflags = true }, |
| 140547 | .each = .{ .once = &.{ |
| 140548 | .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 140549 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 140550 | .{ .@"0:", ._, .mov, .tmp2p, .sia(1, .dst0, .sub_size_div_8), ._, ._ }, |
| 140551 | .{ ._, ._, .lea, .tmp3p, .memi(.src0, .tmp0), ._, ._ }, |
| 140552 | .{ ._, ._c, .cl, ._, ._, ._, ._ }, |
| 140553 | .{ .@"1:", ._, .mov, .tmp4q, .leasiad(.tmp1q, .@"8", .tmp2, .add_src0_elem_size, -8), ._, ._ }, |
| 140554 | .{ ._, ._, .sbb, .tmp4q, .leasiad(.tmp3q, .@"8", .tmp2, .add_src0_elem_size, -8), ._, ._ }, |
| 140555 | .{ ._, ._c, .in, .tmp2p, ._, ._, ._ }, |
| 140556 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| 140557 | .{ ._, ._, .mov, .tmp4q, .leaad(.tmp1q, .add_src0_elem_size, -8), ._, ._ }, |
| 140558 | .{ ._, ._, .sbb, .tmp4q, .leaad(.tmp3q, .add_src0_elem_size, -8), ._, ._ }, |
| 140559 | .{ ._, ._l, .cmov, .tmp1p, .tmp3p, ._, ._ }, |
| 140560 | .{ ._, ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 140561 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140562 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| 140563 | .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| 140564 | .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ }, |
| 140565 | } }, |
| 140566 | }, .{ |
| 140567 | .required_features = .{ .@"64bit", null, null, null }, |
| 140568 | .dst_constraints = .{ .{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 140569 | .src_constraints = .{ .{ .scalar_remainder_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 140570 | .patterns = &.{ |
| 140571 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140572 | }, |
| 140573 | .extra_temps = .{ |
| 140574 | .{ .type = .u32, .kind = .{ .reg = .rdi } }, |
| 140575 | .{ .type = .usize, .kind = .{ .reg = .rsi } }, |
| 140576 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| 140577 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 140578 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 140579 | .unused, |
| 140580 | .unused, |
| 140581 | .unused, |
| 140582 | .unused, |
| 140583 | .unused, |
| 140584 | .unused, |
| 140585 | }, |
| 140586 | .dst_temps = .{ .mem, .unused }, |
| 140587 | .clobbers = .{ .eflags = true }, |
| 140588 | .each = .{ .once = &.{ |
| 140589 | .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 140590 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 140591 | .{ .@"0:", ._, .mov, .tmp2p, .sia(1, .dst0, .sub_size_div_8), ._, ._ }, |
| 140592 | .{ ._, ._, .lea, .tmp3p, .memi(.src0, .tmp0), ._, ._ }, |
| 140593 | .{ ._, ._c, .cl, ._, ._, ._, ._ }, |
| 140594 | .{ .@"1:", ._, .mov, .tmp4q, .leasiad(.tmp1q, .@"8", .tmp2, .add_src0_elem_size, -8), ._, ._ }, |
| 140595 | .{ ._, ._, .sbb, .tmp4q, .leasiad(.tmp3q, .@"8", .tmp2, .add_src0_elem_size, -8), ._, ._ }, |
| 140596 | .{ ._, ._c, .in, .tmp2p, ._, ._, ._ }, |
| 140597 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| 140598 | .{ ._, ._, .mov, .tmp4q, .leaad(.tmp1q, .add_src0_elem_size, -8), ._, ._ }, |
| 140599 | .{ ._, ._, .sbb, .tmp4q, .leaad(.tmp3q, .add_src0_elem_size, -8), ._, ._ }, |
| 140600 | .{ ._, ._nl, .j, .@"1f", ._, ._, ._ }, |
| 140601 | .{ ._, ._, .mov, .tmp1p, .tmp3p, ._, ._ }, |
| 140602 | .{ .@"1:", ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 140603 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140604 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| 140605 | .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| 140606 | .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ }, |
| 140607 | } }, |
| 140608 | }, .{ |
| 140609 | .required_features = .{ .@"64bit", .cmov, null, null }, |
| 140610 | .dst_constraints = .{ .{ .remainder_unsigned_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 140611 | .src_constraints = .{ .{ .scalar_remainder_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 140612 | .patterns = &.{ |
| 140613 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140614 | }, |
| 140615 | .extra_temps = .{ |
| 140616 | .{ .type = .u32, .kind = .{ .reg = .rdi } }, |
| 140617 | .{ .type = .usize, .kind = .{ .reg = .rsi } }, |
| 140618 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| 140619 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 140620 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 140621 | .unused, |
| 140622 | .unused, |
| 140623 | .unused, |
| 140624 | .unused, |
| 140625 | .unused, |
| 140626 | .unused, |
| 140627 | }, |
| 140628 | .dst_temps = .{ .mem, .unused }, |
| 140629 | .clobbers = .{ .eflags = true }, |
| 140630 | .each = .{ .once = &.{ |
| 140631 | .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 140632 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 140633 | .{ .@"0:", ._, .mov, .tmp2p, .sa(.dst0, .sub_size_div_8), ._, ._ }, |
| 140634 | .{ ._, ._, .lea, .tmp3p, .memi(.src0, .tmp0), ._, ._ }, |
| 140635 | .{ ._, ._c, .cl, ._, ._, ._, ._ }, |
| 140636 | .{ .@"1:", ._, .mov, .tmp4q, .leasia(.tmp1q, .@"8", .tmp2, .add_src0_elem_size), ._, ._ }, |
| 140637 | .{ ._, ._, .sbb, .tmp4q, .leasia(.tmp3q, .@"8", .tmp2, .add_src0_elem_size), ._, ._ }, |
| 140638 | .{ ._, ._c, .in, .tmp2p, ._, ._, ._ }, |
| 140639 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| 140640 | .{ ._, ._b, .cmov, .tmp1p, .tmp3p, ._, ._ }, |
| 140641 | .{ ._, ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 140642 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140643 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| 140644 | .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| 140645 | .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ }, |
| 140646 | } }, |
| 140647 | }, .{ |
| 140648 | .required_features = .{ .@"64bit", null, null, null }, |
| 140649 | .dst_constraints = .{ .{ .remainder_unsigned_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 140650 | .src_constraints = .{ .{ .scalar_remainder_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 140651 | .patterns = &.{ |
| 140652 | .{ .src = .{ .to_mem, .none, .none } }, |
| 140653 | }, |
| 140654 | .extra_temps = .{ |
| 140655 | .{ .type = .u32, .kind = .{ .reg = .rdi } }, |
| 140656 | .{ .type = .usize, .kind = .{ .reg = .rsi } }, |
| 140657 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| 140658 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 140659 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 140660 | .unused, |
| 140661 | .unused, |
| 140662 | .unused, |
| 140663 | .unused, |
| 140664 | .unused, |
| 140665 | .unused, |
| 140666 | }, |
| 140667 | .dst_temps = .{ .mem, .unused }, |
| 140668 | .clobbers = .{ .eflags = true }, |
| 140669 | .each = .{ .once = &.{ |
| 140670 | .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 140671 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 140672 | .{ .@"0:", ._, .mov, .tmp2p, .sa(.dst0, .sub_size_div_8), ._, ._ }, |
| 140673 | .{ ._, ._, .lea, .tmp3p, .memi(.src0, .tmp0), ._, ._ }, |
| 140674 | .{ ._, ._c, .cl, ._, ._, ._, ._ }, |
| 140675 | .{ .@"1:", ._, .mov, .tmp4q, .leasia(.tmp1q, .@"8", .tmp2, .add_src0_elem_size), ._, ._ }, |
| 140676 | .{ ._, ._, .sbb, .tmp4q, .leasia(.tmp3q, .@"8", .tmp2, .add_src0_elem_size), ._, ._ }, |
| 140677 | .{ ._, ._c, .in, .tmp2p, ._, ._, ._ }, |
| 140678 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| 140679 | .{ ._, ._nb, .j, .@"1f", ._, ._, ._ }, |
| 140680 | .{ ._, ._, .mov, .tmp1p, .tmp3p, ._, ._ }, |
| 140681 | .{ .@"1:", ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 140682 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 140683 | .{ ._, ._, .lea, .tmp0p, .mem(.dst0), ._, ._ }, |
| 140684 | .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| 140685 | .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ }, |
| 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 | } }, |
| 143000 | } }, |
| 143001 | .Add => comptime &.{ .{ |
| 143002 | .required_features = .{ .avx, null, null, null }, |
| 143003 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143004 | .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 143005 | .patterns = &.{ |
| 143006 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143007 | }, |
| 143008 | .extra_temps = .{ |
| 143009 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143010 | .unused, |
| 143011 | .unused, |
| 143012 | .unused, |
| 143013 | .unused, |
| 143014 | .unused, |
| 143015 | .unused, |
| 143016 | .unused, |
| 143017 | .unused, |
| 143018 | .unused, |
| 143019 | .unused, |
| 143020 | }, |
| 143021 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143022 | .each = .{ .once = &.{ |
| 143023 | .{ ._, .vp_w, .srl, .tmp0x, .src0x, .ui(8), ._ }, |
| 143024 | .{ ._, .vp_b, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 143025 | } }, |
| 143026 | }, .{ |
| 143027 | .required_features = .{ .sse2, null, null, null }, |
| 143028 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143029 | .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 143030 | .patterns = &.{ |
| 143031 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 143032 | }, |
| 143033 | .extra_temps = .{ |
| 143034 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143035 | .unused, |
| 143036 | .unused, |
| 143037 | .unused, |
| 143038 | .unused, |
| 143039 | .unused, |
| 143040 | .unused, |
| 143041 | .unused, |
| 143042 | .unused, |
| 143043 | .unused, |
| 143044 | .unused, |
| 143045 | }, |
| 143046 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 143047 | .each = .{ .once = &.{ |
| 143048 | .{ ._, ._dqa, .mov, .tmp0x, .src0x, ._, ._ }, |
| 143049 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 143050 | .{ ._, .p_b, .add, .dst0x, .tmp0x, ._, ._ }, |
| 143051 | } }, |
| 143052 | }, .{ |
| 143053 | .required_features = .{ .avx, null, null, null }, |
| 143054 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143055 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 143056 | .patterns = &.{ |
| 143057 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143058 | }, |
| 143059 | .extra_temps = .{ |
| 143060 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143061 | .unused, |
| 143062 | .unused, |
| 143063 | .unused, |
| 143064 | .unused, |
| 143065 | .unused, |
| 143066 | .unused, |
| 143067 | .unused, |
| 143068 | .unused, |
| 143069 | .unused, |
| 143070 | .unused, |
| 143071 | }, |
| 143072 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143073 | .each = .{ .once = &.{ |
| 143074 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 143075 | .{ ._, .vp_b, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 143076 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 143077 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143078 | } }, |
| 143079 | }, .{ |
| 143080 | .required_features = .{ .sse2, null, null, null }, |
| 143081 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143082 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 143083 | .patterns = &.{ |
| 143084 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 143085 | }, |
| 143086 | .extra_temps = .{ |
| 143087 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143088 | .unused, |
| 143089 | .unused, |
| 143090 | .unused, |
| 143091 | .unused, |
| 143092 | .unused, |
| 143093 | .unused, |
| 143094 | .unused, |
| 143095 | .unused, |
| 143096 | .unused, |
| 143097 | .unused, |
| 143098 | }, |
| 143099 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 143100 | .each = .{ .once = &.{ |
| 143101 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 143102 | .{ ._, .p_b, .add, .dst0x, .tmp0x, ._, ._ }, |
| 143103 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 143104 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 143105 | .{ ._, .p_b, .add, .dst0x, .tmp0x, ._, ._ }, |
| 143106 | } }, |
| 143107 | }, .{ |
| 143108 | .required_features = .{ .avx, null, null, null }, |
| 143109 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143110 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 143111 | .patterns = &.{ |
| 143112 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143113 | }, |
| 143114 | .extra_temps = .{ |
| 143115 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143116 | .unused, |
| 143117 | .unused, |
| 143118 | .unused, |
| 143119 | .unused, |
| 143120 | .unused, |
| 143121 | .unused, |
| 143122 | .unused, |
| 143123 | .unused, |
| 143124 | .unused, |
| 143125 | .unused, |
| 143126 | }, |
| 143127 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143128 | .each = .{ .once = &.{ |
| 143129 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 143130 | .{ ._, .vp_b, .add, .tmp0x, .src0x, .tmp0x, ._ }, |
| 143131 | .{ ._, .vp_w, .srl, .dst0x, .src0x, .ui(8), ._ }, |
| 143132 | .{ ._, .vp_b, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 143133 | } }, |
| 143134 | }, .{ |
| 143135 | .required_features = .{ .sse2, null, null, null }, |
| 143136 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143137 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 143138 | .patterns = &.{ |
| 143139 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 143140 | }, |
| 143141 | .extra_temps = .{ |
| 143142 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143143 | .unused, |
| 143144 | .unused, |
| 143145 | .unused, |
| 143146 | .unused, |
| 143147 | .unused, |
| 143148 | .unused, |
| 143149 | .unused, |
| 143150 | .unused, |
| 143151 | .unused, |
| 143152 | .unused, |
| 143153 | }, |
| 143154 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 143155 | .each = .{ .once = &.{ |
| 143156 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 143157 | .{ ._, .p_b, .add, .tmp0x, .src0x, ._, ._ }, |
| 143158 | .{ ._, .p_w, .srl, .dst0x, .ui(8), ._, ._ }, |
| 143159 | .{ ._, .p_b, .add, .dst0x, .tmp0x, ._, ._ }, |
| 143160 | } }, |
| 143161 | }, .{ |
| 143162 | .required_features = .{ .avx, null, null, null }, |
| 143163 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143164 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 143165 | .patterns = &.{ |
| 143166 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143167 | }, |
| 143168 | .extra_temps = .{ |
| 143169 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143170 | .unused, |
| 143171 | .unused, |
| 143172 | .unused, |
| 143173 | .unused, |
| 143174 | .unused, |
| 143175 | .unused, |
| 143176 | .unused, |
| 143177 | .unused, |
| 143178 | .unused, |
| 143179 | .unused, |
| 143180 | }, |
| 143181 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143182 | .each = .{ .once = &.{ |
| 143183 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 143184 | .{ ._, .vp_b, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 143185 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 143186 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143187 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 143188 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143189 | } }, |
| 143190 | }, .{ |
| 143191 | .required_features = .{ .sse2, null, null, null }, |
| 143192 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143193 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 143194 | .patterns = &.{ |
| 143195 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 143196 | }, |
| 143197 | .extra_temps = .{ |
| 143198 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143199 | .unused, |
| 143200 | .unused, |
| 143201 | .unused, |
| 143202 | .unused, |
| 143203 | .unused, |
| 143204 | .unused, |
| 143205 | .unused, |
| 143206 | .unused, |
| 143207 | .unused, |
| 143208 | .unused, |
| 143209 | }, |
| 143210 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 143211 | .each = .{ .once = &.{ |
| 143212 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 143213 | .{ ._, .p_b, .add, .dst0x, .tmp0x, ._, ._ }, |
| 143214 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 143215 | .{ ._, .p_b, .add, .dst0x, .tmp0x, ._, ._ }, |
| 143216 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 143217 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 143218 | .{ ._, .p_b, .add, .dst0x, .tmp0x, ._, ._ }, |
| 143219 | } }, |
| 143220 | }, .{ |
| 143221 | .required_features = .{ .avx, null, null, null }, |
| 143222 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143223 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 143224 | .patterns = &.{ |
| 143225 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143226 | }, |
| 143227 | .extra_temps = .{ |
| 143228 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 143229 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 143230 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143231 | .unused, |
| 143232 | .unused, |
| 143233 | .unused, |
| 143234 | .unused, |
| 143235 | .unused, |
| 143236 | .unused, |
| 143237 | .unused, |
| 143238 | .unused, |
| 143239 | }, |
| 143240 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143241 | .each = .{ .once = &.{ |
| 143242 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 143243 | .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 143244 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143245 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143246 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 143247 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143248 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 143249 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143250 | } }, |
| 143251 | }, .{ |
| 143252 | .required_features = .{ .sse2, null, null, null }, |
| 143253 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143254 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 143255 | .patterns = &.{ |
| 143256 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 143257 | }, |
| 143258 | .extra_temps = .{ |
| 143259 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 143260 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 143261 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143262 | .unused, |
| 143263 | .unused, |
| 143264 | .unused, |
| 143265 | .unused, |
| 143266 | .unused, |
| 143267 | .unused, |
| 143268 | .unused, |
| 143269 | .unused, |
| 143270 | }, |
| 143271 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 143272 | .each = .{ .once = &.{ |
| 143273 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 143274 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 143275 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143276 | .{ ._, .p_b, .add, .dst0x, .tmp2x, ._, ._ }, |
| 143277 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 143278 | .{ ._, .p_b, .add, .dst0x, .tmp2x, ._, ._ }, |
| 143279 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 143280 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 143281 | .{ ._, .p_b, .add, .dst0x, .tmp2x, ._, ._ }, |
| 143282 | } }, |
| 143283 | }, .{ |
| 143284 | .required_features = .{ .avx, null, null, null }, |
| 143285 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143286 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 143287 | .patterns = &.{ |
| 143288 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143289 | }, |
| 143290 | .extra_temps = .{ |
| 143291 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143292 | .unused, |
| 143293 | .unused, |
| 143294 | .unused, |
| 143295 | .unused, |
| 143296 | .unused, |
| 143297 | .unused, |
| 143298 | .unused, |
| 143299 | .unused, |
| 143300 | .unused, |
| 143301 | .unused, |
| 143302 | }, |
| 143303 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143304 | .each = .{ .once = &.{ |
| 143305 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 143306 | .{ ._, .vp_b, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 143307 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 143308 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143309 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 143310 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143311 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 143312 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143313 | } }, |
| 143314 | }, .{ |
| 143315 | .required_features = .{ .sse2, null, null, null }, |
| 143316 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143317 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 143318 | .patterns = &.{ |
| 143319 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 143320 | }, |
| 143321 | .extra_temps = .{ |
| 143322 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143323 | .unused, |
| 143324 | .unused, |
| 143325 | .unused, |
| 143326 | .unused, |
| 143327 | .unused, |
| 143328 | .unused, |
| 143329 | .unused, |
| 143330 | .unused, |
| 143331 | .unused, |
| 143332 | .unused, |
| 143333 | }, |
| 143334 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 143335 | .each = .{ .once = &.{ |
| 143336 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 143337 | .{ ._, .p_b, .add, .dst0x, .tmp0x, ._, ._ }, |
| 143338 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 143339 | .{ ._, .p_b, .add, .dst0x, .tmp0x, ._, ._ }, |
| 143340 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 143341 | .{ ._, .p_b, .add, .dst0x, .tmp0x, ._, ._ }, |
| 143342 | .{ ._, ._dqa, .mov, .tmp0x, .dst0x, ._, ._ }, |
| 143343 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 143344 | .{ ._, .p_b, .add, .dst0x, .tmp0x, ._, ._ }, |
| 143345 | } }, |
| 143346 | }, .{ |
| 143347 | .required_features = .{ .avx, null, null, null }, |
| 143348 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143349 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 143350 | .patterns = &.{ |
| 143351 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143352 | }, |
| 143353 | .extra_temps = .{ |
| 143354 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 143355 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 143356 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143357 | .unused, |
| 143358 | .unused, |
| 143359 | .unused, |
| 143360 | .unused, |
| 143361 | .unused, |
| 143362 | .unused, |
| 143363 | .unused, |
| 143364 | .unused, |
| 143365 | }, |
| 143366 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143367 | .each = .{ .once = &.{ |
| 143368 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 143369 | .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 143370 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143371 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143372 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143373 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143374 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 143375 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143376 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 143377 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143378 | } }, |
| 143379 | }, .{ |
| 143380 | .required_features = .{ .sse2, null, null, null }, |
| 143381 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143382 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 143383 | .patterns = &.{ |
| 143384 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 143385 | }, |
| 143386 | .extra_temps = .{ |
| 143387 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 143388 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 143389 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143390 | .unused, |
| 143391 | .unused, |
| 143392 | .unused, |
| 143393 | .unused, |
| 143394 | .unused, |
| 143395 | .unused, |
| 143396 | .unused, |
| 143397 | .unused, |
| 143398 | }, |
| 143399 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 143400 | .each = .{ .once = &.{ |
| 143401 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 143402 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 143403 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143404 | .{ ._, .p_b, .add, .dst0x, .tmp2x, ._, ._ }, |
| 143405 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143406 | .{ ._, .p_b, .add, .dst0x, .tmp2x, ._, ._ }, |
| 143407 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 143408 | .{ ._, .p_b, .add, .dst0x, .tmp2x, ._, ._ }, |
| 143409 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 143410 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 143411 | .{ ._, .p_b, .add, .dst0x, .tmp2x, ._, ._ }, |
| 143412 | } }, |
| 143413 | }, .{ |
| 143414 | .required_features = .{ .avx2, null, null, null }, |
| 143415 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143416 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 143417 | .patterns = &.{ |
| 143418 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143419 | }, |
| 143420 | .extra_temps = .{ |
| 143421 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143422 | .unused, |
| 143423 | .unused, |
| 143424 | .unused, |
| 143425 | .unused, |
| 143426 | .unused, |
| 143427 | .unused, |
| 143428 | .unused, |
| 143429 | .unused, |
| 143430 | .unused, |
| 143431 | .unused, |
| 143432 | }, |
| 143433 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143434 | .each = .{ .once = &.{ |
| 143435 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 143436 | .{ ._, .vp_b, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 143437 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 143438 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143439 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 143440 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143441 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 143442 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143443 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 143444 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143445 | } }, |
| 143446 | }, .{ |
| 143447 | .required_features = .{ .avx, null, null, null }, |
| 143448 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143449 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 143450 | .patterns = &.{ |
| 143451 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143452 | }, |
| 143453 | .extra_temps = .{ |
| 143454 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143455 | .unused, |
| 143456 | .unused, |
| 143457 | .unused, |
| 143458 | .unused, |
| 143459 | .unused, |
| 143460 | .unused, |
| 143461 | .unused, |
| 143462 | .unused, |
| 143463 | .unused, |
| 143464 | .unused, |
| 143465 | }, |
| 143466 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143467 | .each = .{ .once = &.{ |
| 143468 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 143469 | .{ ._, .vp_b, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 143470 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 143471 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143472 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 143473 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143474 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 143475 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143476 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 143477 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143478 | } }, |
| 143479 | }, .{ |
| 143480 | .required_features = .{ .avx2, null, null, null }, |
| 143481 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143482 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 143483 | .patterns = &.{ |
| 143484 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143485 | }, |
| 143486 | .extra_temps = .{ |
| 143487 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 143488 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 143489 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143490 | .unused, |
| 143491 | .unused, |
| 143492 | .unused, |
| 143493 | .unused, |
| 143494 | .unused, |
| 143495 | .unused, |
| 143496 | .unused, |
| 143497 | .unused, |
| 143498 | }, |
| 143499 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143500 | .each = .{ .once = &.{ |
| 143501 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 143502 | .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 143503 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 143504 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143505 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143506 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143507 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143508 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143509 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 143510 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143511 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 143512 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143513 | } }, |
| 143514 | }, .{ |
| 143515 | .required_features = .{ .avx, null, null, null }, |
| 143516 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143517 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 143518 | .patterns = &.{ |
| 143519 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143520 | }, |
| 143521 | .extra_temps = .{ |
| 143522 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 143523 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 143524 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143525 | .unused, |
| 143526 | .unused, |
| 143527 | .unused, |
| 143528 | .unused, |
| 143529 | .unused, |
| 143530 | .unused, |
| 143531 | .unused, |
| 143532 | .unused, |
| 143533 | }, |
| 143534 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143535 | .each = .{ .once = &.{ |
| 143536 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 143537 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 143538 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 143539 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143540 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143541 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143542 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143543 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143544 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 143545 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143546 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 143547 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143548 | } }, |
| 143549 | }, .{ |
| 143550 | .required_features = .{ .avx512f, null, null, null }, |
| 143551 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143552 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 143553 | .patterns = &.{ |
| 143554 | .{ .src = .{ .to_mem, .none, .none } }, |
| 143555 | }, |
| 143556 | .extra_temps = .{ |
| 143557 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143558 | .unused, |
| 143559 | .unused, |
| 143560 | .unused, |
| 143561 | .unused, |
| 143562 | .unused, |
| 143563 | .unused, |
| 143564 | .unused, |
| 143565 | .unused, |
| 143566 | .unused, |
| 143567 | .unused, |
| 143568 | }, |
| 143569 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 143570 | .each = .{ .once = &.{ |
| 143571 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 143572 | .{ ._, .vp_b, .add, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 143573 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 143574 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143575 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 143576 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143577 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 143578 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143579 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 143580 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143581 | .{ ._, .vp_w, .srl, .tmp0x, .dst0x, .ui(8), ._ }, |
| 143582 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 143583 | } }, |
| 143584 | }, .{ |
| 143585 | .required_features = .{ .avx512f, null, null, null }, |
| 143586 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143587 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 143588 | .patterns = &.{ |
| 143589 | .{ .src = .{ .to_mem, .none, .none } }, |
| 143590 | }, |
| 143591 | .extra_temps = .{ |
| 143592 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 143593 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 143594 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 143595 | .unused, |
| 143596 | .unused, |
| 143597 | .unused, |
| 143598 | .unused, |
| 143599 | .unused, |
| 143600 | .unused, |
| 143601 | .unused, |
| 143602 | .unused, |
| 143603 | }, |
| 143604 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 143605 | .each = .{ .once = &.{ |
| 143606 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 143607 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 143608 | .{ ._, .v_dqa, .mov, .tmp2y, .memd(.src0y, 32), ._, ._ }, |
| 143609 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 143610 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .lead(.tmp0y, 32), ._ }, |
| 143611 | .{ ._, .vp_b, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 143612 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 143613 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143614 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143615 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143616 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143617 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143618 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 143619 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143620 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 143621 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143622 | } }, |
| 143623 | }, .{ |
| 143624 | .required_features = .{ .avx2, null, null, null }, |
| 143625 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143626 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 143627 | .patterns = &.{ |
| 143628 | .{ .src = .{ .to_mem, .none, .none } }, |
| 143629 | }, |
| 143630 | .extra_temps = .{ |
| 143631 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 143632 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143633 | .unused, |
| 143634 | .unused, |
| 143635 | .unused, |
| 143636 | .unused, |
| 143637 | .unused, |
| 143638 | .unused, |
| 143639 | .unused, |
| 143640 | .unused, |
| 143641 | .unused, |
| 143642 | }, |
| 143643 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 143644 | .clobbers = .{ .eflags = true }, |
| 143645 | .each = .{ .once = &.{ |
| 143646 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 143647 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 143648 | .{ .@"0:", .vp_b, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 143649 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 143650 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 143651 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 143652 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 143653 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 143654 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 143655 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 143656 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 143657 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 143658 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 143659 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 143660 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 143661 | } }, |
| 143662 | }, .{ |
| 143663 | .required_features = .{ .avx, null, null, null }, |
| 143664 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143665 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 143666 | .patterns = &.{ |
| 143667 | .{ .src = .{ .to_mem, .none, .none } }, |
| 143668 | }, |
| 143669 | .extra_temps = .{ |
| 143670 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 143671 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143672 | .unused, |
| 143673 | .unused, |
| 143674 | .unused, |
| 143675 | .unused, |
| 143676 | .unused, |
| 143677 | .unused, |
| 143678 | .unused, |
| 143679 | .unused, |
| 143680 | .unused, |
| 143681 | }, |
| 143682 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 143683 | .clobbers = .{ .eflags = true }, |
| 143684 | .each = .{ .once = &.{ |
| 143685 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 143686 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 143687 | .{ .@"0:", .vp_b, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 143688 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 143689 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 143690 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 143691 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 143692 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 143693 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 143694 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 143695 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 143696 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 143697 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 143698 | } }, |
| 143699 | }, .{ |
| 143700 | .required_features = .{ .sse2, null, null, null }, |
| 143701 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143702 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 143703 | .patterns = &.{ |
| 143704 | .{ .src = .{ .to_mem, .none, .none } }, |
| 143705 | }, |
| 143706 | .extra_temps = .{ |
| 143707 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 143708 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143709 | .unused, |
| 143710 | .unused, |
| 143711 | .unused, |
| 143712 | .unused, |
| 143713 | .unused, |
| 143714 | .unused, |
| 143715 | .unused, |
| 143716 | .unused, |
| 143717 | .unused, |
| 143718 | }, |
| 143719 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 143720 | .clobbers = .{ .eflags = true }, |
| 143721 | .each = .{ .once = &.{ |
| 143722 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 143723 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 143724 | .{ .@"0:", .p_b, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 143725 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 143726 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 143727 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 143728 | .{ ._, .p_b, .add, .dst0x, .tmp1x, ._, ._ }, |
| 143729 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 143730 | .{ ._, .p_b, .add, .dst0x, .tmp1x, ._, ._ }, |
| 143731 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 143732 | .{ ._, .p_b, .add, .dst0x, .tmp1x, ._, ._ }, |
| 143733 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 143734 | .{ ._, .p_w, .srl, .tmp1x, .ui(8), ._, ._ }, |
| 143735 | .{ ._, .p_b, .add, .dst0x, .tmp1x, ._, ._ }, |
| 143736 | } }, |
| 143737 | }, .{ |
| 143738 | .required_features = .{ .avx512f, null, null, null }, |
| 143739 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143740 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 143741 | .patterns = &.{ |
| 143742 | .{ .src = .{ .to_mem, .none, .none } }, |
| 143743 | }, |
| 143744 | .extra_temps = .{ |
| 143745 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 143746 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 143747 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 143748 | .unused, |
| 143749 | .unused, |
| 143750 | .unused, |
| 143751 | .unused, |
| 143752 | .unused, |
| 143753 | .unused, |
| 143754 | .unused, |
| 143755 | .unused, |
| 143756 | }, |
| 143757 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 143758 | .clobbers = .{ .eflags = true }, |
| 143759 | .each = .{ .once = &.{ |
| 143760 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 143761 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 143762 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 143763 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 143764 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 143765 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 143766 | .{ .@"0:", .vp_b, .add, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 143767 | .{ ._, .vp_b, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 143768 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 143769 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 143770 | .{ ._, .vp_b, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 143771 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 143772 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143773 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143774 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143775 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143776 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143777 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 143778 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143779 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 143780 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143781 | } }, |
| 143782 | }, .{ |
| 143783 | .required_features = .{ .avx2, null, null, null }, |
| 143784 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143785 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 143786 | .patterns = &.{ |
| 143787 | .{ .src = .{ .to_mem, .none, .none } }, |
| 143788 | }, |
| 143789 | .extra_temps = .{ |
| 143790 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 143791 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 143792 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143793 | .unused, |
| 143794 | .unused, |
| 143795 | .unused, |
| 143796 | .unused, |
| 143797 | .unused, |
| 143798 | .unused, |
| 143799 | .unused, |
| 143800 | .unused, |
| 143801 | }, |
| 143802 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 143803 | .clobbers = .{ .eflags = true }, |
| 143804 | .each = .{ .once = &.{ |
| 143805 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 143806 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 143807 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 143808 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 143809 | .{ .@"0:", .vp_b, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 143810 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 143811 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 143812 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 143813 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143814 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143815 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143816 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143817 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143818 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 143819 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143820 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 143821 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143822 | } }, |
| 143823 | }, .{ |
| 143824 | .required_features = .{ .avx, null, null, null }, |
| 143825 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143826 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 143827 | .patterns = &.{ |
| 143828 | .{ .src = .{ .to_mem, .none, .none } }, |
| 143829 | }, |
| 143830 | .extra_temps = .{ |
| 143831 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 143832 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 143833 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143834 | .unused, |
| 143835 | .unused, |
| 143836 | .unused, |
| 143837 | .unused, |
| 143838 | .unused, |
| 143839 | .unused, |
| 143840 | .unused, |
| 143841 | .unused, |
| 143842 | }, |
| 143843 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 143844 | .clobbers = .{ .eflags = true }, |
| 143845 | .each = .{ .once = &.{ |
| 143846 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 143847 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 143848 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 143849 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 143850 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 143851 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143852 | .{ .@"0:", .vp_b, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 143853 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 143854 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 143855 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143856 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143857 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143858 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143859 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 143860 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143861 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 143862 | .{ ._, .vp_b, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 143863 | } }, |
| 143864 | }, .{ |
| 143865 | .required_features = .{ .sse2, null, null, null }, |
| 143866 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143867 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 143868 | .patterns = &.{ |
| 143869 | .{ .src = .{ .to_mem, .none, .none } }, |
| 143870 | }, |
| 143871 | .extra_temps = .{ |
| 143872 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 143873 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 143874 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 143875 | .unused, |
| 143876 | .unused, |
| 143877 | .unused, |
| 143878 | .unused, |
| 143879 | .unused, |
| 143880 | .unused, |
| 143881 | .unused, |
| 143882 | .unused, |
| 143883 | }, |
| 143884 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 143885 | .clobbers = .{ .eflags = true }, |
| 143886 | .each = .{ .once = &.{ |
| 143887 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 143888 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 143889 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 143890 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 143891 | .{ .@"0:", .p_b, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 143892 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 143893 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 143894 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143895 | .{ ._, .p_b, .add, .dst0x, .tmp2x, ._, ._ }, |
| 143896 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 143897 | .{ ._, .p_b, .add, .dst0x, .tmp2x, ._, ._ }, |
| 143898 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 143899 | .{ ._, .p_b, .add, .dst0x, .tmp2x, ._, ._ }, |
| 143900 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 143901 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 143902 | .{ ._, .p_b, .add, .dst0x, .tmp2x, ._, ._ }, |
| 143903 | } }, |
| 143904 | }, .{ |
| 143905 | .required_features = .{ .slow_incdec, null, null, null }, |
| 143906 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143907 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 143908 | .patterns = &.{ |
| 143909 | .{ .src = .{ .to_mem, .none, .none } }, |
| 143910 | }, |
| 143911 | .extra_temps = .{ |
| 143912 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 143913 | .unused, |
| 143914 | .unused, |
| 143915 | .unused, |
| 143916 | .unused, |
| 143917 | .unused, |
| 143918 | .unused, |
| 143919 | .unused, |
| 143920 | .unused, |
| 143921 | .unused, |
| 143922 | .unused, |
| 143923 | }, |
| 143924 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 143925 | .clobbers = .{ .eflags = true }, |
| 143926 | .each = .{ .once = &.{ |
| 143927 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 143928 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 143929 | .{ .@"0:", ._, .add, .dst0b, .memi(.src0b, .tmp0), ._, ._ }, |
| 143930 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| 143931 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 143932 | } }, |
| 143933 | }, .{ |
| 143934 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 143935 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 143936 | .patterns = &.{ |
| 143937 | .{ .src = .{ .to_mem, .none, .none } }, |
| 143938 | }, |
| 143939 | .extra_temps = .{ |
| 143940 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 143941 | .unused, |
| 143942 | .unused, |
| 143943 | .unused, |
| 143944 | .unused, |
| 143945 | .unused, |
| 143946 | .unused, |
| 143947 | .unused, |
| 143948 | .unused, |
| 143949 | .unused, |
| 143950 | .unused, |
| 143951 | }, |
| 143952 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 143953 | .clobbers = .{ .eflags = true }, |
| 143954 | .each = .{ .once = &.{ |
| 143955 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 143956 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 143957 | .{ .@"0:", ._, .add, .dst0b, .memi(.src0b, .tmp0), ._, ._ }, |
| 143958 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| 143959 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| 143960 | } }, |
| 143961 | }, .{ |
| 143962 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 143963 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 143964 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 143965 | .patterns = &.{ |
| 143966 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143967 | }, |
| 143968 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143969 | .each = .{ .once = &.{ |
| 143970 | .{ ._, .vph_w, .add, .dst0x, .src0x, .src0x, ._ }, |
| 143971 | } }, |
| 143972 | }, .{ |
| 143973 | .required_features = .{ .avx, null, null, null }, |
| 143974 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 143975 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 143976 | .patterns = &.{ |
| 143977 | .{ .src = .{ .to_sse, .none, .none } }, |
| 143978 | }, |
| 143979 | .extra_temps = .{ |
| 143980 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 143981 | .unused, |
| 143982 | .unused, |
| 143983 | .unused, |
| 143984 | .unused, |
| 143985 | .unused, |
| 143986 | .unused, |
| 143987 | .unused, |
| 143988 | .unused, |
| 143989 | .unused, |
| 143990 | .unused, |
| 143991 | }, |
| 143992 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 143993 | .each = .{ .once = &.{ |
| 143994 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 143995 | .{ ._, .vp_w, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 143996 | } }, |
| 143997 | }, .{ |
| 143998 | .required_features = .{ .ssse3, .fast_hops, null, null }, |
| 143999 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144000 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 144001 | .patterns = &.{ |
| 144002 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 144003 | }, |
| 144004 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 144005 | .each = .{ .once = &.{ |
| 144006 | .{ ._, .ph_w, .add, .dst0x, .src0x, ._, ._ }, |
| 144007 | } }, |
| 144008 | }, .{ |
| 144009 | .required_features = .{ .sse2, null, null, null }, |
| 144010 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144011 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 144012 | .patterns = &.{ |
| 144013 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 144014 | }, |
| 144015 | .extra_temps = .{ |
| 144016 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144017 | .unused, |
| 144018 | .unused, |
| 144019 | .unused, |
| 144020 | .unused, |
| 144021 | .unused, |
| 144022 | .unused, |
| 144023 | .unused, |
| 144024 | .unused, |
| 144025 | .unused, |
| 144026 | .unused, |
| 144027 | }, |
| 144028 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 144029 | .each = .{ .once = &.{ |
| 144030 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 144031 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 144032 | } }, |
| 144033 | }, .{ |
| 144034 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 144035 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144036 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 144037 | .patterns = &.{ |
| 144038 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144039 | }, |
| 144040 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144041 | .each = .{ .once = &.{ |
| 144042 | .{ ._, .vph_w, .add, .dst0x, .src0x, .src0x, ._ }, |
| 144043 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144044 | } }, |
| 144045 | }, .{ |
| 144046 | .required_features = .{ .avx, null, null, null }, |
| 144047 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144048 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 144049 | .patterns = &.{ |
| 144050 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144051 | }, |
| 144052 | .extra_temps = .{ |
| 144053 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144054 | .unused, |
| 144055 | .unused, |
| 144056 | .unused, |
| 144057 | .unused, |
| 144058 | .unused, |
| 144059 | .unused, |
| 144060 | .unused, |
| 144061 | .unused, |
| 144062 | .unused, |
| 144063 | .unused, |
| 144064 | }, |
| 144065 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144066 | .each = .{ .once = &.{ |
| 144067 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 144068 | .{ ._, .vp_w, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 144069 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 144070 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144071 | } }, |
| 144072 | }, .{ |
| 144073 | .required_features = .{ .ssse3, .fast_hops, null, null }, |
| 144074 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144075 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 144076 | .patterns = &.{ |
| 144077 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 144078 | }, |
| 144079 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 144080 | .each = .{ .once = &.{ |
| 144081 | .{ ._, .ph_w, .add, .dst0x, .src0x, ._, ._ }, |
| 144082 | .{ ._, .ph_w, .add, .dst0x, .dst0x, ._, ._ }, |
| 144083 | } }, |
| 144084 | }, .{ |
| 144085 | .required_features = .{ .sse2, null, null, null }, |
| 144086 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144087 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 144088 | .patterns = &.{ |
| 144089 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 144090 | }, |
| 144091 | .extra_temps = .{ |
| 144092 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144093 | .unused, |
| 144094 | .unused, |
| 144095 | .unused, |
| 144096 | .unused, |
| 144097 | .unused, |
| 144098 | .unused, |
| 144099 | .unused, |
| 144100 | .unused, |
| 144101 | .unused, |
| 144102 | .unused, |
| 144103 | }, |
| 144104 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 144105 | .each = .{ .once = &.{ |
| 144106 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 144107 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 144108 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 144109 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 144110 | } }, |
| 144111 | }, .{ |
| 144112 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 144113 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144114 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 144115 | .patterns = &.{ |
| 144116 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144117 | }, |
| 144118 | .extra_temps = .{ |
| 144119 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144120 | .unused, |
| 144121 | .unused, |
| 144122 | .unused, |
| 144123 | .unused, |
| 144124 | .unused, |
| 144125 | .unused, |
| 144126 | .unused, |
| 144127 | .unused, |
| 144128 | .unused, |
| 144129 | .unused, |
| 144130 | }, |
| 144131 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144132 | .each = .{ .once = &.{ |
| 144133 | .{ ._, .vph_w, .add, .tmp0x, .src0x, .src0x, ._ }, |
| 144134 | .{ ._, .vp_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 144135 | .{ ._, .vp_w, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 144136 | } }, |
| 144137 | }, .{ |
| 144138 | .required_features = .{ .avx, null, null, null }, |
| 144139 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144140 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 144141 | .patterns = &.{ |
| 144142 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144143 | }, |
| 144144 | .extra_temps = .{ |
| 144145 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144146 | .unused, |
| 144147 | .unused, |
| 144148 | .unused, |
| 144149 | .unused, |
| 144150 | .unused, |
| 144151 | .unused, |
| 144152 | .unused, |
| 144153 | .unused, |
| 144154 | .unused, |
| 144155 | .unused, |
| 144156 | }, |
| 144157 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144158 | .each = .{ .once = &.{ |
| 144159 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 144160 | .{ ._, .vp_w, .add, .tmp0x, .src0x, .tmp0x, ._ }, |
| 144161 | .{ ._, .vp_w, .shufl, .dst0x, .src0x, .ui(0b01), ._ }, |
| 144162 | .{ ._, .vp_w, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 144163 | } }, |
| 144164 | }, .{ |
| 144165 | .required_features = .{ .ssse3, .fast_hops, null, null }, |
| 144166 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144167 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 144168 | .patterns = &.{ |
| 144169 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 144170 | }, |
| 144171 | .extra_temps = .{ |
| 144172 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144173 | .unused, |
| 144174 | .unused, |
| 144175 | .unused, |
| 144176 | .unused, |
| 144177 | .unused, |
| 144178 | .unused, |
| 144179 | .unused, |
| 144180 | .unused, |
| 144181 | .unused, |
| 144182 | .unused, |
| 144183 | }, |
| 144184 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 144185 | .each = .{ .once = &.{ |
| 144186 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 144187 | .{ ._, .ph_w, .add, .dst0x, .src0x, ._, ._ }, |
| 144188 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 144189 | } }, |
| 144190 | }, .{ |
| 144191 | .required_features = .{ .sse2, null, null, null }, |
| 144192 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144193 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 144194 | .patterns = &.{ |
| 144195 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 144196 | }, |
| 144197 | .extra_temps = .{ |
| 144198 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144199 | .unused, |
| 144200 | .unused, |
| 144201 | .unused, |
| 144202 | .unused, |
| 144203 | .unused, |
| 144204 | .unused, |
| 144205 | .unused, |
| 144206 | .unused, |
| 144207 | .unused, |
| 144208 | .unused, |
| 144209 | }, |
| 144210 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144211 | .each = .{ .once = &.{ |
| 144212 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 144213 | .{ ._, .p_w, .add, .tmp0x, .src0x, ._, ._ }, |
| 144214 | .{ ._, .p_w, .shufl, .dst0x, .src0x, .ui(0b01), ._ }, |
| 144215 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 144216 | } }, |
| 144217 | }, .{ |
| 144218 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 144219 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144220 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 144221 | .patterns = &.{ |
| 144222 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144223 | }, |
| 144224 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144225 | .each = .{ .once = &.{ |
| 144226 | .{ ._, .vph_w, .add, .dst0x, .src0x, .src0x, ._ }, |
| 144227 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144228 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144229 | } }, |
| 144230 | }, .{ |
| 144231 | .required_features = .{ .avx, null, null, null }, |
| 144232 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144233 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 144234 | .patterns = &.{ |
| 144235 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144236 | }, |
| 144237 | .extra_temps = .{ |
| 144238 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144239 | .unused, |
| 144240 | .unused, |
| 144241 | .unused, |
| 144242 | .unused, |
| 144243 | .unused, |
| 144244 | .unused, |
| 144245 | .unused, |
| 144246 | .unused, |
| 144247 | .unused, |
| 144248 | .unused, |
| 144249 | }, |
| 144250 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144251 | .each = .{ .once = &.{ |
| 144252 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 144253 | .{ ._, .vp_w, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 144254 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 144255 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144256 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 144257 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144258 | } }, |
| 144259 | }, .{ |
| 144260 | .required_features = .{ .ssse3, .fast_hops, null, null }, |
| 144261 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144262 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 144263 | .patterns = &.{ |
| 144264 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 144265 | }, |
| 144266 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 144267 | .each = .{ .once = &.{ |
| 144268 | .{ ._, .ph_w, .add, .dst0x, .src0x, ._, ._ }, |
| 144269 | .{ ._, .ph_w, .add, .dst0x, .dst0x, ._, ._ }, |
| 144270 | .{ ._, .ph_w, .add, .dst0x, .dst0x, ._, ._ }, |
| 144271 | } }, |
| 144272 | }, .{ |
| 144273 | .required_features = .{ .sse2, null, null, null }, |
| 144274 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144275 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 144276 | .patterns = &.{ |
| 144277 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 144278 | }, |
| 144279 | .extra_temps = .{ |
| 144280 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144281 | .unused, |
| 144282 | .unused, |
| 144283 | .unused, |
| 144284 | .unused, |
| 144285 | .unused, |
| 144286 | .unused, |
| 144287 | .unused, |
| 144288 | .unused, |
| 144289 | .unused, |
| 144290 | .unused, |
| 144291 | }, |
| 144292 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 144293 | .each = .{ .once = &.{ |
| 144294 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 144295 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 144296 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 144297 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 144298 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 144299 | .{ ._, .p_w, .add, .dst0x, .tmp0x, ._, ._ }, |
| 144300 | } }, |
| 144301 | }, .{ |
| 144302 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 144303 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144304 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 144305 | .patterns = &.{ |
| 144306 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144307 | }, |
| 144308 | .extra_temps = .{ |
| 144309 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 144310 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 144311 | .unused, |
| 144312 | .unused, |
| 144313 | .unused, |
| 144314 | .unused, |
| 144315 | .unused, |
| 144316 | .unused, |
| 144317 | .unused, |
| 144318 | .unused, |
| 144319 | .unused, |
| 144320 | }, |
| 144321 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144322 | .each = .{ .once = &.{ |
| 144323 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 144324 | .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 144325 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144326 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144327 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144328 | } }, |
| 144329 | }, .{ |
| 144330 | .required_features = .{ .avx, null, null, null }, |
| 144331 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144332 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 144333 | .patterns = &.{ |
| 144334 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144335 | }, |
| 144336 | .extra_temps = .{ |
| 144337 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 144338 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 144339 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144340 | .unused, |
| 144341 | .unused, |
| 144342 | .unused, |
| 144343 | .unused, |
| 144344 | .unused, |
| 144345 | .unused, |
| 144346 | .unused, |
| 144347 | .unused, |
| 144348 | }, |
| 144349 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144350 | .each = .{ .once = &.{ |
| 144351 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 144352 | .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 144353 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 144354 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144355 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 144356 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144357 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 144358 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144359 | } }, |
| 144360 | }, .{ |
| 144361 | .required_features = .{ .ssse3, .fast_hops, null, null }, |
| 144362 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144363 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 144364 | .patterns = &.{ |
| 144365 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 144366 | }, |
| 144367 | .extra_temps = .{ |
| 144368 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 144369 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 144370 | .unused, |
| 144371 | .unused, |
| 144372 | .unused, |
| 144373 | .unused, |
| 144374 | .unused, |
| 144375 | .unused, |
| 144376 | .unused, |
| 144377 | .unused, |
| 144378 | .unused, |
| 144379 | }, |
| 144380 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 144381 | .each = .{ .once = &.{ |
| 144382 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 144383 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 144384 | .{ ._, .ph_w, .add, .dst0x, .dst0x, ._, ._ }, |
| 144385 | .{ ._, .ph_w, .add, .dst0x, .dst0x, ._, ._ }, |
| 144386 | .{ ._, .ph_w, .add, .dst0x, .dst0x, ._, ._ }, |
| 144387 | } }, |
| 144388 | }, .{ |
| 144389 | .required_features = .{ .sse2, null, null, null }, |
| 144390 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144391 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 144392 | .patterns = &.{ |
| 144393 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 144394 | }, |
| 144395 | .extra_temps = .{ |
| 144396 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 144397 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 144398 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144399 | .unused, |
| 144400 | .unused, |
| 144401 | .unused, |
| 144402 | .unused, |
| 144403 | .unused, |
| 144404 | .unused, |
| 144405 | .unused, |
| 144406 | .unused, |
| 144407 | }, |
| 144408 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 144409 | .each = .{ .once = &.{ |
| 144410 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 144411 | .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 144412 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 144413 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 144414 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 144415 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 144416 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 144417 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 144418 | } }, |
| 144419 | }, .{ |
| 144420 | .required_features = .{ .avx2, .fast_hops, null, null }, |
| 144421 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144422 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 144423 | .patterns = &.{ |
| 144424 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144425 | }, |
| 144426 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 144427 | .each = .{ .once = &.{ |
| 144428 | .{ ._, .v_i128, .extract, .dst0x, .src0y, .ui(1), ._ }, |
| 144429 | .{ ._, .vp_w, .add, .dst0x, .src0x, .dst0x, ._ }, |
| 144430 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144431 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144432 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144433 | } }, |
| 144434 | }, .{ |
| 144435 | .required_features = .{ .avx2, null, null, null }, |
| 144436 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144437 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 144438 | .patterns = &.{ |
| 144439 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144440 | }, |
| 144441 | .extra_temps = .{ |
| 144442 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144443 | .unused, |
| 144444 | .unused, |
| 144445 | .unused, |
| 144446 | .unused, |
| 144447 | .unused, |
| 144448 | .unused, |
| 144449 | .unused, |
| 144450 | .unused, |
| 144451 | .unused, |
| 144452 | .unused, |
| 144453 | }, |
| 144454 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144455 | .each = .{ .once = &.{ |
| 144456 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 144457 | .{ ._, .vp_w, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 144458 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 144459 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144460 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 144461 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144462 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 144463 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144464 | } }, |
| 144465 | }, .{ |
| 144466 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 144467 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144468 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 144469 | .patterns = &.{ |
| 144470 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144471 | }, |
| 144472 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 144473 | .each = .{ .once = &.{ |
| 144474 | .{ ._, .v_f128, .extract, .dst0x, .src0y, .ui(1), ._ }, |
| 144475 | .{ ._, .vp_w, .add, .dst0x, .src0x, .dst0x, ._ }, |
| 144476 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144477 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144478 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144479 | } }, |
| 144480 | }, .{ |
| 144481 | .required_features = .{ .avx, null, null, null }, |
| 144482 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144483 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 144484 | .patterns = &.{ |
| 144485 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144486 | }, |
| 144487 | .extra_temps = .{ |
| 144488 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144489 | .unused, |
| 144490 | .unused, |
| 144491 | .unused, |
| 144492 | .unused, |
| 144493 | .unused, |
| 144494 | .unused, |
| 144495 | .unused, |
| 144496 | .unused, |
| 144497 | .unused, |
| 144498 | .unused, |
| 144499 | }, |
| 144500 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144501 | .each = .{ .once = &.{ |
| 144502 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 144503 | .{ ._, .vp_w, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 144504 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 144505 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144506 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 144507 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144508 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 144509 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144510 | } }, |
| 144511 | }, .{ |
| 144512 | .required_features = .{ .avx2, .fast_hops, null, null }, |
| 144513 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144514 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 144515 | .patterns = &.{ |
| 144516 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144517 | }, |
| 144518 | .extra_temps = .{ |
| 144519 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 144520 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 144521 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144522 | .unused, |
| 144523 | .unused, |
| 144524 | .unused, |
| 144525 | .unused, |
| 144526 | .unused, |
| 144527 | .unused, |
| 144528 | .unused, |
| 144529 | .unused, |
| 144530 | }, |
| 144531 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144532 | .each = .{ .once = &.{ |
| 144533 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 144534 | .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 144535 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 144536 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144537 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144538 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144539 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144540 | } }, |
| 144541 | }, .{ |
| 144542 | .required_features = .{ .avx2, null, null, null }, |
| 144543 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144544 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 144545 | .patterns = &.{ |
| 144546 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144547 | }, |
| 144548 | .extra_temps = .{ |
| 144549 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 144550 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 144551 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144552 | .unused, |
| 144553 | .unused, |
| 144554 | .unused, |
| 144555 | .unused, |
| 144556 | .unused, |
| 144557 | .unused, |
| 144558 | .unused, |
| 144559 | .unused, |
| 144560 | }, |
| 144561 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144562 | .each = .{ .once = &.{ |
| 144563 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 144564 | .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 144565 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 144566 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144567 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 144568 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144569 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 144570 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144571 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 144572 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144573 | } }, |
| 144574 | }, .{ |
| 144575 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 144576 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144577 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 144578 | .patterns = &.{ |
| 144579 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144580 | }, |
| 144581 | .extra_temps = .{ |
| 144582 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 144583 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 144584 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144585 | .unused, |
| 144586 | .unused, |
| 144587 | .unused, |
| 144588 | .unused, |
| 144589 | .unused, |
| 144590 | .unused, |
| 144591 | .unused, |
| 144592 | .unused, |
| 144593 | }, |
| 144594 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144595 | .each = .{ .once = &.{ |
| 144596 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 144597 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 144598 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 144599 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144600 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144601 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144602 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144603 | } }, |
| 144604 | }, .{ |
| 144605 | .required_features = .{ .avx, null, null, null }, |
| 144606 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144607 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 144608 | .patterns = &.{ |
| 144609 | .{ .src = .{ .to_sse, .none, .none } }, |
| 144610 | }, |
| 144611 | .extra_temps = .{ |
| 144612 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 144613 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 144614 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144615 | .unused, |
| 144616 | .unused, |
| 144617 | .unused, |
| 144618 | .unused, |
| 144619 | .unused, |
| 144620 | .unused, |
| 144621 | .unused, |
| 144622 | .unused, |
| 144623 | }, |
| 144624 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 144625 | .each = .{ .once = &.{ |
| 144626 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 144627 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 144628 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 144629 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144630 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 144631 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144632 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 144633 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144634 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 144635 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144636 | } }, |
| 144637 | }, .{ |
| 144638 | .required_features = .{ .avx512f, null, null, null }, |
| 144639 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144640 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 144641 | .patterns = &.{ |
| 144642 | .{ .src = .{ .to_mem, .none, .none } }, |
| 144643 | }, |
| 144644 | .extra_temps = .{ |
| 144645 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144646 | .unused, |
| 144647 | .unused, |
| 144648 | .unused, |
| 144649 | .unused, |
| 144650 | .unused, |
| 144651 | .unused, |
| 144652 | .unused, |
| 144653 | .unused, |
| 144654 | .unused, |
| 144655 | .unused, |
| 144656 | }, |
| 144657 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 144658 | .each = .{ .once = &.{ |
| 144659 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 144660 | .{ ._, .vp_w, .add, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 144661 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 144662 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144663 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 144664 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144665 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 144666 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144667 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 144668 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 144669 | } }, |
| 144670 | }, .{ |
| 144671 | .required_features = .{ .avx512f, null, null, null }, |
| 144672 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144673 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 144674 | .patterns = &.{ |
| 144675 | .{ .src = .{ .to_mem, .none, .none } }, |
| 144676 | }, |
| 144677 | .extra_temps = .{ |
| 144678 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 144679 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 144680 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 144681 | .unused, |
| 144682 | .unused, |
| 144683 | .unused, |
| 144684 | .unused, |
| 144685 | .unused, |
| 144686 | .unused, |
| 144687 | .unused, |
| 144688 | .unused, |
| 144689 | }, |
| 144690 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 144691 | .each = .{ .once = &.{ |
| 144692 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 144693 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 144694 | .{ ._, .v_dqa, .mov, .tmp2y, .memd(.src0y, 32), ._, ._ }, |
| 144695 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 144696 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .lead(.tmp0y, 32), ._ }, |
| 144697 | .{ ._, .vp_w, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 144698 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 144699 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144700 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 144701 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144702 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 144703 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144704 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 144705 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144706 | } }, |
| 144707 | }, .{ |
| 144708 | .required_features = .{ .avx2, .fast_hops, null, null }, |
| 144709 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144710 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 144711 | .patterns = &.{ |
| 144712 | .{ .src = .{ .to_mem, .none, .none } }, |
| 144713 | }, |
| 144714 | .extra_temps = .{ |
| 144715 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 144716 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144717 | .unused, |
| 144718 | .unused, |
| 144719 | .unused, |
| 144720 | .unused, |
| 144721 | .unused, |
| 144722 | .unused, |
| 144723 | .unused, |
| 144724 | .unused, |
| 144725 | .unused, |
| 144726 | }, |
| 144727 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 144728 | .clobbers = .{ .eflags = true }, |
| 144729 | .each = .{ .once = &.{ |
| 144730 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 144731 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 144732 | .{ .@"0:", .vp_w, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 144733 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 144734 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 144735 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 144736 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 144737 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144738 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144739 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144740 | } }, |
| 144741 | }, .{ |
| 144742 | .required_features = .{ .avx2, null, null, null }, |
| 144743 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144744 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 144745 | .patterns = &.{ |
| 144746 | .{ .src = .{ .to_mem, .none, .none } }, |
| 144747 | }, |
| 144748 | .extra_temps = .{ |
| 144749 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 144750 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144751 | .unused, |
| 144752 | .unused, |
| 144753 | .unused, |
| 144754 | .unused, |
| 144755 | .unused, |
| 144756 | .unused, |
| 144757 | .unused, |
| 144758 | .unused, |
| 144759 | .unused, |
| 144760 | }, |
| 144761 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 144762 | .clobbers = .{ .eflags = true }, |
| 144763 | .each = .{ .once = &.{ |
| 144764 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 144765 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 144766 | .{ .@"0:", .vp_w, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 144767 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 144768 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 144769 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 144770 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 144771 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 144772 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 144773 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 144774 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 144775 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 144776 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 144777 | } }, |
| 144778 | }, .{ |
| 144779 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 144780 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144781 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 144782 | .patterns = &.{ |
| 144783 | .{ .src = .{ .to_mem, .none, .none } }, |
| 144784 | }, |
| 144785 | .extra_temps = .{ |
| 144786 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 144787 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144788 | .unused, |
| 144789 | .unused, |
| 144790 | .unused, |
| 144791 | .unused, |
| 144792 | .unused, |
| 144793 | .unused, |
| 144794 | .unused, |
| 144795 | .unused, |
| 144796 | .unused, |
| 144797 | }, |
| 144798 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 144799 | .clobbers = .{ .eflags = true }, |
| 144800 | .each = .{ .once = &.{ |
| 144801 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 144802 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 144803 | .{ .@"0:", .vp_w, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 144804 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 144805 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 144806 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 144807 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144808 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144809 | } }, |
| 144810 | }, .{ |
| 144811 | .required_features = .{ .avx, null, null, null }, |
| 144812 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144813 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 144814 | .patterns = &.{ |
| 144815 | .{ .src = .{ .to_mem, .none, .none } }, |
| 144816 | }, |
| 144817 | .extra_temps = .{ |
| 144818 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 144819 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144820 | .unused, |
| 144821 | .unused, |
| 144822 | .unused, |
| 144823 | .unused, |
| 144824 | .unused, |
| 144825 | .unused, |
| 144826 | .unused, |
| 144827 | .unused, |
| 144828 | .unused, |
| 144829 | }, |
| 144830 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 144831 | .clobbers = .{ .eflags = true }, |
| 144832 | .each = .{ .once = &.{ |
| 144833 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 144834 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 144835 | .{ .@"0:", .vp_w, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 144836 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 144837 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 144838 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 144839 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 144840 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 144841 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 144842 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 144843 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 144844 | } }, |
| 144845 | }, .{ |
| 144846 | .required_features = .{ .ssse3, .fast_hops, null, null }, |
| 144847 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144848 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 144849 | .patterns = &.{ |
| 144850 | .{ .src = .{ .to_mem, .none, .none } }, |
| 144851 | }, |
| 144852 | .extra_temps = .{ |
| 144853 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 144854 | .unused, |
| 144855 | .unused, |
| 144856 | .unused, |
| 144857 | .unused, |
| 144858 | .unused, |
| 144859 | .unused, |
| 144860 | .unused, |
| 144861 | .unused, |
| 144862 | .unused, |
| 144863 | .unused, |
| 144864 | }, |
| 144865 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 144866 | .clobbers = .{ .eflags = true }, |
| 144867 | .each = .{ .once = &.{ |
| 144868 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 144869 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 144870 | .{ .@"0:", .p_w, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 144871 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 144872 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 144873 | .{ ._, .ph_w, .add, .dst0x, .dst0x, ._, ._ }, |
| 144874 | .{ ._, .ph_w, .add, .dst0x, .dst0x, ._, ._ }, |
| 144875 | .{ ._, .ph_w, .add, .dst0x, .dst0x, ._, ._ }, |
| 144876 | } }, |
| 144877 | }, .{ |
| 144878 | .required_features = .{ .sse2, null, null, null }, |
| 144879 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144880 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 144881 | .patterns = &.{ |
| 144882 | .{ .src = .{ .to_mem, .none, .none } }, |
| 144883 | }, |
| 144884 | .extra_temps = .{ |
| 144885 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 144886 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144887 | .unused, |
| 144888 | .unused, |
| 144889 | .unused, |
| 144890 | .unused, |
| 144891 | .unused, |
| 144892 | .unused, |
| 144893 | .unused, |
| 144894 | .unused, |
| 144895 | .unused, |
| 144896 | }, |
| 144897 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 144898 | .clobbers = .{ .eflags = true }, |
| 144899 | .each = .{ .once = &.{ |
| 144900 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 144901 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 144902 | .{ .@"0:", .p_w, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 144903 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 144904 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 144905 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 144906 | .{ ._, .p_w, .add, .dst0x, .tmp1x, ._, ._ }, |
| 144907 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 144908 | .{ ._, .p_w, .add, .dst0x, .tmp1x, ._, ._ }, |
| 144909 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 144910 | .{ ._, .p_w, .add, .dst0x, .tmp1x, ._, ._ }, |
| 144911 | } }, |
| 144912 | }, .{ |
| 144913 | .required_features = .{ .avx512f, null, null, null }, |
| 144914 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144915 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 144916 | .patterns = &.{ |
| 144917 | .{ .src = .{ .to_mem, .none, .none } }, |
| 144918 | }, |
| 144919 | .extra_temps = .{ |
| 144920 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 144921 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 144922 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 144923 | .unused, |
| 144924 | .unused, |
| 144925 | .unused, |
| 144926 | .unused, |
| 144927 | .unused, |
| 144928 | .unused, |
| 144929 | .unused, |
| 144930 | .unused, |
| 144931 | }, |
| 144932 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 144933 | .clobbers = .{ .eflags = true }, |
| 144934 | .each = .{ .once = &.{ |
| 144935 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 144936 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 144937 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 144938 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 144939 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 144940 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 144941 | .{ .@"0:", .vp_w, .add, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 144942 | .{ ._, .vp_w, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 144943 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 144944 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 144945 | .{ ._, .vp_w, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 144946 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 144947 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144948 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 144949 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144950 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 144951 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144952 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 144953 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144954 | } }, |
| 144955 | }, .{ |
| 144956 | .required_features = .{ .avx2, .fast_hops, null, null }, |
| 144957 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144958 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 144959 | .patterns = &.{ |
| 144960 | .{ .src = .{ .to_mem, .none, .none } }, |
| 144961 | }, |
| 144962 | .extra_temps = .{ |
| 144963 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 144964 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 144965 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 144966 | .unused, |
| 144967 | .unused, |
| 144968 | .unused, |
| 144969 | .unused, |
| 144970 | .unused, |
| 144971 | .unused, |
| 144972 | .unused, |
| 144973 | .unused, |
| 144974 | }, |
| 144975 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 144976 | .clobbers = .{ .eflags = true }, |
| 144977 | .each = .{ .once = &.{ |
| 144978 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 144979 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 144980 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 144981 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 144982 | .{ .@"0:", .vp_w, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 144983 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 144984 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 144985 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 144986 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 144987 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144988 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144989 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 144990 | } }, |
| 144991 | }, .{ |
| 144992 | .required_features = .{ .avx2, null, null, null }, |
| 144993 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 144994 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 144995 | .patterns = &.{ |
| 144996 | .{ .src = .{ .to_mem, .none, .none } }, |
| 144997 | }, |
| 144998 | .extra_temps = .{ |
| 144999 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145000 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 145001 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 145002 | .unused, |
| 145003 | .unused, |
| 145004 | .unused, |
| 145005 | .unused, |
| 145006 | .unused, |
| 145007 | .unused, |
| 145008 | .unused, |
| 145009 | .unused, |
| 145010 | }, |
| 145011 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145012 | .clobbers = .{ .eflags = true }, |
| 145013 | .each = .{ .once = &.{ |
| 145014 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 145015 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 145016 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 145017 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 145018 | .{ .@"0:", .vp_w, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 145019 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 145020 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145021 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 145022 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145023 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145024 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145025 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145026 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145027 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 145028 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145029 | } }, |
| 145030 | }, .{ |
| 145031 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 145032 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 145033 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 145034 | .patterns = &.{ |
| 145035 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145036 | }, |
| 145037 | .extra_temps = .{ |
| 145038 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145039 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 145040 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 145041 | .unused, |
| 145042 | .unused, |
| 145043 | .unused, |
| 145044 | .unused, |
| 145045 | .unused, |
| 145046 | .unused, |
| 145047 | .unused, |
| 145048 | .unused, |
| 145049 | }, |
| 145050 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145051 | .clobbers = .{ .eflags = true }, |
| 145052 | .each = .{ .once = &.{ |
| 145053 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 145054 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 145055 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 145056 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 145057 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 145058 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145059 | .{ .@"0:", .vp_w, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 145060 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 145061 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145062 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145063 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145064 | .{ ._, .vph_w, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145065 | } }, |
| 145066 | }, .{ |
| 145067 | .required_features = .{ .avx, null, null, null }, |
| 145068 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 145069 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 145070 | .patterns = &.{ |
| 145071 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145072 | }, |
| 145073 | .extra_temps = .{ |
| 145074 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145075 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 145076 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 145077 | .unused, |
| 145078 | .unused, |
| 145079 | .unused, |
| 145080 | .unused, |
| 145081 | .unused, |
| 145082 | .unused, |
| 145083 | .unused, |
| 145084 | .unused, |
| 145085 | }, |
| 145086 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145087 | .clobbers = .{ .eflags = true }, |
| 145088 | .each = .{ .once = &.{ |
| 145089 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 145090 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 145091 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 145092 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 145093 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 145094 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145095 | .{ .@"0:", .vp_w, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 145096 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 145097 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145098 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145099 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145100 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145101 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145102 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 145103 | .{ ._, .vp_w, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145104 | } }, |
| 145105 | }, .{ |
| 145106 | .required_features = .{ .ssse3, .fast_hops, null, null }, |
| 145107 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 145108 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 145109 | .patterns = &.{ |
| 145110 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145111 | }, |
| 145112 | .extra_temps = .{ |
| 145113 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145114 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 145115 | .unused, |
| 145116 | .unused, |
| 145117 | .unused, |
| 145118 | .unused, |
| 145119 | .unused, |
| 145120 | .unused, |
| 145121 | .unused, |
| 145122 | .unused, |
| 145123 | .unused, |
| 145124 | }, |
| 145125 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145126 | .clobbers = .{ .eflags = true }, |
| 145127 | .each = .{ .once = &.{ |
| 145128 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 145129 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 145130 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 145131 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 145132 | .{ .@"0:", .p_w, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 145133 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 145134 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145135 | .{ ._, .ph_w, .add, .dst0x, .dst0x, ._, ._ }, |
| 145136 | .{ ._, .ph_w, .add, .dst0x, .dst0x, ._, ._ }, |
| 145137 | .{ ._, .ph_w, .add, .dst0x, .dst0x, ._, ._ }, |
| 145138 | } }, |
| 145139 | }, .{ |
| 145140 | .required_features = .{ .sse2, null, null, null }, |
| 145141 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 145142 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 145143 | .patterns = &.{ |
| 145144 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145145 | }, |
| 145146 | .extra_temps = .{ |
| 145147 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145148 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 145149 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 145150 | .unused, |
| 145151 | .unused, |
| 145152 | .unused, |
| 145153 | .unused, |
| 145154 | .unused, |
| 145155 | .unused, |
| 145156 | .unused, |
| 145157 | .unused, |
| 145158 | }, |
| 145159 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145160 | .clobbers = .{ .eflags = true }, |
| 145161 | .each = .{ .once = &.{ |
| 145162 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 145163 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 145164 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 145165 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 145166 | .{ .@"0:", .p_w, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 145167 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 145168 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145169 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145170 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 145171 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145172 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 145173 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 145174 | .{ ._, .p_w, .add, .dst0x, .tmp2x, ._, ._ }, |
| 145175 | } }, |
| 145176 | }, .{ |
| 145177 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 145178 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any }, |
| 145179 | .patterns = &.{ |
| 145180 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145181 | }, |
| 145182 | .extra_temps = .{ |
| 145183 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145184 | .unused, |
| 145185 | .unused, |
| 145186 | .unused, |
| 145187 | .unused, |
| 145188 | .unused, |
| 145189 | .unused, |
| 145190 | .unused, |
| 145191 | .unused, |
| 145192 | .unused, |
| 145193 | .unused, |
| 145194 | }, |
| 145195 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 145196 | .clobbers = .{ .eflags = true }, |
| 145197 | .each = .{ .once = &.{ |
| 145198 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 145199 | .{ ._, ._, .movzx, .dst0d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 145200 | .{ .@"0:", ._, .add, .dst0w, .memi(.src0w, .tmp0), ._, ._ }, |
| 145201 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 145202 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145203 | } }, |
| 145204 | }, .{ |
| 145205 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 145206 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145207 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 145208 | .patterns = &.{ |
| 145209 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145210 | }, |
| 145211 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145212 | .each = .{ .once = &.{ |
| 145213 | .{ ._, .vph_d, .add, .dst0x, .src0x, .src0x, ._ }, |
| 145214 | } }, |
| 145215 | }, .{ |
| 145216 | .required_features = .{ .avx, null, null, null }, |
| 145217 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145218 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 145219 | .patterns = &.{ |
| 145220 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145221 | }, |
| 145222 | .extra_temps = .{ |
| 145223 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145224 | .unused, |
| 145225 | .unused, |
| 145226 | .unused, |
| 145227 | .unused, |
| 145228 | .unused, |
| 145229 | .unused, |
| 145230 | .unused, |
| 145231 | .unused, |
| 145232 | .unused, |
| 145233 | .unused, |
| 145234 | }, |
| 145235 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145236 | .each = .{ .once = &.{ |
| 145237 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 145238 | .{ ._, .vp_d, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 145239 | } }, |
| 145240 | }, .{ |
| 145241 | .required_features = .{ .ssse3, .fast_hops, null, null }, |
| 145242 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145243 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 145244 | .patterns = &.{ |
| 145245 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 145246 | }, |
| 145247 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 145248 | .each = .{ .once = &.{ |
| 145249 | .{ ._, .ph_d, .add, .dst0x, .src0x, ._, ._ }, |
| 145250 | } }, |
| 145251 | }, .{ |
| 145252 | .required_features = .{ .sse2, null, null, null }, |
| 145253 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145254 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 145255 | .patterns = &.{ |
| 145256 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 145257 | }, |
| 145258 | .extra_temps = .{ |
| 145259 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145260 | .unused, |
| 145261 | .unused, |
| 145262 | .unused, |
| 145263 | .unused, |
| 145264 | .unused, |
| 145265 | .unused, |
| 145266 | .unused, |
| 145267 | .unused, |
| 145268 | .unused, |
| 145269 | .unused, |
| 145270 | }, |
| 145271 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 145272 | .each = .{ .once = &.{ |
| 145273 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 145274 | .{ ._, .p_d, .add, .dst0x, .tmp0x, ._, ._ }, |
| 145275 | } }, |
| 145276 | }, .{ |
| 145277 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 145278 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145279 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 145280 | .patterns = &.{ |
| 145281 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145282 | }, |
| 145283 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145284 | .each = .{ .once = &.{ |
| 145285 | .{ ._, .vph_d, .add, .dst0x, .src0x, .src0x, ._ }, |
| 145286 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145287 | } }, |
| 145288 | }, .{ |
| 145289 | .required_features = .{ .avx, null, null, null }, |
| 145290 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145291 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 145292 | .patterns = &.{ |
| 145293 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145294 | }, |
| 145295 | .extra_temps = .{ |
| 145296 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145297 | .unused, |
| 145298 | .unused, |
| 145299 | .unused, |
| 145300 | .unused, |
| 145301 | .unused, |
| 145302 | .unused, |
| 145303 | .unused, |
| 145304 | .unused, |
| 145305 | .unused, |
| 145306 | .unused, |
| 145307 | }, |
| 145308 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145309 | .each = .{ .once = &.{ |
| 145310 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 145311 | .{ ._, .vp_d, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 145312 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 145313 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 145314 | } }, |
| 145315 | }, .{ |
| 145316 | .required_features = .{ .ssse3, .fast_hops, null, null }, |
| 145317 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145318 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 145319 | .patterns = &.{ |
| 145320 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 145321 | }, |
| 145322 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 145323 | .each = .{ .once = &.{ |
| 145324 | .{ ._, .ph_d, .add, .dst0x, .src0x, ._, ._ }, |
| 145325 | .{ ._, .ph_d, .add, .dst0x, .dst0x, ._, ._ }, |
| 145326 | } }, |
| 145327 | }, .{ |
| 145328 | .required_features = .{ .sse2, null, null, null }, |
| 145329 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145330 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 145331 | .patterns = &.{ |
| 145332 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 145333 | }, |
| 145334 | .extra_temps = .{ |
| 145335 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145336 | .unused, |
| 145337 | .unused, |
| 145338 | .unused, |
| 145339 | .unused, |
| 145340 | .unused, |
| 145341 | .unused, |
| 145342 | .unused, |
| 145343 | .unused, |
| 145344 | .unused, |
| 145345 | .unused, |
| 145346 | }, |
| 145347 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 145348 | .each = .{ .once = &.{ |
| 145349 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 145350 | .{ ._, .p_d, .add, .dst0x, .tmp0x, ._, ._ }, |
| 145351 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 145352 | .{ ._, .p_d, .add, .dst0x, .tmp0x, ._, ._ }, |
| 145353 | } }, |
| 145354 | }, .{ |
| 145355 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 145356 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145357 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 145358 | .patterns = &.{ |
| 145359 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145360 | }, |
| 145361 | .extra_temps = .{ |
| 145362 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145363 | .unused, |
| 145364 | .unused, |
| 145365 | .unused, |
| 145366 | .unused, |
| 145367 | .unused, |
| 145368 | .unused, |
| 145369 | .unused, |
| 145370 | .unused, |
| 145371 | .unused, |
| 145372 | .unused, |
| 145373 | }, |
| 145374 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145375 | .each = .{ .once = &.{ |
| 145376 | .{ ._, .vph_d, .add, .tmp0x, .src0x, .src0x, ._ }, |
| 145377 | .{ ._, .vp_d, .shuf, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 145378 | .{ ._, .vp_d, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 145379 | } }, |
| 145380 | }, .{ |
| 145381 | .required_features = .{ .avx, null, null, null }, |
| 145382 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145383 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 145384 | .patterns = &.{ |
| 145385 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145386 | }, |
| 145387 | .extra_temps = .{ |
| 145388 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145389 | .unused, |
| 145390 | .unused, |
| 145391 | .unused, |
| 145392 | .unused, |
| 145393 | .unused, |
| 145394 | .unused, |
| 145395 | .unused, |
| 145396 | .unused, |
| 145397 | .unused, |
| 145398 | .unused, |
| 145399 | }, |
| 145400 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145401 | .each = .{ .once = &.{ |
| 145402 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 145403 | .{ ._, .vp_d, .add, .tmp0x, .src0x, .tmp0x, ._ }, |
| 145404 | .{ ._, .vp_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 145405 | .{ ._, .vp_d, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 145406 | } }, |
| 145407 | }, .{ |
| 145408 | .required_features = .{ .ssse3, .fast_hops, null, null }, |
| 145409 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145410 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 145411 | .patterns = &.{ |
| 145412 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 145413 | }, |
| 145414 | .extra_temps = .{ |
| 145415 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145416 | .unused, |
| 145417 | .unused, |
| 145418 | .unused, |
| 145419 | .unused, |
| 145420 | .unused, |
| 145421 | .unused, |
| 145422 | .unused, |
| 145423 | .unused, |
| 145424 | .unused, |
| 145425 | .unused, |
| 145426 | }, |
| 145427 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 145428 | .each = .{ .once = &.{ |
| 145429 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 145430 | .{ ._, .ph_d, .add, .dst0x, .src0x, ._, ._ }, |
| 145431 | .{ ._, .p_d, .add, .dst0x, .tmp0x, ._, ._ }, |
| 145432 | } }, |
| 145433 | }, .{ |
| 145434 | .required_features = .{ .sse2, null, null, null }, |
| 145435 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145436 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 145437 | .patterns = &.{ |
| 145438 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145439 | }, |
| 145440 | .extra_temps = .{ |
| 145441 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145442 | .unused, |
| 145443 | .unused, |
| 145444 | .unused, |
| 145445 | .unused, |
| 145446 | .unused, |
| 145447 | .unused, |
| 145448 | .unused, |
| 145449 | .unused, |
| 145450 | .unused, |
| 145451 | .unused, |
| 145452 | }, |
| 145453 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145454 | .each = .{ .once = &.{ |
| 145455 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 145456 | .{ ._, .p_d, .add, .tmp0x, .src0x, ._, ._ }, |
| 145457 | .{ ._, .p_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 145458 | .{ ._, .p_d, .add, .dst0x, .tmp0x, ._, ._ }, |
| 145459 | } }, |
| 145460 | }, .{ |
| 145461 | .required_features = .{ .avx2, .fast_hops, null, null }, |
| 145462 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145463 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 145464 | .patterns = &.{ |
| 145465 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145466 | }, |
| 145467 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145468 | .each = .{ .once = &.{ |
| 145469 | .{ ._, .v_i128, .extract, .dst0x, .src0y, .ui(1), ._ }, |
| 145470 | .{ ._, .vp_d, .add, .dst0x, .src0x, .dst0x, ._ }, |
| 145471 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145472 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145473 | } }, |
| 145474 | }, .{ |
| 145475 | .required_features = .{ .avx2, null, null, null }, |
| 145476 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145477 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 145478 | .patterns = &.{ |
| 145479 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145480 | }, |
| 145481 | .extra_temps = .{ |
| 145482 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145483 | .unused, |
| 145484 | .unused, |
| 145485 | .unused, |
| 145486 | .unused, |
| 145487 | .unused, |
| 145488 | .unused, |
| 145489 | .unused, |
| 145490 | .unused, |
| 145491 | .unused, |
| 145492 | .unused, |
| 145493 | }, |
| 145494 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145495 | .each = .{ .once = &.{ |
| 145496 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 145497 | .{ ._, .vp_d, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 145498 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 145499 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 145500 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 145501 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 145502 | } }, |
| 145503 | }, .{ |
| 145504 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 145505 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145506 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 145507 | .patterns = &.{ |
| 145508 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145509 | }, |
| 145510 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145511 | .each = .{ .once = &.{ |
| 145512 | .{ ._, .v_f128, .extract, .dst0x, .src0y, .ui(1), ._ }, |
| 145513 | .{ ._, .vp_d, .add, .dst0x, .src0x, .dst0x, ._ }, |
| 145514 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145515 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145516 | } }, |
| 145517 | }, .{ |
| 145518 | .required_features = .{ .avx, null, null, null }, |
| 145519 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145520 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 145521 | .patterns = &.{ |
| 145522 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145523 | }, |
| 145524 | .extra_temps = .{ |
| 145525 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145526 | .unused, |
| 145527 | .unused, |
| 145528 | .unused, |
| 145529 | .unused, |
| 145530 | .unused, |
| 145531 | .unused, |
| 145532 | .unused, |
| 145533 | .unused, |
| 145534 | .unused, |
| 145535 | .unused, |
| 145536 | }, |
| 145537 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145538 | .each = .{ .once = &.{ |
| 145539 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 145540 | .{ ._, .vp_d, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 145541 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 145542 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 145543 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 145544 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 145545 | } }, |
| 145546 | }, .{ |
| 145547 | .required_features = .{ .avx2, .fast_hops, null, null }, |
| 145548 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145549 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 145550 | .patterns = &.{ |
| 145551 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145552 | }, |
| 145553 | .extra_temps = .{ |
| 145554 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 145555 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 145556 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 145557 | .unused, |
| 145558 | .unused, |
| 145559 | .unused, |
| 145560 | .unused, |
| 145561 | .unused, |
| 145562 | .unused, |
| 145563 | .unused, |
| 145564 | .unused, |
| 145565 | }, |
| 145566 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145567 | .each = .{ .once = &.{ |
| 145568 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 145569 | .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 145570 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 145571 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145572 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145573 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145574 | } }, |
| 145575 | }, .{ |
| 145576 | .required_features = .{ .avx2, null, null, null }, |
| 145577 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145578 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 145579 | .patterns = &.{ |
| 145580 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145581 | }, |
| 145582 | .extra_temps = .{ |
| 145583 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 145584 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 145585 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145586 | .unused, |
| 145587 | .unused, |
| 145588 | .unused, |
| 145589 | .unused, |
| 145590 | .unused, |
| 145591 | .unused, |
| 145592 | .unused, |
| 145593 | .unused, |
| 145594 | }, |
| 145595 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145596 | .each = .{ .once = &.{ |
| 145597 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 145598 | .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 145599 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 145600 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145601 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145602 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145603 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145604 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145605 | } }, |
| 145606 | }, .{ |
| 145607 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 145608 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145609 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 145610 | .patterns = &.{ |
| 145611 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145612 | }, |
| 145613 | .extra_temps = .{ |
| 145614 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 145615 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 145616 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145617 | .unused, |
| 145618 | .unused, |
| 145619 | .unused, |
| 145620 | .unused, |
| 145621 | .unused, |
| 145622 | .unused, |
| 145623 | .unused, |
| 145624 | .unused, |
| 145625 | }, |
| 145626 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145627 | .each = .{ .once = &.{ |
| 145628 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 145629 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 145630 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 145631 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145632 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145633 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145634 | } }, |
| 145635 | }, .{ |
| 145636 | .required_features = .{ .avx, null, null, null }, |
| 145637 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145638 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 145639 | .patterns = &.{ |
| 145640 | .{ .src = .{ .to_sse, .none, .none } }, |
| 145641 | }, |
| 145642 | .extra_temps = .{ |
| 145643 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 145644 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 145645 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145646 | .unused, |
| 145647 | .unused, |
| 145648 | .unused, |
| 145649 | .unused, |
| 145650 | .unused, |
| 145651 | .unused, |
| 145652 | .unused, |
| 145653 | .unused, |
| 145654 | }, |
| 145655 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 145656 | .each = .{ .once = &.{ |
| 145657 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 145658 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 145659 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 145660 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145661 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145662 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145663 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145664 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145665 | } }, |
| 145666 | }, .{ |
| 145667 | .required_features = .{ .avx512f, null, null, null }, |
| 145668 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145669 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 145670 | .patterns = &.{ |
| 145671 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145672 | }, |
| 145673 | .extra_temps = .{ |
| 145674 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145675 | .unused, |
| 145676 | .unused, |
| 145677 | .unused, |
| 145678 | .unused, |
| 145679 | .unused, |
| 145680 | .unused, |
| 145681 | .unused, |
| 145682 | .unused, |
| 145683 | .unused, |
| 145684 | .unused, |
| 145685 | }, |
| 145686 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145687 | .clobbers = .{ .eflags = true }, |
| 145688 | .each = .{ .once = &.{ |
| 145689 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 145690 | .{ ._, .vp_d, .add, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 145691 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 145692 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 145693 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 145694 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 145695 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 145696 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 145697 | } }, |
| 145698 | }, .{ |
| 145699 | .required_features = .{ .avx512f, null, null, null }, |
| 145700 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145701 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 145702 | .patterns = &.{ |
| 145703 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145704 | }, |
| 145705 | .extra_temps = .{ |
| 145706 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 145707 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 145708 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 145709 | .unused, |
| 145710 | .unused, |
| 145711 | .unused, |
| 145712 | .unused, |
| 145713 | .unused, |
| 145714 | .unused, |
| 145715 | .unused, |
| 145716 | .unused, |
| 145717 | }, |
| 145718 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145719 | .clobbers = .{ .eflags = true }, |
| 145720 | .each = .{ .once = &.{ |
| 145721 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 145722 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 145723 | .{ ._, .v_dqa, .mov, .tmp2y, .memd(.src0y, 32), ._, ._ }, |
| 145724 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 145725 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .lead(.tmp0y, 32), ._ }, |
| 145726 | .{ ._, .vp_d, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 145727 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 145728 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145729 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145730 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145731 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145732 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145733 | } }, |
| 145734 | }, .{ |
| 145735 | .required_features = .{ .avx2, .fast_hops, null, null }, |
| 145736 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145737 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 145738 | .patterns = &.{ |
| 145739 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145740 | }, |
| 145741 | .extra_temps = .{ |
| 145742 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145743 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145744 | .unused, |
| 145745 | .unused, |
| 145746 | .unused, |
| 145747 | .unused, |
| 145748 | .unused, |
| 145749 | .unused, |
| 145750 | .unused, |
| 145751 | .unused, |
| 145752 | .unused, |
| 145753 | }, |
| 145754 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145755 | .clobbers = .{ .eflags = true }, |
| 145756 | .each = .{ .once = &.{ |
| 145757 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 145758 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 145759 | .{ .@"0:", .vp_d, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 145760 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 145761 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145762 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 145763 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 145764 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145765 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145766 | } }, |
| 145767 | }, .{ |
| 145768 | .required_features = .{ .avx2, null, null, null }, |
| 145769 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145770 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 145771 | .patterns = &.{ |
| 145772 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145773 | }, |
| 145774 | .extra_temps = .{ |
| 145775 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145776 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145777 | .unused, |
| 145778 | .unused, |
| 145779 | .unused, |
| 145780 | .unused, |
| 145781 | .unused, |
| 145782 | .unused, |
| 145783 | .unused, |
| 145784 | .unused, |
| 145785 | .unused, |
| 145786 | }, |
| 145787 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145788 | .clobbers = .{ .eflags = true }, |
| 145789 | .each = .{ .once = &.{ |
| 145790 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 145791 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 145792 | .{ .@"0:", .vp_d, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 145793 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 145794 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145795 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 145796 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 145797 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 145798 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 145799 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 145800 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 145801 | } }, |
| 145802 | }, .{ |
| 145803 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 145804 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145805 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 145806 | .patterns = &.{ |
| 145807 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145808 | }, |
| 145809 | .extra_temps = .{ |
| 145810 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145811 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145812 | .unused, |
| 145813 | .unused, |
| 145814 | .unused, |
| 145815 | .unused, |
| 145816 | .unused, |
| 145817 | .unused, |
| 145818 | .unused, |
| 145819 | .unused, |
| 145820 | .unused, |
| 145821 | }, |
| 145822 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145823 | .clobbers = .{ .eflags = true }, |
| 145824 | .each = .{ .once = &.{ |
| 145825 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 145826 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 145827 | .{ .@"0:", .vp_d, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 145828 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 145829 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145830 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 145831 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 145832 | } }, |
| 145833 | }, .{ |
| 145834 | .required_features = .{ .avx, null, null, null }, |
| 145835 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145836 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 145837 | .patterns = &.{ |
| 145838 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145839 | }, |
| 145840 | .extra_temps = .{ |
| 145841 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145842 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145843 | .unused, |
| 145844 | .unused, |
| 145845 | .unused, |
| 145846 | .unused, |
| 145847 | .unused, |
| 145848 | .unused, |
| 145849 | .unused, |
| 145850 | .unused, |
| 145851 | .unused, |
| 145852 | }, |
| 145853 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145854 | .clobbers = .{ .eflags = true }, |
| 145855 | .each = .{ .once = &.{ |
| 145856 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 145857 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 145858 | .{ .@"0:", .vp_d, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 145859 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 145860 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145861 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 145862 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 145863 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 145864 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 145865 | } }, |
| 145866 | }, .{ |
| 145867 | .required_features = .{ .ssse3, .fast_hops, null, null }, |
| 145868 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145869 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 145870 | .patterns = &.{ |
| 145871 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145872 | }, |
| 145873 | .extra_temps = .{ |
| 145874 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145875 | .unused, |
| 145876 | .unused, |
| 145877 | .unused, |
| 145878 | .unused, |
| 145879 | .unused, |
| 145880 | .unused, |
| 145881 | .unused, |
| 145882 | .unused, |
| 145883 | .unused, |
| 145884 | .unused, |
| 145885 | }, |
| 145886 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145887 | .clobbers = .{ .eflags = true }, |
| 145888 | .each = .{ .once = &.{ |
| 145889 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 145890 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 145891 | .{ .@"0:", .p_d, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 145892 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 145893 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145894 | .{ ._, .ph_d, .add, .dst0x, .dst0x, ._, ._ }, |
| 145895 | .{ ._, .ph_d, .add, .dst0x, .dst0x, ._, ._ }, |
| 145896 | } }, |
| 145897 | }, .{ |
| 145898 | .required_features = .{ .sse2, null, null, null }, |
| 145899 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145900 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 145901 | .patterns = &.{ |
| 145902 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145903 | }, |
| 145904 | .extra_temps = .{ |
| 145905 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145906 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145907 | .unused, |
| 145908 | .unused, |
| 145909 | .unused, |
| 145910 | .unused, |
| 145911 | .unused, |
| 145912 | .unused, |
| 145913 | .unused, |
| 145914 | .unused, |
| 145915 | .unused, |
| 145916 | }, |
| 145917 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145918 | .clobbers = .{ .eflags = true }, |
| 145919 | .each = .{ .once = &.{ |
| 145920 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 145921 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 145922 | .{ .@"0:", .p_d, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 145923 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 145924 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145925 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 145926 | .{ ._, .p_d, .add, .dst0x, .tmp1x, ._, ._ }, |
| 145927 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 145928 | .{ ._, .p_d, .add, .dst0x, .tmp1x, ._, ._ }, |
| 145929 | } }, |
| 145930 | }, .{ |
| 145931 | .required_features = .{ .avx512f, null, null, null }, |
| 145932 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145933 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 145934 | .patterns = &.{ |
| 145935 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145936 | }, |
| 145937 | .extra_temps = .{ |
| 145938 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145939 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 145940 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 145941 | .unused, |
| 145942 | .unused, |
| 145943 | .unused, |
| 145944 | .unused, |
| 145945 | .unused, |
| 145946 | .unused, |
| 145947 | .unused, |
| 145948 | .unused, |
| 145949 | }, |
| 145950 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145951 | .clobbers = .{ .eflags = true }, |
| 145952 | .each = .{ .once = &.{ |
| 145953 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 145954 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 145955 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 145956 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 145957 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 145958 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 145959 | .{ .@"0:", .vp_d, .add, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 145960 | .{ ._, .vp_d, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 145961 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 145962 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 145963 | .{ ._, .vp_d, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 145964 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 145965 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145966 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145967 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145968 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 145969 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 145970 | } }, |
| 145971 | }, .{ |
| 145972 | .required_features = .{ .avx2, .fast_hops, null, null }, |
| 145973 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 145974 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 145975 | .patterns = &.{ |
| 145976 | .{ .src = .{ .to_mem, .none, .none } }, |
| 145977 | }, |
| 145978 | .extra_temps = .{ |
| 145979 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 145980 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 145981 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 145982 | .unused, |
| 145983 | .unused, |
| 145984 | .unused, |
| 145985 | .unused, |
| 145986 | .unused, |
| 145987 | .unused, |
| 145988 | .unused, |
| 145989 | .unused, |
| 145990 | }, |
| 145991 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 145992 | .clobbers = .{ .eflags = true }, |
| 145993 | .each = .{ .once = &.{ |
| 145994 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 145995 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 145996 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 145997 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 145998 | .{ .@"0:", .vp_d, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 145999 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 146000 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146001 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 146002 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146003 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 146004 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 146005 | } }, |
| 146006 | }, .{ |
| 146007 | .required_features = .{ .avx2, null, null, null }, |
| 146008 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 146009 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 146010 | .patterns = &.{ |
| 146011 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146012 | }, |
| 146013 | .extra_temps = .{ |
| 146014 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146015 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 146016 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 146017 | .unused, |
| 146018 | .unused, |
| 146019 | .unused, |
| 146020 | .unused, |
| 146021 | .unused, |
| 146022 | .unused, |
| 146023 | .unused, |
| 146024 | .unused, |
| 146025 | }, |
| 146026 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146027 | .clobbers = .{ .eflags = true }, |
| 146028 | .each = .{ .once = &.{ |
| 146029 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 146030 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 146031 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 146032 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 146033 | .{ .@"0:", .vp_d, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 146034 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 146035 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146036 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 146037 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146038 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 146039 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146040 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 146041 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146042 | } }, |
| 146043 | }, .{ |
| 146044 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 146045 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 146046 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 146047 | .patterns = &.{ |
| 146048 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146049 | }, |
| 146050 | .extra_temps = .{ |
| 146051 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146052 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 146053 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 146054 | .unused, |
| 146055 | .unused, |
| 146056 | .unused, |
| 146057 | .unused, |
| 146058 | .unused, |
| 146059 | .unused, |
| 146060 | .unused, |
| 146061 | .unused, |
| 146062 | }, |
| 146063 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146064 | .clobbers = .{ .eflags = true }, |
| 146065 | .each = .{ .once = &.{ |
| 146066 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 146067 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 146068 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 146069 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 146070 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 146071 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146072 | .{ .@"0:", .vp_d, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 146073 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 146074 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146075 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 146076 | .{ ._, .vph_d, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 146077 | } }, |
| 146078 | }, .{ |
| 146079 | .required_features = .{ .avx, null, null, null }, |
| 146080 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 146081 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 146082 | .patterns = &.{ |
| 146083 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146084 | }, |
| 146085 | .extra_temps = .{ |
| 146086 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146087 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 146088 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 146089 | .unused, |
| 146090 | .unused, |
| 146091 | .unused, |
| 146092 | .unused, |
| 146093 | .unused, |
| 146094 | .unused, |
| 146095 | .unused, |
| 146096 | .unused, |
| 146097 | }, |
| 146098 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146099 | .each = .{ .once = &.{ |
| 146100 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 146101 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 146102 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 146103 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 146104 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 146105 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146106 | .{ .@"0:", .vp_d, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 146107 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 146108 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146109 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 146110 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146111 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 146112 | .{ ._, .vp_d, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146113 | } }, |
| 146114 | }, .{ |
| 146115 | .required_features = .{ .ssse3, .fast_hops, null, null }, |
| 146116 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 146117 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 146118 | .patterns = &.{ |
| 146119 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146120 | }, |
| 146121 | .extra_temps = .{ |
| 146122 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146123 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 146124 | .unused, |
| 146125 | .unused, |
| 146126 | .unused, |
| 146127 | .unused, |
| 146128 | .unused, |
| 146129 | .unused, |
| 146130 | .unused, |
| 146131 | .unused, |
| 146132 | .unused, |
| 146133 | }, |
| 146134 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146135 | .clobbers = .{ .eflags = true }, |
| 146136 | .each = .{ .once = &.{ |
| 146137 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 146138 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 146139 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 146140 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 146141 | .{ .@"0:", .p_d, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 146142 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 146143 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146144 | .{ ._, .ph_d, .add, .dst0x, .dst0x, ._, ._ }, |
| 146145 | .{ ._, .ph_d, .add, .dst0x, .dst0x, ._, ._ }, |
| 146146 | } }, |
| 146147 | }, .{ |
| 146148 | .required_features = .{ .sse2, null, null, null }, |
| 146149 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 146150 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 146151 | .patterns = &.{ |
| 146152 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146153 | }, |
| 146154 | .extra_temps = .{ |
| 146155 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146156 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 146157 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 146158 | .unused, |
| 146159 | .unused, |
| 146160 | .unused, |
| 146161 | .unused, |
| 146162 | .unused, |
| 146163 | .unused, |
| 146164 | .unused, |
| 146165 | .unused, |
| 146166 | }, |
| 146167 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146168 | .clobbers = .{ .eflags = true }, |
| 146169 | .each = .{ .once = &.{ |
| 146170 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 146171 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 146172 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 146173 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 146174 | .{ .@"0:", .p_d, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 146175 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 146176 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146177 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 146178 | .{ ._, .p_d, .add, .dst0x, .tmp2x, ._, ._ }, |
| 146179 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 146180 | .{ ._, .p_d, .add, .dst0x, .tmp2x, ._, ._ }, |
| 146181 | } }, |
| 146182 | }, .{ |
| 146183 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 146184 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 146185 | .patterns = &.{ |
| 146186 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146187 | }, |
| 146188 | .extra_temps = .{ |
| 146189 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146190 | .unused, |
| 146191 | .unused, |
| 146192 | .unused, |
| 146193 | .unused, |
| 146194 | .unused, |
| 146195 | .unused, |
| 146196 | .unused, |
| 146197 | .unused, |
| 146198 | .unused, |
| 146199 | .unused, |
| 146200 | }, |
| 146201 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 146202 | .clobbers = .{ .eflags = true }, |
| 146203 | .each = .{ .once = &.{ |
| 146204 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size), ._, ._ }, |
| 146205 | .{ ._, ._, .mov, .dst0d, .memad(.src0d, .add_unaligned_size, -4), ._, ._ }, |
| 146206 | .{ .@"0:", ._, .add, .dst0d, .memi(.src0d, .tmp0), ._, ._ }, |
| 146207 | .{ ._, ._, .sub, .tmp0d, .si(4), ._, ._ }, |
| 146208 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146209 | } }, |
| 146210 | }, .{ |
| 146211 | .required_features = .{ .avx, null, null, null }, |
| 146212 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146213 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 146214 | .patterns = &.{ |
| 146215 | .{ .src = .{ .to_sse, .none, .none } }, |
| 146216 | }, |
| 146217 | .extra_temps = .{ |
| 146218 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146219 | .unused, |
| 146220 | .unused, |
| 146221 | .unused, |
| 146222 | .unused, |
| 146223 | .unused, |
| 146224 | .unused, |
| 146225 | .unused, |
| 146226 | .unused, |
| 146227 | .unused, |
| 146228 | .unused, |
| 146229 | }, |
| 146230 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 146231 | .each = .{ .once = &.{ |
| 146232 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 146233 | .{ ._, .vp_q, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 146234 | } }, |
| 146235 | }, .{ |
| 146236 | .required_features = .{ .sse2, null, null, null }, |
| 146237 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146238 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 146239 | .patterns = &.{ |
| 146240 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 146241 | }, |
| 146242 | .extra_temps = .{ |
| 146243 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146244 | .unused, |
| 146245 | .unused, |
| 146246 | .unused, |
| 146247 | .unused, |
| 146248 | .unused, |
| 146249 | .unused, |
| 146250 | .unused, |
| 146251 | .unused, |
| 146252 | .unused, |
| 146253 | .unused, |
| 146254 | }, |
| 146255 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 146256 | .each = .{ .once = &.{ |
| 146257 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 146258 | .{ ._, .p_q, .add, .dst0x, .tmp0x, ._, ._ }, |
| 146259 | } }, |
| 146260 | }, .{ |
| 146261 | .required_features = .{ .avx2, null, null, null }, |
| 146262 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146263 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 146264 | .patterns = &.{ |
| 146265 | .{ .src = .{ .to_sse, .none, .none } }, |
| 146266 | }, |
| 146267 | .extra_temps = .{ |
| 146268 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146269 | .unused, |
| 146270 | .unused, |
| 146271 | .unused, |
| 146272 | .unused, |
| 146273 | .unused, |
| 146274 | .unused, |
| 146275 | .unused, |
| 146276 | .unused, |
| 146277 | .unused, |
| 146278 | .unused, |
| 146279 | }, |
| 146280 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 146281 | .each = .{ .once = &.{ |
| 146282 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 146283 | .{ ._, .vp_q, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 146284 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 146285 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 146286 | } }, |
| 146287 | }, .{ |
| 146288 | .required_features = .{ .avx, null, null, null }, |
| 146289 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146290 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 146291 | .patterns = &.{ |
| 146292 | .{ .src = .{ .to_sse, .none, .none } }, |
| 146293 | }, |
| 146294 | .extra_temps = .{ |
| 146295 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146296 | .unused, |
| 146297 | .unused, |
| 146298 | .unused, |
| 146299 | .unused, |
| 146300 | .unused, |
| 146301 | .unused, |
| 146302 | .unused, |
| 146303 | .unused, |
| 146304 | .unused, |
| 146305 | .unused, |
| 146306 | }, |
| 146307 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 146308 | .each = .{ .once = &.{ |
| 146309 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 146310 | .{ ._, .vp_q, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 146311 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 146312 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 146313 | } }, |
| 146314 | }, .{ |
| 146315 | .required_features = .{ .avx2, null, null, null }, |
| 146316 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146317 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 146318 | .patterns = &.{ |
| 146319 | .{ .src = .{ .to_sse, .none, .none } }, |
| 146320 | }, |
| 146321 | .extra_temps = .{ |
| 146322 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146323 | .unused, |
| 146324 | .unused, |
| 146325 | .unused, |
| 146326 | .unused, |
| 146327 | .unused, |
| 146328 | .unused, |
| 146329 | .unused, |
| 146330 | .unused, |
| 146331 | .unused, |
| 146332 | .unused, |
| 146333 | }, |
| 146334 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 146335 | .each = .{ .once = &.{ |
| 146336 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 146337 | .{ ._, .vp_q, .add, .tmp0x, .src0x, .tmp0x, ._ }, |
| 146338 | .{ ._, .vp_d, .shuf, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 146339 | .{ ._, .vp_q, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 146340 | } }, |
| 146341 | }, .{ |
| 146342 | .required_features = .{ .avx, null, null, null }, |
| 146343 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146344 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 146345 | .patterns = &.{ |
| 146346 | .{ .src = .{ .to_sse, .none, .none } }, |
| 146347 | }, |
| 146348 | .extra_temps = .{ |
| 146349 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146350 | .unused, |
| 146351 | .unused, |
| 146352 | .unused, |
| 146353 | .unused, |
| 146354 | .unused, |
| 146355 | .unused, |
| 146356 | .unused, |
| 146357 | .unused, |
| 146358 | .unused, |
| 146359 | .unused, |
| 146360 | }, |
| 146361 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 146362 | .each = .{ .once = &.{ |
| 146363 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 146364 | .{ ._, .vp_q, .add, .tmp0x, .src0x, .tmp0x, ._ }, |
| 146365 | .{ ._, .vp_d, .shuf, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 146366 | .{ ._, .vp_q, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 146367 | } }, |
| 146368 | }, .{ |
| 146369 | .required_features = .{ .avx512f, null, null, null }, |
| 146370 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146371 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 146372 | .patterns = &.{ |
| 146373 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146374 | }, |
| 146375 | .extra_temps = .{ |
| 146376 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146377 | .unused, |
| 146378 | .unused, |
| 146379 | .unused, |
| 146380 | .unused, |
| 146381 | .unused, |
| 146382 | .unused, |
| 146383 | .unused, |
| 146384 | .unused, |
| 146385 | .unused, |
| 146386 | .unused, |
| 146387 | }, |
| 146388 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146389 | .each = .{ .once = &.{ |
| 146390 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 146391 | .{ ._, .vp_q, .add, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 146392 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 146393 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 146394 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 146395 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 146396 | } }, |
| 146397 | }, .{ |
| 146398 | .required_features = .{ .avx512f, null, null, null }, |
| 146399 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146400 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 146401 | .patterns = &.{ |
| 146402 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146403 | }, |
| 146404 | .extra_temps = .{ |
| 146405 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 146406 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 146407 | .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } }, |
| 146408 | .unused, |
| 146409 | .unused, |
| 146410 | .unused, |
| 146411 | .unused, |
| 146412 | .unused, |
| 146413 | .unused, |
| 146414 | .unused, |
| 146415 | .unused, |
| 146416 | }, |
| 146417 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146418 | .each = .{ .once = &.{ |
| 146419 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 146420 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 146421 | .{ ._, .v_dqa, .mov, .tmp2y, .memd(.src0y, 32), ._, ._ }, |
| 146422 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 146423 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .lead(.tmp0y, 32), ._ }, |
| 146424 | .{ ._, .vp_q, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 146425 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 146426 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146427 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 146428 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146429 | } }, |
| 146430 | }, .{ |
| 146431 | .required_features = .{ .avx2, null, null, null }, |
| 146432 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146433 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 146434 | .patterns = &.{ |
| 146435 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146436 | }, |
| 146437 | .extra_temps = .{ |
| 146438 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146439 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146440 | .unused, |
| 146441 | .unused, |
| 146442 | .unused, |
| 146443 | .unused, |
| 146444 | .unused, |
| 146445 | .unused, |
| 146446 | .unused, |
| 146447 | .unused, |
| 146448 | .unused, |
| 146449 | }, |
| 146450 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146451 | .clobbers = .{ .eflags = true }, |
| 146452 | .each = .{ .once = &.{ |
| 146453 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 146454 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 146455 | .{ .@"0:", .vp_q, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 146456 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 146457 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146458 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 146459 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 146460 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 146461 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 146462 | } }, |
| 146463 | }, .{ |
| 146464 | .required_features = .{ .avx, null, null, null }, |
| 146465 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146466 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 146467 | .patterns = &.{ |
| 146468 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146469 | }, |
| 146470 | .extra_temps = .{ |
| 146471 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146472 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146473 | .unused, |
| 146474 | .unused, |
| 146475 | .unused, |
| 146476 | .unused, |
| 146477 | .unused, |
| 146478 | .unused, |
| 146479 | .unused, |
| 146480 | .unused, |
| 146481 | .unused, |
| 146482 | }, |
| 146483 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146484 | .clobbers = .{ .eflags = true }, |
| 146485 | .each = .{ .once = &.{ |
| 146486 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 146487 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 146488 | .{ .@"0:", .vp_q, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 146489 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 146490 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146491 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 146492 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 146493 | } }, |
| 146494 | }, .{ |
| 146495 | .required_features = .{ .sse2, null, null, null }, |
| 146496 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146497 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 146498 | .patterns = &.{ |
| 146499 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146500 | }, |
| 146501 | .extra_temps = .{ |
| 146502 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146503 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146504 | .unused, |
| 146505 | .unused, |
| 146506 | .unused, |
| 146507 | .unused, |
| 146508 | .unused, |
| 146509 | .unused, |
| 146510 | .unused, |
| 146511 | .unused, |
| 146512 | .unused, |
| 146513 | }, |
| 146514 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146515 | .clobbers = .{ .eflags = true }, |
| 146516 | .each = .{ .once = &.{ |
| 146517 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 146518 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 146519 | .{ .@"0:", .p_q, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 146520 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 146521 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146522 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 146523 | .{ ._, .p_q, .add, .dst0x, .tmp1x, ._, ._ }, |
| 146524 | } }, |
| 146525 | }, .{ |
| 146526 | .required_features = .{ .avx512f, null, null, null }, |
| 146527 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146528 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 146529 | .patterns = &.{ |
| 146530 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146531 | }, |
| 146532 | .extra_temps = .{ |
| 146533 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146534 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 146535 | .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } }, |
| 146536 | .unused, |
| 146537 | .unused, |
| 146538 | .unused, |
| 146539 | .unused, |
| 146540 | .unused, |
| 146541 | .unused, |
| 146542 | .unused, |
| 146543 | .unused, |
| 146544 | }, |
| 146545 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146546 | .clobbers = .{ .eflags = true }, |
| 146547 | .each = .{ .once = &.{ |
| 146548 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 146549 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 146550 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 146551 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 146552 | .{ ._, .vp_, .@"and", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 146553 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 146554 | .{ .@"0:", .vp_q, .add, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 146555 | .{ ._, .vp_q, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 146556 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 146557 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146558 | .{ ._, .vp_q, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 146559 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 146560 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146561 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 146562 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146563 | } }, |
| 146564 | }, .{ |
| 146565 | .required_features = .{ .avx2, null, null, null }, |
| 146566 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146567 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 146568 | .patterns = &.{ |
| 146569 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146570 | }, |
| 146571 | .extra_temps = .{ |
| 146572 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146573 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 146574 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146575 | .unused, |
| 146576 | .unused, |
| 146577 | .unused, |
| 146578 | .unused, |
| 146579 | .unused, |
| 146580 | .unused, |
| 146581 | .unused, |
| 146582 | .unused, |
| 146583 | }, |
| 146584 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146585 | .clobbers = .{ .eflags = true }, |
| 146586 | .each = .{ .once = &.{ |
| 146587 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 146588 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 146589 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 146590 | .{ ._, .vp_, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 146591 | .{ .@"0:", .vp_q, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 146592 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 146593 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146594 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 146595 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146596 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 146597 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146598 | } }, |
| 146599 | }, .{ |
| 146600 | .required_features = .{ .avx, null, null, null }, |
| 146601 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146602 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 146603 | .patterns = &.{ |
| 146604 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146605 | }, |
| 146606 | .extra_temps = .{ |
| 146607 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146608 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 146609 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146610 | .unused, |
| 146611 | .unused, |
| 146612 | .unused, |
| 146613 | .unused, |
| 146614 | .unused, |
| 146615 | .unused, |
| 146616 | .unused, |
| 146617 | .unused, |
| 146618 | }, |
| 146619 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146620 | .clobbers = .{ .eflags = true }, |
| 146621 | .each = .{ .once = &.{ |
| 146622 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 146623 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 146624 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 146625 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 146626 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 146627 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146628 | .{ .@"0:", .vp_q, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 146629 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 146630 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146631 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 146632 | .{ ._, .vp_q, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 146633 | } }, |
| 146634 | }, .{ |
| 146635 | .required_features = .{ .sse2, null, null, null }, |
| 146636 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146637 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 146638 | .patterns = &.{ |
| 146639 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146640 | }, |
| 146641 | .extra_temps = .{ |
| 146642 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146643 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 146644 | .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } }, |
| 146645 | .unused, |
| 146646 | .unused, |
| 146647 | .unused, |
| 146648 | .unused, |
| 146649 | .unused, |
| 146650 | .unused, |
| 146651 | .unused, |
| 146652 | .unused, |
| 146653 | }, |
| 146654 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 146655 | .clobbers = .{ .eflags = true }, |
| 146656 | .each = .{ .once = &.{ |
| 146657 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 146658 | .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 146659 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 146660 | .{ ._, .p_, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 146661 | .{ .@"0:", .p_q, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 146662 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 146663 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146664 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 146665 | .{ ._, .p_q, .add, .dst0x, .tmp2x, ._, ._ }, |
| 146666 | } }, |
| 146667 | }, .{ |
| 146668 | .required_features = .{ .@"64bit", null, null, null }, |
| 146669 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 146670 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 146671 | .patterns = &.{ |
| 146672 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146673 | }, |
| 146674 | .extra_temps = .{ |
| 146675 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146676 | .unused, |
| 146677 | .unused, |
| 146678 | .unused, |
| 146679 | .unused, |
| 146680 | .unused, |
| 146681 | .unused, |
| 146682 | .unused, |
| 146683 | .unused, |
| 146684 | .unused, |
| 146685 | .unused, |
| 146686 | }, |
| 146687 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 146688 | .clobbers = .{ .eflags = true }, |
| 146689 | .each = .{ .once = &.{ |
| 146690 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 146691 | .{ ._, ._, .mov, .dst0q, .memad(.src0q, .add_unaligned_size, -8), ._, ._ }, |
| 146692 | .{ .@"0:", ._, .add, .dst0q, .memi(.src0q, .tmp0), ._, ._ }, |
| 146693 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 146694 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146695 | } }, |
| 146696 | }, .{ |
| 146697 | .required_features = .{ .@"64bit", null, null, null }, |
| 146698 | .dst_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 146699 | .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 146700 | .patterns = &.{ |
| 146701 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146702 | }, |
| 146703 | .extra_temps = .{ |
| 146704 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 146705 | .{ .type = .u32, .kind = .{ .reg = .rsi } }, |
| 146706 | .{ .type = .usize, .kind = .{ .reg = .rdi } }, |
| 146707 | .{ .type = .u64, .kind = .{ .reg = .rcx } }, |
| 146708 | .unused, |
| 146709 | .unused, |
| 146710 | .unused, |
| 146711 | .unused, |
| 146712 | .unused, |
| 146713 | .unused, |
| 146714 | .unused, |
| 146715 | }, |
| 146716 | .dst_temps = .{ .mem, .unused }, |
| 146717 | .clobbers = .{ .eflags = true }, |
| 146718 | .each = .{ .once = &.{ |
| 146719 | .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 146720 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 146721 | .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ }, |
| 146722 | .{ ._, ._, .mov, .tmp3d, .sa(.dst0, .add_size_div_8), ._, ._ }, |
| 146723 | .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ }, |
| 146724 | .{ .@"0:", ._, .mov, .tmp1p, .sa(.dst0, .sub_size_div_8), ._, ._ }, |
| 146725 | .{ ._, ._, .lea, .tmp2q, .memi(.src0, .tmp0), ._, ._ }, |
| 146726 | .{ ._, ._c, .cl, ._, ._, ._, ._ }, |
| 146727 | .{ .@"1:", ._, .mov, .tmp3q, .leasia(.tmp2q, .@"8", .tmp1, .add_src0_elem_size), ._, ._ }, |
| 146728 | .{ ._, ._, .adc, .memsia(.dst0q, .@"8", .tmp1, .add_size), .tmp3q, ._, ._ }, |
| 146729 | .{ ._, ._c, .in, .tmp1p, ._, ._, ._ }, |
| 146730 | .{ ._, ._nz, .j, .@"1b", ._, ._, ._ }, |
| 146731 | .{ ._, ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 146732 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 146733 | } }, |
| 146734 | }, .{ |
| 146735 | .required_features = .{ .f16c, .fast_hops, null, null }, |
| 146736 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 146737 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 146738 | .patterns = &.{ |
| 146739 | .{ .src = .{ .mem, .none, .none } }, |
| 146740 | .{ .src = .{ .to_sse, .none, .none } }, |
| 146741 | }, |
| 146742 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 146743 | .each = .{ .once = &.{ |
| 146744 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 146745 | .{ ._, .vh_ps, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 146746 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 146747 | } }, |
| 146748 | }, .{ |
| 146749 | .required_features = .{ .f16c, null, null, null }, |
| 146750 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 146751 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 146752 | .patterns = &.{ |
| 146753 | .{ .src = .{ .mem, .none, .none } }, |
| 146754 | .{ .src = .{ .to_sse, .none, .none } }, |
| 146755 | }, |
| 146756 | .extra_temps = .{ |
| 146757 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 146758 | .unused, |
| 146759 | .unused, |
| 146760 | .unused, |
| 146761 | .unused, |
| 146762 | .unused, |
| 146763 | .unused, |
| 146764 | .unused, |
| 146765 | .unused, |
| 146766 | .unused, |
| 146767 | .unused, |
| 146768 | }, |
| 146769 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 146770 | .each = .{ .once = &.{ |
| 146771 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 146772 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 146773 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 146774 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 146775 | } }, |
| 146776 | }, .{ |
| 146777 | .required_features = .{ .f16c, .fast_hops, null, null }, |
| 146778 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 146779 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 146780 | .patterns = &.{ |
| 146781 | .{ .src = .{ .mem, .none, .none } }, |
| 146782 | .{ .src = .{ .to_sse, .none, .none } }, |
| 146783 | }, |
| 146784 | .extra_temps = .{ |
| 146785 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 146786 | .unused, |
| 146787 | .unused, |
| 146788 | .unused, |
| 146789 | .unused, |
| 146790 | .unused, |
| 146791 | .unused, |
| 146792 | .unused, |
| 146793 | .unused, |
| 146794 | .unused, |
| 146795 | .unused, |
| 146796 | }, |
| 146797 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 146798 | .each = .{ .once = &.{ |
| 146799 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 146800 | .{ ._, .vh_ps, .add, .tmp0x, .dst0x, .dst0x, ._ }, |
| 146801 | .{ ._, .v_ps, .shuf, .dst0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 146802 | .{ ._, .v_ss, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 146803 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 146804 | } }, |
| 146805 | }, .{ |
| 146806 | .required_features = .{ .f16c, null, null, null }, |
| 146807 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 146808 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 146809 | .patterns = &.{ |
| 146810 | .{ .src = .{ .mem, .none, .none } }, |
| 146811 | .{ .src = .{ .to_sse, .none, .none } }, |
| 146812 | }, |
| 146813 | .extra_temps = .{ |
| 146814 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 146815 | .unused, |
| 146816 | .unused, |
| 146817 | .unused, |
| 146818 | .unused, |
| 146819 | .unused, |
| 146820 | .unused, |
| 146821 | .unused, |
| 146822 | .unused, |
| 146823 | .unused, |
| 146824 | .unused, |
| 146825 | }, |
| 146826 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 146827 | .each = .{ .once = &.{ |
| 146828 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 146829 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 146830 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 146831 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 146832 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 146833 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 146834 | } }, |
| 146835 | }, .{ |
| 146836 | .required_features = .{ .f16c, .fast_hops, null, null }, |
| 146837 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 146838 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 146839 | .patterns = &.{ |
| 146840 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146841 | }, |
| 146842 | .extra_temps = .{ |
| 146843 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 146844 | .{ .type = .f16, .kind = .{ .rc = .sse } }, |
| 146845 | .unused, |
| 146846 | .unused, |
| 146847 | .unused, |
| 146848 | .unused, |
| 146849 | .unused, |
| 146850 | .unused, |
| 146851 | .unused, |
| 146852 | .unused, |
| 146853 | .unused, |
| 146854 | }, |
| 146855 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 146856 | .clobbers = .{ .eflags = true }, |
| 146857 | .each = .{ .once = &.{ |
| 146858 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .dst0x, ._ }, |
| 146859 | .{ ._, ._, .mov, .tmp0p, .sia(2, .src0, .sub_unaligned_size), ._, ._ }, |
| 146860 | .{ ._, .vp_w, .insr, .dst0x, .dst0x, .mem(.src0w), .ui(0) }, |
| 146861 | .{ .@"0:", .vp_w, .insr, .dst0x, .dst0x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(1) }, |
| 146862 | .{ ._, .v_ps, .cvtph2, .dst0x, .dst0q, ._, ._ }, |
| 146863 | .{ ._, .vh_ps, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 146864 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 146865 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 146866 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 146867 | } }, |
| 146868 | }, .{ |
| 146869 | .required_features = .{ .f16c, null, null, null }, |
| 146870 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 146871 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 146872 | .patterns = &.{ |
| 146873 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146874 | }, |
| 146875 | .extra_temps = .{ |
| 146876 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 146877 | .{ .type = .f16, .kind = .{ .rc = .sse } }, |
| 146878 | .unused, |
| 146879 | .unused, |
| 146880 | .unused, |
| 146881 | .unused, |
| 146882 | .unused, |
| 146883 | .unused, |
| 146884 | .unused, |
| 146885 | .unused, |
| 146886 | .unused, |
| 146887 | }, |
| 146888 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 146889 | .clobbers = .{ .eflags = true }, |
| 146890 | .each = .{ .once = &.{ |
| 146891 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .dst0x, ._ }, |
| 146892 | .{ ._, ._, .mov, .tmp0p, .sia(2, .src0, .sub_unaligned_size), ._, ._ }, |
| 146893 | .{ ._, .vp_w, .insr, .dst0x, .dst0x, .mem(.src0w), .ui(0) }, |
| 146894 | .{ .@"0:", .vp_w, .insr, .dst0x, .dst0x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(1) }, |
| 146895 | .{ ._, .v_ps, .cvtph2, .dst0x, .dst0q, ._, ._ }, |
| 146896 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 146897 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 146898 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 146899 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 146900 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 146901 | } }, |
| 146902 | }, .{ |
| 146903 | .required_features = .{ .avx, null, null, null }, |
| 146904 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 146905 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 146906 | .patterns = &.{ |
| 146907 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146908 | }, |
| 146909 | .call_frame = .{ .alignment = .@"16" }, |
| 146910 | .extra_temps = .{ |
| 146911 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 146912 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 146913 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addhf3" } } }, |
| 146914 | .unused, |
| 146915 | .unused, |
| 146916 | .unused, |
| 146917 | .unused, |
| 146918 | .unused, |
| 146919 | .unused, |
| 146920 | .unused, |
| 146921 | .unused, |
| 146922 | }, |
| 146923 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 146924 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 146925 | .each = .{ .once = &.{ |
| 146926 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .dst0x, ._ }, |
| 146927 | .{ ._, ._, .mov, .tmp0p, .sia(2, .src0, .sub_unaligned_size), ._, ._ }, |
| 146928 | .{ ._, .vp_w, .insr, .dst0x, .dst0x, .mem(.src0w), .ui(0) }, |
| 146929 | .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| 146930 | .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) }, |
| 146931 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 146932 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 146933 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 146934 | } }, |
| 146935 | }, .{ |
| 146936 | .required_features = .{ .sse2, null, null, null }, |
| 146937 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 146938 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 146939 | .patterns = &.{ |
| 146940 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146941 | }, |
| 146942 | .call_frame = .{ .alignment = .@"16" }, |
| 146943 | .extra_temps = .{ |
| 146944 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 146945 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 146946 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addhf3" } } }, |
| 146947 | .unused, |
| 146948 | .unused, |
| 146949 | .unused, |
| 146950 | .unused, |
| 146951 | .unused, |
| 146952 | .unused, |
| 146953 | .unused, |
| 146954 | .unused, |
| 146955 | }, |
| 146956 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 146957 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 146958 | .each = .{ .once = &.{ |
| 146959 | .{ ._, .p_, .xor, .dst0x, .dst0x, ._, ._ }, |
| 146960 | .{ ._, ._, .mov, .tmp0p, .sia(2, .src0, .sub_unaligned_size), ._, ._ }, |
| 146961 | .{ ._, .p_w, .insr, .dst0x, .mem(.src0w), .ui(0), ._ }, |
| 146962 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 146963 | .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ }, |
| 146964 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 146965 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 146966 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 146967 | } }, |
| 146968 | }, .{ |
| 146969 | .required_features = .{ .sse, null, null, null }, |
| 146970 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 146971 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 146972 | .patterns = &.{ |
| 146973 | .{ .src = .{ .to_mem, .none, .none } }, |
| 146974 | }, |
| 146975 | .call_frame = .{ .alignment = .@"16" }, |
| 146976 | .extra_temps = .{ |
| 146977 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 146978 | .{ .type = .f16, .kind = .{ .reg = .ax } }, |
| 146979 | .{ .type = .f32, .kind = .mem }, |
| 146980 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 146981 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addhf3" } } }, |
| 146982 | .unused, |
| 146983 | .unused, |
| 146984 | .unused, |
| 146985 | .unused, |
| 146986 | .unused, |
| 146987 | .unused, |
| 146988 | }, |
| 146989 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 146990 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 146991 | .each = .{ .once = &.{ |
| 146992 | .{ ._, ._ps, .xor, .dst0x, .dst0x, ._, ._ }, |
| 146993 | .{ ._, ._, .mov, .tmp0p, .sia(2, .src0, .sub_unaligned_size), ._, ._ }, |
| 146994 | .{ ._, ._, .movzx, .tmp1d, .mem(.src0w), ._, ._ }, |
| 146995 | .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ }, |
| 146996 | .{ ._, ._ss, .mov, .dst0x, .mem(.tmp2d), ._, ._ }, |
| 146997 | .{ .@"0:", ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 146998 | .{ ._, ._ss, .mov, .tmp3x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ }, |
| 146999 | .{ ._, ._, .call, .tmp4d, ._, ._, ._ }, |
| 147000 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 147001 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 147002 | } }, |
| 147003 | }, .{ |
| 147004 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 147005 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 147006 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 147007 | .patterns = &.{ |
| 147008 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147009 | }, |
| 147010 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147011 | .each = .{ .once = &.{ |
| 147012 | .{ ._, .vh_ps, .add, .dst0x, .src0x, .src0x, ._ }, |
| 147013 | } }, |
| 147014 | }, .{ |
| 147015 | .required_features = .{ .avx, null, null, null }, |
| 147016 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 147017 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 147018 | .patterns = &.{ |
| 147019 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147020 | }, |
| 147021 | .extra_temps = .{ |
| 147022 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 147023 | .unused, |
| 147024 | .unused, |
| 147025 | .unused, |
| 147026 | .unused, |
| 147027 | .unused, |
| 147028 | .unused, |
| 147029 | .unused, |
| 147030 | .unused, |
| 147031 | .unused, |
| 147032 | .unused, |
| 147033 | }, |
| 147034 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147035 | .each = .{ .once = &.{ |
| 147036 | .{ ._, .v_ps, .shuf, .tmp0x, .src0x, .src0x, .ui(0b01) }, |
| 147037 | .{ ._, .v_ss, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 147038 | } }, |
| 147039 | }, .{ |
| 147040 | .required_features = .{ .sse3, .fast_hops, null, null }, |
| 147041 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 147042 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 147043 | .patterns = &.{ |
| 147044 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 147045 | }, |
| 147046 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 147047 | .each = .{ .once = &.{ |
| 147048 | .{ ._, .h_ps, .add, .dst0x, .src0x, ._, ._ }, |
| 147049 | } }, |
| 147050 | }, .{ |
| 147051 | .required_features = .{ .sse, null, null, null }, |
| 147052 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 147053 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 147054 | .patterns = &.{ |
| 147055 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 147056 | }, |
| 147057 | .extra_temps = .{ |
| 147058 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 147059 | .unused, |
| 147060 | .unused, |
| 147061 | .unused, |
| 147062 | .unused, |
| 147063 | .unused, |
| 147064 | .unused, |
| 147065 | .unused, |
| 147066 | .unused, |
| 147067 | .unused, |
| 147068 | .unused, |
| 147069 | }, |
| 147070 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 147071 | .each = .{ .once = &.{ |
| 147072 | .{ ._, ._ps, .mova, .tmp0x, .src0x, ._, ._ }, |
| 147073 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 147074 | .{ ._, ._ss, .add, .dst0x, .tmp0x, ._, ._ }, |
| 147075 | } }, |
| 147076 | }, .{ |
| 147077 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 147078 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 147079 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 147080 | .patterns = &.{ |
| 147081 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147082 | }, |
| 147083 | .extra_temps = .{ |
| 147084 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 147085 | .unused, |
| 147086 | .unused, |
| 147087 | .unused, |
| 147088 | .unused, |
| 147089 | .unused, |
| 147090 | .unused, |
| 147091 | .unused, |
| 147092 | .unused, |
| 147093 | .unused, |
| 147094 | .unused, |
| 147095 | }, |
| 147096 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147097 | .each = .{ .once = &.{ |
| 147098 | .{ ._, .vh_ps, .add, .tmp0x, .src0x, .src0x, ._ }, |
| 147099 | .{ ._, .v_ps, .movhl, .dst0x, .src0x, .src0x, ._ }, |
| 147100 | .{ ._, .v_ss, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 147101 | } }, |
| 147102 | }, .{ |
| 147103 | .required_features = .{ .avx, null, null, null }, |
| 147104 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 147105 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 147106 | .patterns = &.{ |
| 147107 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147108 | }, |
| 147109 | .extra_temps = .{ |
| 147110 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 147111 | .unused, |
| 147112 | .unused, |
| 147113 | .unused, |
| 147114 | .unused, |
| 147115 | .unused, |
| 147116 | .unused, |
| 147117 | .unused, |
| 147118 | .unused, |
| 147119 | .unused, |
| 147120 | .unused, |
| 147121 | }, |
| 147122 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147123 | .each = .{ .once = &.{ |
| 147124 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 147125 | .{ ._, .v_ss, .add, .tmp0x, .src0x, .tmp0x, ._ }, |
| 147126 | .{ ._, .v_ps, .shuf, .dst0x, .src0x, .src0x, .ui(0b01) }, |
| 147127 | .{ ._, .v_ss, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 147128 | } }, |
| 147129 | }, .{ |
| 147130 | .required_features = .{ .sse3, .fast_hops, null, null }, |
| 147131 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 147132 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 147133 | .patterns = &.{ |
| 147134 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 147135 | }, |
| 147136 | .extra_temps = .{ |
| 147137 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 147138 | .unused, |
| 147139 | .unused, |
| 147140 | .unused, |
| 147141 | .unused, |
| 147142 | .unused, |
| 147143 | .unused, |
| 147144 | .unused, |
| 147145 | .unused, |
| 147146 | .unused, |
| 147147 | .unused, |
| 147148 | }, |
| 147149 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 147150 | .each = .{ .once = &.{ |
| 147151 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 147152 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 147153 | .{ ._, .h_ps, .add, .dst0x, .src0x, ._, ._ }, |
| 147154 | .{ ._, ._ss, .add, .dst0x, .tmp0x, ._, ._ }, |
| 147155 | } }, |
| 147156 | }, .{ |
| 147157 | .required_features = .{ .sse, null, null, null }, |
| 147158 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 147159 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 147160 | .patterns = &.{ |
| 147161 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 147162 | }, |
| 147163 | .extra_temps = .{ |
| 147164 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 147165 | .unused, |
| 147166 | .unused, |
| 147167 | .unused, |
| 147168 | .unused, |
| 147169 | .unused, |
| 147170 | .unused, |
| 147171 | .unused, |
| 147172 | .unused, |
| 147173 | .unused, |
| 147174 | .unused, |
| 147175 | }, |
| 147176 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 147177 | .each = .{ .once = &.{ |
| 147178 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 147179 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 147180 | .{ ._, ._ss, .add, .tmp0x, .src0x, ._, ._ }, |
| 147181 | .{ ._, ._ps, .shuf, .dst0x, .src0x, .ui(0b01), ._ }, |
| 147182 | .{ ._, ._ss, .add, .dst0x, .tmp0x, ._, ._ }, |
| 147183 | } }, |
| 147184 | }, .{ |
| 147185 | .required_features = .{ .avx, null, null, null }, |
| 147186 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 147187 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 147188 | .patterns = &.{ |
| 147189 | .{ .src = .{ .to_mem, .none, .none } }, |
| 147190 | }, |
| 147191 | .extra_temps = .{ |
| 147192 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 147193 | .unused, |
| 147194 | .unused, |
| 147195 | .unused, |
| 147196 | .unused, |
| 147197 | .unused, |
| 147198 | .unused, |
| 147199 | .unused, |
| 147200 | .unused, |
| 147201 | .unused, |
| 147202 | .unused, |
| 147203 | }, |
| 147204 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 147205 | .clobbers = .{ .eflags = true }, |
| 147206 | .each = .{ .once = &.{ |
| 147207 | .{ ._, ._, .mov, .tmp0p, .sia(4, .src0, .sub_unaligned_size), ._, ._ }, |
| 147208 | .{ ._, .v_ss, .mov, .dst0x, .mem(.src0d), ._, ._ }, |
| 147209 | .{ .@"0:", .v_ss, .add, .dst0x, .dst0x, .memia(.src0d, .tmp0, .add_unaligned_size), ._ }, |
| 147210 | .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ }, |
| 147211 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 147212 | } }, |
| 147213 | }, .{ |
| 147214 | .required_features = .{ .sse, null, null, null }, |
| 147215 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 147216 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 147217 | .patterns = &.{ |
| 147218 | .{ .src = .{ .to_mem, .none, .none } }, |
| 147219 | }, |
| 147220 | .extra_temps = .{ |
| 147221 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 147222 | .unused, |
| 147223 | .unused, |
| 147224 | .unused, |
| 147225 | .unused, |
| 147226 | .unused, |
| 147227 | .unused, |
| 147228 | .unused, |
| 147229 | .unused, |
| 147230 | .unused, |
| 147231 | .unused, |
| 147232 | }, |
| 147233 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 147234 | .clobbers = .{ .eflags = true }, |
| 147235 | .each = .{ .once = &.{ |
| 147236 | .{ ._, ._, .mov, .tmp0p, .sia(4, .src0, .sub_unaligned_size), ._, ._ }, |
| 147237 | .{ ._, ._ss, .mov, .dst0x, .mem(.src0d), ._, ._ }, |
| 147238 | .{ .@"0:", ._ss, .add, .dst0x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ }, |
| 147239 | .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ }, |
| 147240 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 147241 | } }, |
| 147242 | }, .{ |
| 147243 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 147244 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 147245 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 147246 | .patterns = &.{ |
| 147247 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147248 | }, |
| 147249 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147250 | .each = .{ .once = &.{ |
| 147251 | .{ ._, .vh_pd, .add, .dst0x, .src0x, .src0x, ._ }, |
| 147252 | } }, |
| 147253 | }, .{ |
| 147254 | .required_features = .{ .avx, null, null, null }, |
| 147255 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 147256 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 147257 | .patterns = &.{ |
| 147258 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147259 | }, |
| 147260 | .extra_temps = .{ |
| 147261 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 147262 | .unused, |
| 147263 | .unused, |
| 147264 | .unused, |
| 147265 | .unused, |
| 147266 | .unused, |
| 147267 | .unused, |
| 147268 | .unused, |
| 147269 | .unused, |
| 147270 | .unused, |
| 147271 | .unused, |
| 147272 | }, |
| 147273 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147274 | .each = .{ .once = &.{ |
| 147275 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 147276 | .{ ._, .v_sd, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 147277 | } }, |
| 147278 | }, .{ |
| 147279 | .required_features = .{ .sse3, .fast_hops, null, null }, |
| 147280 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 147281 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 147282 | .patterns = &.{ |
| 147283 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 147284 | }, |
| 147285 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 147286 | .each = .{ .once = &.{ |
| 147287 | .{ ._, .h_pd, .add, .dst0x, .src0x, ._, ._ }, |
| 147288 | } }, |
| 147289 | }, .{ |
| 147290 | .required_features = .{ .sse2, null, null, null }, |
| 147291 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 147292 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 147293 | .patterns = &.{ |
| 147294 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 147295 | }, |
| 147296 | .extra_temps = .{ |
| 147297 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 147298 | .unused, |
| 147299 | .unused, |
| 147300 | .unused, |
| 147301 | .unused, |
| 147302 | .unused, |
| 147303 | .unused, |
| 147304 | .unused, |
| 147305 | .unused, |
| 147306 | .unused, |
| 147307 | .unused, |
| 147308 | }, |
| 147309 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 147310 | .each = .{ .once = &.{ |
| 147311 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 147312 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 147313 | .{ ._, ._sd, .add, .dst0x, .tmp0x, ._, ._ }, |
| 147314 | } }, |
| 147315 | }, .{ |
| 147316 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 147317 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 147318 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 147319 | .patterns = &.{ |
| 147320 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147321 | }, |
| 147322 | .extra_temps = .{ |
| 147323 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 147324 | .unused, |
| 147325 | .unused, |
| 147326 | .unused, |
| 147327 | .unused, |
| 147328 | .unused, |
| 147329 | .unused, |
| 147330 | .unused, |
| 147331 | .unused, |
| 147332 | .unused, |
| 147333 | .unused, |
| 147334 | }, |
| 147335 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147336 | .each = .{ .once = &.{ |
| 147337 | .{ ._, .vh_pd, .add, .tmp0x, .src0x, .src0x, ._ }, |
| 147338 | .{ ._, .v_f128, .extract, .dst0x, .src0y, .ui(1), ._ }, |
| 147339 | .{ ._, .v_sd, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 147340 | } }, |
| 147341 | }, .{ |
| 147342 | .required_features = .{ .avx, null, null, null }, |
| 147343 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 147344 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 147345 | .patterns = &.{ |
| 147346 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147347 | }, |
| 147348 | .extra_temps = .{ |
| 147349 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 147350 | .unused, |
| 147351 | .unused, |
| 147352 | .unused, |
| 147353 | .unused, |
| 147354 | .unused, |
| 147355 | .unused, |
| 147356 | .unused, |
| 147357 | .unused, |
| 147358 | .unused, |
| 147359 | .unused, |
| 147360 | }, |
| 147361 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147362 | .each = .{ .once = &.{ |
| 147363 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 147364 | .{ ._, .v_sd, .add, .tmp0x, .src0x, .tmp0x, ._ }, |
| 147365 | .{ ._, .v_ps, .movhl, .dst0x, .src0x, .src0x, ._ }, |
| 147366 | .{ ._, .v_sd, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 147367 | } }, |
| 147368 | }, .{ |
| 147369 | .required_features = .{ .avx, null, null, null }, |
| 147370 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 147371 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 147372 | .patterns = &.{ |
| 147373 | .{ .src = .{ .to_mem, .none, .none } }, |
| 147374 | }, |
| 147375 | .extra_temps = .{ |
| 147376 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 147377 | .unused, |
| 147378 | .unused, |
| 147379 | .unused, |
| 147380 | .unused, |
| 147381 | .unused, |
| 147382 | .unused, |
| 147383 | .unused, |
| 147384 | .unused, |
| 147385 | .unused, |
| 147386 | .unused, |
| 147387 | }, |
| 147388 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 147389 | .clobbers = .{ .eflags = true }, |
| 147390 | .each = .{ .once = &.{ |
| 147391 | .{ ._, ._, .mov, .tmp0p, .sia(8, .src0, .sub_unaligned_size), ._, ._ }, |
| 147392 | .{ ._, .v_sd, .mov, .dst0x, .mem(.src0q), ._, ._ }, |
| 147393 | .{ .@"0:", .v_sd, .add, .dst0x, .dst0x, .memia(.src0q, .tmp0, .add_unaligned_size), ._ }, |
| 147394 | .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ }, |
| 147395 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 147396 | } }, |
| 147397 | }, .{ |
| 147398 | .required_features = .{ .sse2, null, null, null }, |
| 147399 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 147400 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 147401 | .patterns = &.{ |
| 147402 | .{ .src = .{ .to_mem, .none, .none } }, |
| 147403 | }, |
| 147404 | .extra_temps = .{ |
| 147405 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 147406 | .unused, |
| 147407 | .unused, |
| 147408 | .unused, |
| 147409 | .unused, |
| 147410 | .unused, |
| 147411 | .unused, |
| 147412 | .unused, |
| 147413 | .unused, |
| 147414 | .unused, |
| 147415 | .unused, |
| 147416 | }, |
| 147417 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 147418 | .clobbers = .{ .eflags = true }, |
| 147419 | .each = .{ .once = &.{ |
| 147420 | .{ ._, ._, .mov, .tmp0p, .sia(8, .src0, .sub_unaligned_size), ._, ._ }, |
| 147421 | .{ ._, ._sd, .mov, .dst0x, .mem(.src0q), ._, ._ }, |
| 147422 | .{ .@"0:", ._sd, .add, .dst0x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ }, |
| 147423 | .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ }, |
| 147424 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 147425 | } }, |
| 147426 | }, .{ |
| 147427 | .required_features = .{ .x87, null, null, null }, |
| 147428 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 147429 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 147430 | .patterns = &.{ |
| 147431 | .{ .src = .{ .to_mem, .none, .none } }, |
| 147432 | }, |
| 147433 | .extra_temps = .{ |
| 147434 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 147435 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 147436 | .unused, |
| 147437 | .unused, |
| 147438 | .unused, |
| 147439 | .unused, |
| 147440 | .unused, |
| 147441 | .unused, |
| 147442 | .unused, |
| 147443 | .unused, |
| 147444 | .unused, |
| 147445 | }, |
| 147446 | .dst_temps = .{ .mem, .unused }, |
| 147447 | .clobbers = .{ .eflags = true }, |
| 147448 | .each = .{ .once = &.{ |
| 147449 | .{ ._, ._, .mov, .tmp0p, .sia(8, .src0, .sub_unaligned_size), ._, ._ }, |
| 147450 | .{ ._, .f_, .ld, .mem(.src0q), ._, ._, ._ }, |
| 147451 | .{ .@"0:", .f_, .add, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 147452 | .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ }, |
| 147453 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 147454 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 147455 | } }, |
| 147456 | }, .{ |
| 147457 | .required_features = .{ .x87, null, null, null }, |
| 147458 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 147459 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 147460 | .patterns = &.{ |
| 147461 | .{ .src = .{ .to_mem, .none, .none } }, |
| 147462 | }, |
| 147463 | .extra_temps = .{ |
| 147464 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 147465 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 147466 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 147467 | .unused, |
| 147468 | .unused, |
| 147469 | .unused, |
| 147470 | .unused, |
| 147471 | .unused, |
| 147472 | .unused, |
| 147473 | .unused, |
| 147474 | .unused, |
| 147475 | }, |
| 147476 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 147477 | .clobbers = .{ .eflags = true }, |
| 147478 | .each = .{ .once = &.{ |
| 147479 | .{ ._, ._, .mov, .tmp0p, .sia(16, .src0, .sub_unaligned_size), ._, ._ }, |
| 147480 | .{ ._, .f_, .ld, .mem(.src0t), ._, ._, ._ }, |
| 147481 | .{ .@"0:", .f_, .ld, .memia(.src0t, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 147482 | .{ ._, .f_p, .add, ._, ._, ._, ._ }, |
| 147483 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| 147484 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 147485 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 147486 | } }, |
| 147487 | }, .{ |
| 147488 | .required_features = .{ .avx, null, null, null }, |
| 147489 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 147490 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 147491 | .patterns = &.{ |
| 147492 | .{ .src = .{ .to_mem, .none, .none } }, |
| 147493 | }, |
| 147494 | .call_frame = .{ .alignment = .@"16" }, |
| 147495 | .extra_temps = .{ |
| 147496 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 147497 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 147498 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addtf3" } } }, |
| 147499 | .unused, |
| 147500 | .unused, |
| 147501 | .unused, |
| 147502 | .unused, |
| 147503 | .unused, |
| 147504 | .unused, |
| 147505 | .unused, |
| 147506 | .unused, |
| 147507 | }, |
| 147508 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 147509 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 147510 | .each = .{ .once = &.{ |
| 147511 | .{ ._, ._, .mov, .tmp0p, .sia(16, .src0, .sub_unaligned_size), ._, ._ }, |
| 147512 | .{ ._, .v_dqa, .mov, .dst0x, .mem(.src0x), ._, ._ }, |
| 147513 | .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, |
| 147514 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 147515 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| 147516 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 147517 | } }, |
| 147518 | }, .{ |
| 147519 | .required_features = .{ .sse2, null, null, null }, |
| 147520 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 147521 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 147522 | .patterns = &.{ |
| 147523 | .{ .src = .{ .to_mem, .none, .none } }, |
| 147524 | }, |
| 147525 | .call_frame = .{ .alignment = .@"16" }, |
| 147526 | .extra_temps = .{ |
| 147527 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 147528 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 147529 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addtf3" } } }, |
| 147530 | .unused, |
| 147531 | .unused, |
| 147532 | .unused, |
| 147533 | .unused, |
| 147534 | .unused, |
| 147535 | .unused, |
| 147536 | .unused, |
| 147537 | .unused, |
| 147538 | }, |
| 147539 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 147540 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 147541 | .each = .{ .once = &.{ |
| 147542 | .{ ._, ._, .mov, .tmp0p, .sia(16, .src0, .sub_unaligned_size), ._, ._ }, |
| 147543 | .{ ._, ._dqa, .mov, .dst0x, .mem(.src0x), ._, ._ }, |
| 147544 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, |
| 147545 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 147546 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| 147547 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 147548 | } }, |
| 147549 | }, .{ |
| 147550 | .required_features = .{ .sse, null, null, null }, |
| 147551 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 147552 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 147553 | .patterns = &.{ |
| 147554 | .{ .src = .{ .to_mem, .none, .none } }, |
| 147555 | }, |
| 147556 | .call_frame = .{ .alignment = .@"16" }, |
| 147557 | .extra_temps = .{ |
| 147558 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 147559 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 147560 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addtf3" } } }, |
| 147561 | .unused, |
| 147562 | .unused, |
| 147563 | .unused, |
| 147564 | .unused, |
| 147565 | .unused, |
| 147566 | .unused, |
| 147567 | .unused, |
| 147568 | .unused, |
| 147569 | }, |
| 147570 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 147571 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 147572 | .each = .{ .once = &.{ |
| 147573 | .{ ._, ._, .mov, .tmp0p, .sia(16, .src0, .sub_unaligned_size), ._, ._ }, |
| 147574 | .{ ._, ._ps, .mova, .dst0x, .mem(.src0x), ._, ._ }, |
| 147575 | .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, |
| 147576 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 147577 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| 147578 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 147579 | } }, |
| 147580 | } }, |
| 147581 | .Mul => comptime &.{ .{ |
| 147582 | .required_features = .{ .avx, null, null, null }, |
| 147583 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147584 | .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 147585 | .patterns = &.{ |
| 147586 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147587 | }, |
| 147588 | .extra_temps = .{ |
| 147589 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147590 | .unused, |
| 147591 | .unused, |
| 147592 | .unused, |
| 147593 | .unused, |
| 147594 | .unused, |
| 147595 | .unused, |
| 147596 | .unused, |
| 147597 | .unused, |
| 147598 | .unused, |
| 147599 | .unused, |
| 147600 | }, |
| 147601 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147602 | .each = .{ .once = &.{ |
| 147603 | .{ ._, .vp_w, .srl, .tmp0x, .src0x, .ui(8), ._ }, |
| 147604 | .{ ._, .vp_w, .mull, .dst0x, .src0x, .tmp0x, ._ }, |
| 147605 | } }, |
| 147606 | }, .{ |
| 147607 | .required_features = .{ .sse2, null, null, null }, |
| 147608 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147609 | .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .byte } }, .any, .any }, |
| 147610 | .patterns = &.{ |
| 147611 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 147612 | }, |
| 147613 | .extra_temps = .{ |
| 147614 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147615 | .unused, |
| 147616 | .unused, |
| 147617 | .unused, |
| 147618 | .unused, |
| 147619 | .unused, |
| 147620 | .unused, |
| 147621 | .unused, |
| 147622 | .unused, |
| 147623 | .unused, |
| 147624 | .unused, |
| 147625 | }, |
| 147626 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 147627 | .each = .{ .once = &.{ |
| 147628 | .{ ._, ._dqa, .mov, .tmp0x, .src0x, ._, ._ }, |
| 147629 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 147630 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 147631 | } }, |
| 147632 | }, .{ |
| 147633 | .required_features = .{ .avx, null, null, null }, |
| 147634 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147635 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 147636 | .patterns = &.{ |
| 147637 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147638 | }, |
| 147639 | .extra_temps = .{ |
| 147640 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147641 | .unused, |
| 147642 | .unused, |
| 147643 | .unused, |
| 147644 | .unused, |
| 147645 | .unused, |
| 147646 | .unused, |
| 147647 | .unused, |
| 147648 | .unused, |
| 147649 | .unused, |
| 147650 | .unused, |
| 147651 | }, |
| 147652 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147653 | .each = .{ .once = &.{ |
| 147654 | .{ ._, .vp_w, .srl, .tmp0x, .src0x, .ui(8), ._ }, |
| 147655 | .{ ._, .vp_w, .mull, .dst0x, .src0x, .tmp0x, ._ }, |
| 147656 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 147657 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 147658 | } }, |
| 147659 | }, .{ |
| 147660 | .required_features = .{ .sse2, null, null, null }, |
| 147661 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147662 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 147663 | .patterns = &.{ |
| 147664 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 147665 | }, |
| 147666 | .extra_temps = .{ |
| 147667 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147668 | .unused, |
| 147669 | .unused, |
| 147670 | .unused, |
| 147671 | .unused, |
| 147672 | .unused, |
| 147673 | .unused, |
| 147674 | .unused, |
| 147675 | .unused, |
| 147676 | .unused, |
| 147677 | .unused, |
| 147678 | }, |
| 147679 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 147680 | .each = .{ .once = &.{ |
| 147681 | .{ ._, ._dqa, .mov, .tmp0x, .src0x, ._, ._ }, |
| 147682 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 147683 | .{ ._, .p_w, .mull, .tmp0x, .src0x, ._, ._ }, |
| 147684 | .{ ._, .p_w, .shufl, .dst0x, .tmp0x, .ui(0b01), ._ }, |
| 147685 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 147686 | } }, |
| 147687 | }, .{ |
| 147688 | .required_features = .{ .avx, null, null, null }, |
| 147689 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147690 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 147691 | .patterns = &.{ |
| 147692 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147693 | }, |
| 147694 | .extra_temps = .{ |
| 147695 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147696 | .unused, |
| 147697 | .unused, |
| 147698 | .unused, |
| 147699 | .unused, |
| 147700 | .unused, |
| 147701 | .unused, |
| 147702 | .unused, |
| 147703 | .unused, |
| 147704 | .unused, |
| 147705 | .unused, |
| 147706 | }, |
| 147707 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147708 | .each = .{ .once = &.{ |
| 147709 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 147710 | .{ ._, .vp_w, .mull, .tmp0x, .src0x, .tmp0x, ._ }, |
| 147711 | .{ ._, .vp_w, .srl, .dst0x, .src0x, .ui(8), ._ }, |
| 147712 | .{ ._, .vp_w, .mull, .dst0x, .tmp0x, .dst0x, ._ }, |
| 147713 | } }, |
| 147714 | }, .{ |
| 147715 | .required_features = .{ .sse2, null, null, null }, |
| 147716 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147717 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any }, |
| 147718 | .patterns = &.{ |
| 147719 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 147720 | }, |
| 147721 | .extra_temps = .{ |
| 147722 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147723 | .unused, |
| 147724 | .unused, |
| 147725 | .unused, |
| 147726 | .unused, |
| 147727 | .unused, |
| 147728 | .unused, |
| 147729 | .unused, |
| 147730 | .unused, |
| 147731 | .unused, |
| 147732 | .unused, |
| 147733 | }, |
| 147734 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 147735 | .each = .{ .once = &.{ |
| 147736 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 147737 | .{ ._, .p_w, .mull, .tmp0x, .src0x, ._, ._ }, |
| 147738 | .{ ._, .p_w, .srl, .dst0x, .ui(8), ._, ._ }, |
| 147739 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 147740 | } }, |
| 147741 | }, .{ |
| 147742 | .required_features = .{ .avx, null, null, null }, |
| 147743 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147744 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 147745 | .patterns = &.{ |
| 147746 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147747 | }, |
| 147748 | .extra_temps = .{ |
| 147749 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147750 | .unused, |
| 147751 | .unused, |
| 147752 | .unused, |
| 147753 | .unused, |
| 147754 | .unused, |
| 147755 | .unused, |
| 147756 | .unused, |
| 147757 | .unused, |
| 147758 | .unused, |
| 147759 | .unused, |
| 147760 | }, |
| 147761 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147762 | .each = .{ .once = &.{ |
| 147763 | .{ ._, .vp_w, .srl, .tmp0x, .src0x, .ui(8), ._ }, |
| 147764 | .{ ._, .vp_w, .mull, .dst0x, .src0x, .tmp0x, ._ }, |
| 147765 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 147766 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 147767 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 147768 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 147769 | } }, |
| 147770 | }, .{ |
| 147771 | .required_features = .{ .sse2, null, null, null }, |
| 147772 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147773 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 147774 | .patterns = &.{ |
| 147775 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147776 | }, |
| 147777 | .extra_temps = .{ |
| 147778 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147779 | .unused, |
| 147780 | .unused, |
| 147781 | .unused, |
| 147782 | .unused, |
| 147783 | .unused, |
| 147784 | .unused, |
| 147785 | .unused, |
| 147786 | .unused, |
| 147787 | .unused, |
| 147788 | .unused, |
| 147789 | }, |
| 147790 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147791 | .each = .{ .once = &.{ |
| 147792 | .{ ._, ._dqa, .mov, .tmp0x, .src0x, ._, ._ }, |
| 147793 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 147794 | .{ ._, .p_w, .mull, .tmp0x, .src0x, ._, ._ }, |
| 147795 | .{ ._, .p_w, .shufl, .dst0x, .tmp0x, .ui(0b11_10), ._ }, |
| 147796 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 147797 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 147798 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 147799 | } }, |
| 147800 | }, .{ |
| 147801 | .required_features = .{ .avx, null, null, null }, |
| 147802 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147803 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 147804 | .patterns = &.{ |
| 147805 | .{ .src = .{ .mem, .none, .none } }, |
| 147806 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147807 | }, |
| 147808 | .extra_temps = .{ |
| 147809 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 147810 | .{ .type = .vector_8_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 147811 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147812 | .unused, |
| 147813 | .unused, |
| 147814 | .unused, |
| 147815 | .unused, |
| 147816 | .unused, |
| 147817 | .unused, |
| 147818 | .unused, |
| 147819 | .unused, |
| 147820 | }, |
| 147821 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147822 | .each = .{ .once = &.{ |
| 147823 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 147824 | .{ ._, .v_q, .mov, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 147825 | .{ ._, .vp_, .andn, .dst0x, .tmp2x, .src0x, ._ }, |
| 147826 | .{ ._, .vp_b, .sub, .dst0x, .dst0x, .tmp2x, ._ }, |
| 147827 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 147828 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 147829 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 147830 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 147831 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 147832 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 147833 | } }, |
| 147834 | }, .{ |
| 147835 | .required_features = .{ .sse2, null, null, null }, |
| 147836 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147837 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any }, |
| 147838 | .patterns = &.{ |
| 147839 | .{ .src = .{ .mem, .none, .none } }, |
| 147840 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147841 | }, |
| 147842 | .extra_temps = .{ |
| 147843 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 147844 | .{ .type = .vector_8_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 147845 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147846 | .unused, |
| 147847 | .unused, |
| 147848 | .unused, |
| 147849 | .unused, |
| 147850 | .unused, |
| 147851 | .unused, |
| 147852 | .unused, |
| 147853 | .unused, |
| 147854 | }, |
| 147855 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 147856 | .each = .{ .once = &.{ |
| 147857 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 147858 | .{ ._, ._q, .mov, .tmp2x, .lea(.tmp0q), ._, ._ }, |
| 147859 | .{ ._, ._dqa, .mov, .dst0x, .tmp2x, ._, ._ }, |
| 147860 | .{ ._, .p_, .andn, .dst0x, .src0x, ._, ._ }, |
| 147861 | .{ ._, .p_b, .sub, .dst0x, .tmp2x, ._, ._ }, |
| 147862 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 147863 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 147864 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 147865 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 147866 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 147867 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 147868 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 147869 | } }, |
| 147870 | }, .{ |
| 147871 | .required_features = .{ .avx, null, null, null }, |
| 147872 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147873 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 147874 | .patterns = &.{ |
| 147875 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147876 | }, |
| 147877 | .extra_temps = .{ |
| 147878 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147879 | .unused, |
| 147880 | .unused, |
| 147881 | .unused, |
| 147882 | .unused, |
| 147883 | .unused, |
| 147884 | .unused, |
| 147885 | .unused, |
| 147886 | .unused, |
| 147887 | .unused, |
| 147888 | .unused, |
| 147889 | }, |
| 147890 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147891 | .each = .{ .once = &.{ |
| 147892 | .{ ._, .vp_w, .srl, .tmp0x, .src0x, .ui(8), ._ }, |
| 147893 | .{ ._, .vp_w, .mull, .dst0x, .src0x, .tmp0x, ._ }, |
| 147894 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 147895 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 147896 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 147897 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 147898 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 147899 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 147900 | } }, |
| 147901 | }, .{ |
| 147902 | .required_features = .{ .sse2, null, null, null }, |
| 147903 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147904 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 147905 | .patterns = &.{ |
| 147906 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147907 | }, |
| 147908 | .extra_temps = .{ |
| 147909 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147910 | .unused, |
| 147911 | .unused, |
| 147912 | .unused, |
| 147913 | .unused, |
| 147914 | .unused, |
| 147915 | .unused, |
| 147916 | .unused, |
| 147917 | .unused, |
| 147918 | .unused, |
| 147919 | .unused, |
| 147920 | }, |
| 147921 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147922 | .each = .{ .once = &.{ |
| 147923 | .{ ._, ._dqa, .mov, .tmp0x, .src0x, ._, ._ }, |
| 147924 | .{ ._, .p_w, .srl, .tmp0x, .ui(8), ._, ._ }, |
| 147925 | .{ ._, .p_w, .mull, .tmp0x, .src0x, ._, ._ }, |
| 147926 | .{ ._, .p_d, .shuf, .dst0x, .tmp0x, .ui(0b11_10), ._ }, |
| 147927 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 147928 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 147929 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 147930 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 147931 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 147932 | } }, |
| 147933 | }, .{ |
| 147934 | .required_features = .{ .avx, null, null, null }, |
| 147935 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147936 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 147937 | .patterns = &.{ |
| 147938 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147939 | }, |
| 147940 | .extra_temps = .{ |
| 147941 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 147942 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 147943 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147944 | .unused, |
| 147945 | .unused, |
| 147946 | .unused, |
| 147947 | .unused, |
| 147948 | .unused, |
| 147949 | .unused, |
| 147950 | .unused, |
| 147951 | .unused, |
| 147952 | }, |
| 147953 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 147954 | .each = .{ .once = &.{ |
| 147955 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 147956 | .{ ._, .v_dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 147957 | .{ ._, .vp_, .andn, .dst0x, .tmp2x, .src0x, ._ }, |
| 147958 | .{ ._, .vp_b, .sub, .dst0x, .dst0x, .tmp2x, ._ }, |
| 147959 | .{ ._, .vp_w, .srl, .tmp2x, .dst0x, .ui(8), ._ }, |
| 147960 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 147961 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 147962 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 147963 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 147964 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 147965 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 147966 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 147967 | } }, |
| 147968 | }, .{ |
| 147969 | .required_features = .{ .sse2, null, null, null }, |
| 147970 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 147971 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 147972 | .patterns = &.{ |
| 147973 | .{ .src = .{ .mem, .none, .none } }, |
| 147974 | .{ .src = .{ .to_sse, .none, .none } }, |
| 147975 | }, |
| 147976 | .extra_temps = .{ |
| 147977 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 147978 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 147979 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 147980 | .unused, |
| 147981 | .unused, |
| 147982 | .unused, |
| 147983 | .unused, |
| 147984 | .unused, |
| 147985 | .unused, |
| 147986 | .unused, |
| 147987 | .unused, |
| 147988 | }, |
| 147989 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 147990 | .each = .{ .once = &.{ |
| 147991 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 147992 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 147993 | .{ ._, ._dqa, .mov, .dst0x, .tmp2x, ._, ._ }, |
| 147994 | .{ ._, .p_, .andn, .dst0x, .src0x, ._, ._ }, |
| 147995 | .{ ._, .p_b, .sub, .dst0x, .tmp2x, ._, ._ }, |
| 147996 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 147997 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 147998 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 147999 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148000 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148001 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148002 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148003 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 148004 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148005 | } }, |
| 148006 | }, .{ |
| 148007 | .required_features = .{ .avx2, null, null, null }, |
| 148008 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148009 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 148010 | .patterns = &.{ |
| 148011 | .{ .src = .{ .to_sse, .none, .none } }, |
| 148012 | }, |
| 148013 | .extra_temps = .{ |
| 148014 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148015 | .unused, |
| 148016 | .unused, |
| 148017 | .unused, |
| 148018 | .unused, |
| 148019 | .unused, |
| 148020 | .unused, |
| 148021 | .unused, |
| 148022 | .unused, |
| 148023 | .unused, |
| 148024 | .unused, |
| 148025 | }, |
| 148026 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 148027 | .each = .{ .once = &.{ |
| 148028 | .{ ._, .vp_w, .srl, .tmp0y, .src0y, .ui(8), ._ }, |
| 148029 | .{ ._, .vp_w, .mull, .dst0y, .src0y, .tmp0y, ._ }, |
| 148030 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 148031 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148032 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 148033 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148034 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 148035 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148036 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 148037 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148038 | } }, |
| 148039 | }, .{ |
| 148040 | .required_features = .{ .avx, null, null, null }, |
| 148041 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148042 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 148043 | .patterns = &.{ |
| 148044 | .{ .src = .{ .to_sse, .none, .none } }, |
| 148045 | }, |
| 148046 | .extra_temps = .{ |
| 148047 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 148048 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 148049 | .unused, |
| 148050 | .unused, |
| 148051 | .unused, |
| 148052 | .unused, |
| 148053 | .unused, |
| 148054 | .unused, |
| 148055 | .unused, |
| 148056 | .unused, |
| 148057 | .unused, |
| 148058 | }, |
| 148059 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 148060 | .each = .{ .once = &.{ |
| 148061 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 148062 | .{ ._, .vp_w, .srl, .tmp1x, .src0x, .ui(8), ._ }, |
| 148063 | .{ ._, .vp_w, .mull, .dst0x, .src0x, .tmp1x, ._ }, |
| 148064 | .{ ._, .vp_w, .srl, .tmp1x, .tmp0x, .ui(8), ._ }, |
| 148065 | .{ ._, .vp_w, .mull, .tmp0x, .tmp0x, .tmp1x, ._ }, |
| 148066 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148067 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 148068 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148069 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 148070 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148071 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 148072 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148073 | } }, |
| 148074 | }, .{ |
| 148075 | .required_features = .{ .avx2, null, null, null }, |
| 148076 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148077 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 148078 | .patterns = &.{ |
| 148079 | .{ .src = .{ .mem, .none, .none } }, |
| 148080 | .{ .src = .{ .to_sse, .none, .none } }, |
| 148081 | }, |
| 148082 | .extra_temps = .{ |
| 148083 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 148084 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 148085 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148086 | .unused, |
| 148087 | .unused, |
| 148088 | .unused, |
| 148089 | .unused, |
| 148090 | .unused, |
| 148091 | .unused, |
| 148092 | .unused, |
| 148093 | .unused, |
| 148094 | }, |
| 148095 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 148096 | .each = .{ .once = &.{ |
| 148097 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 148098 | .{ ._, .v_dqa, .mov, .tmp2y, .lea(.tmp0y), ._, ._ }, |
| 148099 | .{ ._, .vp_, .andn, .dst0y, .tmp2y, .src0y, ._ }, |
| 148100 | .{ ._, .vp_b, .sub, .dst0y, .dst0y, .tmp2y, ._ }, |
| 148101 | .{ ._, .vp_w, .srl, .tmp2y, .dst0y, .ui(8), ._ }, |
| 148102 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp2y, ._ }, |
| 148103 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 148104 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148105 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148106 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148107 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148108 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148109 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 148110 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148111 | } }, |
| 148112 | }, .{ |
| 148113 | .required_features = .{ .avx, null, null, null }, |
| 148114 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148115 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 148116 | .patterns = &.{ |
| 148117 | .{ .src = .{ .mem, .none, .none } }, |
| 148118 | .{ .src = .{ .to_sse, .none, .none } }, |
| 148119 | }, |
| 148120 | .extra_temps = .{ |
| 148121 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 148122 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 148123 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148124 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148125 | .unused, |
| 148126 | .unused, |
| 148127 | .unused, |
| 148128 | .unused, |
| 148129 | .unused, |
| 148130 | .unused, |
| 148131 | .unused, |
| 148132 | }, |
| 148133 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 148134 | .each = .{ .once = &.{ |
| 148135 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 148136 | .{ ._, .v_ps, .mova, .tmp2y, .lea(.tmp0y), ._, ._ }, |
| 148137 | .{ ._, .v_ps, .andn, .tmp3y, .tmp2y, .src0y, ._ }, |
| 148138 | .{ ._, .vp_b, .sub, .dst0x, .tmp3x, .tmp2x, ._ }, |
| 148139 | .{ ._, .v_f128, .extract, .tmp2x, .tmp2y, .ui(1), ._ }, |
| 148140 | .{ ._, .v_f128, .extract, .tmp3x, .tmp3y, .ui(1), ._ }, |
| 148141 | .{ ._, .vp_b, .sub, .tmp2x, .tmp3x, .tmp2x, ._ }, |
| 148142 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 148143 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp3x, ._ }, |
| 148144 | .{ ._, .vp_w, .srl, .tmp3x, .tmp2x, .ui(8), ._ }, |
| 148145 | .{ ._, .vp_w, .mull, .tmp2x, .tmp2x, .tmp3x, ._ }, |
| 148146 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148147 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148148 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148149 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148150 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148151 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 148152 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148153 | } }, |
| 148154 | }, .{ |
| 148155 | .required_features = .{ .avx512f, null, null, null }, |
| 148156 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148157 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 148158 | .patterns = &.{ |
| 148159 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148160 | }, |
| 148161 | .extra_temps = .{ |
| 148162 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148163 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148164 | .unused, |
| 148165 | .unused, |
| 148166 | .unused, |
| 148167 | .unused, |
| 148168 | .unused, |
| 148169 | .unused, |
| 148170 | .unused, |
| 148171 | .unused, |
| 148172 | .unused, |
| 148173 | }, |
| 148174 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 148175 | .each = .{ .once = &.{ |
| 148176 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 148177 | .{ ._, .v_dqa, .mov, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 148178 | .{ ._, .vp_w, .srl, .tmp1y, .dst0y, .ui(8), ._ }, |
| 148179 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp1y, ._ }, |
| 148180 | .{ ._, .vp_w, .srl, .tmp1y, .tmp0y, .ui(8), ._ }, |
| 148181 | .{ ._, .vp_w, .mull, .tmp0y, .tmp0y, .tmp1y, ._ }, |
| 148182 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp0y, ._ }, |
| 148183 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 148184 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148185 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 148186 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148187 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 148188 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148189 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 148190 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148191 | } }, |
| 148192 | }, .{ |
| 148193 | .required_features = .{ .avx512f, null, null, null }, |
| 148194 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148195 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 148196 | .patterns = &.{ |
| 148197 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148198 | }, |
| 148199 | .extra_temps = .{ |
| 148200 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 148201 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 148202 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148203 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148204 | .unused, |
| 148205 | .unused, |
| 148206 | .unused, |
| 148207 | .unused, |
| 148208 | .unused, |
| 148209 | .unused, |
| 148210 | .unused, |
| 148211 | }, |
| 148212 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 148213 | .each = .{ .once = &.{ |
| 148214 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 148215 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 148216 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 148217 | .{ ._, .vp_, .andn, .tmp3y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 148218 | .{ ._, .vp_b, .sub, .tmp2y, .tmp3y, .tmp2y, ._ }, |
| 148219 | .{ ._, .vp_, .andn, .tmp3y, .dst0y, .mem(.src0y), ._ }, |
| 148220 | .{ ._, .vp_b, .sub, .dst0y, .tmp3y, .dst0y, ._ }, |
| 148221 | .{ ._, .vp_w, .srl, .tmp3y, .tmp2y, .ui(8), ._ }, |
| 148222 | .{ ._, .vp_w, .mull, .tmp2y, .tmp2y, .tmp3y, ._ }, |
| 148223 | .{ ._, .vp_w, .srl, .tmp3y, .dst0y, .ui(8), ._ }, |
| 148224 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp3y, ._ }, |
| 148225 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp2y, ._ }, |
| 148226 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 148227 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148228 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148229 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148230 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148231 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148232 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 148233 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148234 | } }, |
| 148235 | }, .{ |
| 148236 | .required_features = .{ .avx2, null, null, null }, |
| 148237 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148238 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 148239 | .patterns = &.{ |
| 148240 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148241 | }, |
| 148242 | .extra_temps = .{ |
| 148243 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 148244 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148245 | .unused, |
| 148246 | .unused, |
| 148247 | .unused, |
| 148248 | .unused, |
| 148249 | .unused, |
| 148250 | .unused, |
| 148251 | .unused, |
| 148252 | .unused, |
| 148253 | .unused, |
| 148254 | }, |
| 148255 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 148256 | .clobbers = .{ .eflags = true }, |
| 148257 | .each = .{ .once = &.{ |
| 148258 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_unaligned_size), ._, ._ }, |
| 148259 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 148260 | .{ ._, .vp_w, .srl, .tmp1y, .dst0y, .ui(8), ._ }, |
| 148261 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp1y, ._ }, |
| 148262 | .{ .@"0:", .vp_w, .movzxb, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| 148263 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp1y, ._ }, |
| 148264 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 148265 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 148266 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 148267 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 148268 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 148269 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 148270 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 148271 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 148272 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 148273 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 148274 | } }, |
| 148275 | }, .{ |
| 148276 | .required_features = .{ .avx, null, null, null }, |
| 148277 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148278 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 148279 | .patterns = &.{ |
| 148280 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148281 | }, |
| 148282 | .extra_temps = .{ |
| 148283 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 148284 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 148285 | .unused, |
| 148286 | .unused, |
| 148287 | .unused, |
| 148288 | .unused, |
| 148289 | .unused, |
| 148290 | .unused, |
| 148291 | .unused, |
| 148292 | .unused, |
| 148293 | .unused, |
| 148294 | }, |
| 148295 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 148296 | .clobbers = .{ .eflags = true }, |
| 148297 | .each = .{ .once = &.{ |
| 148298 | .{ ._, ._, .mov, .tmp0d, .sia(-24, .src0, .add_unaligned_size), ._, ._ }, |
| 148299 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 148300 | .{ ._, .vp_w, .srl, .tmp1x, .dst0x, .ui(8), ._ }, |
| 148301 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 148302 | .{ .@"0:", .vp_w, .movzxb, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 148303 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 148304 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 148305 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 148306 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 148307 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 148308 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 148309 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 148310 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 148311 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 148312 | } }, |
| 148313 | }, .{ |
| 148314 | .required_features = .{ .sse4_1, null, null, null }, |
| 148315 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148316 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 148317 | .patterns = &.{ |
| 148318 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148319 | }, |
| 148320 | .extra_temps = .{ |
| 148321 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 148322 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 148323 | .unused, |
| 148324 | .unused, |
| 148325 | .unused, |
| 148326 | .unused, |
| 148327 | .unused, |
| 148328 | .unused, |
| 148329 | .unused, |
| 148330 | .unused, |
| 148331 | .unused, |
| 148332 | }, |
| 148333 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 148334 | .clobbers = .{ .eflags = true }, |
| 148335 | .each = .{ .once = &.{ |
| 148336 | .{ ._, ._, .mov, .tmp0d, .sia(-24, .src0, .add_unaligned_size), ._, ._ }, |
| 148337 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 148338 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 148339 | .{ ._, .p_w, .srl, .tmp1x, .ui(8), ._, ._ }, |
| 148340 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 148341 | .{ .@"0:", .p_w, .movzxb, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 148342 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 148343 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 148344 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 148345 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 148346 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 148347 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 148348 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 148349 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 148350 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 148351 | } }, |
| 148352 | }, .{ |
| 148353 | .required_features = .{ .sse2, null, null, null }, |
| 148354 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148355 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 148356 | .patterns = &.{ |
| 148357 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148358 | }, |
| 148359 | .extra_temps = .{ |
| 148360 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 148361 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 148362 | .unused, |
| 148363 | .unused, |
| 148364 | .unused, |
| 148365 | .unused, |
| 148366 | .unused, |
| 148367 | .unused, |
| 148368 | .unused, |
| 148369 | .unused, |
| 148370 | .unused, |
| 148371 | }, |
| 148372 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 148373 | .clobbers = .{ .eflags = true }, |
| 148374 | .each = .{ .once = &.{ |
| 148375 | .{ ._, ._, .mov, .tmp0d, .sia(-24, .src0, .add_unaligned_size), ._, ._ }, |
| 148376 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 148377 | .{ ._, ._dqa, .mov, .tmp1x, .dst0x, ._, ._ }, |
| 148378 | .{ ._, .p_w, .srl, .tmp1x, .ui(8), ._, ._ }, |
| 148379 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 148380 | .{ .@"0:", ._q, .mov, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 148381 | .{ ._, .p_, .unpcklbw, .tmp1x, .tmp1x, ._, ._ }, |
| 148382 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 148383 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 148384 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 148385 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 148386 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 148387 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 148388 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 148389 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 148390 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 148391 | } }, |
| 148392 | }, .{ |
| 148393 | .required_features = .{ .avx512f, null, null, null }, |
| 148394 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148395 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .byte } }, .any, .any }, |
| 148396 | .patterns = &.{ |
| 148397 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148398 | }, |
| 148399 | .extra_temps = .{ |
| 148400 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 148401 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 148402 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148403 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148404 | .unused, |
| 148405 | .unused, |
| 148406 | .unused, |
| 148407 | .unused, |
| 148408 | .unused, |
| 148409 | .unused, |
| 148410 | .unused, |
| 148411 | }, |
| 148412 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 148413 | .clobbers = .{ .eflags = true }, |
| 148414 | .each = .{ .once = &.{ |
| 148415 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 148416 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 148417 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 148418 | .{ ._, ._, .mov, .tmp0d, .sia(-96, .src0, .add_size), ._, ._ }, |
| 148419 | .{ ._, .vp_, .andn, .tmp3y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 148420 | .{ ._, .vp_b, .sub, .tmp2y, .tmp3y, .tmp2y, ._ }, |
| 148421 | .{ ._, .vp_, .andn, .tmp3y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 148422 | .{ ._, .vp_b, .sub, .dst0y, .tmp3y, .dst0y, ._ }, |
| 148423 | .{ ._, .vp_w, .srl, .tmp3y, .tmp2y, .ui(8), ._ }, |
| 148424 | .{ ._, .vp_w, .mull, .tmp2y, .tmp2y, .tmp3y, ._ }, |
| 148425 | .{ ._, .vp_w, .srl, .tmp3y, .dst0y, .ui(8), ._ }, |
| 148426 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp3y, ._ }, |
| 148427 | .{ .@"0:", .vp_w, .movzxb, .tmp3y, .memid(.src0x, .tmp0, 16), ._, ._ }, |
| 148428 | .{ ._, .vp_w, .mull, .tmp2y, .tmp2y, .tmp3y, ._ }, |
| 148429 | .{ ._, .vp_w, .movzxb, .tmp3y, .memi(.src0x, .tmp0), ._, ._ }, |
| 148430 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp3y, ._ }, |
| 148431 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 148432 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 148433 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp2y, ._ }, |
| 148434 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 148435 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148436 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148437 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148438 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148439 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148440 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 148441 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148442 | } }, |
| 148443 | }, .{ |
| 148444 | .required_features = .{ .avx2, null, null, null }, |
| 148445 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148446 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 148447 | .patterns = &.{ |
| 148448 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148449 | }, |
| 148450 | .extra_temps = .{ |
| 148451 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 148452 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 148453 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148454 | .unused, |
| 148455 | .unused, |
| 148456 | .unused, |
| 148457 | .unused, |
| 148458 | .unused, |
| 148459 | .unused, |
| 148460 | .unused, |
| 148461 | .unused, |
| 148462 | }, |
| 148463 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 148464 | .clobbers = .{ .eflags = true }, |
| 148465 | .each = .{ .once = &.{ |
| 148466 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 148467 | .{ ._, .v_dqa, .mov, .tmp2y, .lea(.tmp0y), ._, ._ }, |
| 148468 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 148469 | .{ ._, .vp_, .andn, .dst0y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 148470 | .{ ._, .vp_b, .sub, .dst0y, .dst0y, .tmp2y, ._ }, |
| 148471 | .{ ._, .vp_w, .srl, .tmp2y, .dst0y, .ui(8), ._ }, |
| 148472 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp2y, ._ }, |
| 148473 | .{ .@"0:", .vp_w, .movzxb, .tmp2y, .memi(.src0x, .tmp0), ._, ._ }, |
| 148474 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp2y, ._ }, |
| 148475 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 148476 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 148477 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 148478 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148479 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148480 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148481 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148482 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148483 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 148484 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148485 | } }, |
| 148486 | }, .{ |
| 148487 | .required_features = .{ .avx, null, null, null }, |
| 148488 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148489 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any }, |
| 148490 | .patterns = &.{ |
| 148491 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148492 | }, |
| 148493 | .extra_temps = .{ |
| 148494 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 148495 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 148496 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148497 | .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } }, |
| 148498 | .unused, |
| 148499 | .unused, |
| 148500 | .unused, |
| 148501 | .unused, |
| 148502 | .unused, |
| 148503 | .unused, |
| 148504 | .unused, |
| 148505 | }, |
| 148506 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 148507 | .clobbers = .{ .eflags = true }, |
| 148508 | .each = .{ .once = &.{ |
| 148509 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 148510 | .{ ._, .v_ps, .mova, .tmp2y, .lea(.tmp0y), ._, ._ }, |
| 148511 | .{ ._, ._, .mov, .tmp0d, .sia(-40, .src0, .add_size), ._, ._ }, |
| 148512 | .{ ._, .v_ps, .andn, .tmp3y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 148513 | .{ ._, .vp_b, .sub, .dst0x, .tmp3x, .tmp2x, ._ }, |
| 148514 | .{ ._, .v_f128, .extract, .tmp2x, .tmp2y, .ui(1), ._ }, |
| 148515 | .{ ._, .v_f128, .extract, .tmp3x, .tmp3y, .ui(1), ._ }, |
| 148516 | .{ ._, .vp_b, .sub, .tmp2x, .tmp3x, .tmp2x, ._ }, |
| 148517 | .{ ._, .vp_w, .srl, .tmp3x, .dst0x, .ui(8), ._ }, |
| 148518 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp3x, ._ }, |
| 148519 | .{ ._, .vp_w, .srl, .tmp3x, .tmp2x, .ui(8), ._ }, |
| 148520 | .{ ._, .vp_w, .mull, .tmp2x, .tmp2x, .tmp3x, ._ }, |
| 148521 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148522 | .{ .@"0:", .vp_w, .movzxb, .tmp2x, .memi(.src0q, .tmp0), ._, ._ }, |
| 148523 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148524 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 148525 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 148526 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148527 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148528 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148529 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148530 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 148531 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148532 | } }, |
| 148533 | }, .{ |
| 148534 | .required_features = .{ .sse4_1, null, null, null }, |
| 148535 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148536 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 148537 | .patterns = &.{ |
| 148538 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148539 | }, |
| 148540 | .extra_temps = .{ |
| 148541 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 148542 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 148543 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 148544 | .unused, |
| 148545 | .unused, |
| 148546 | .unused, |
| 148547 | .unused, |
| 148548 | .unused, |
| 148549 | .unused, |
| 148550 | .unused, |
| 148551 | .unused, |
| 148552 | }, |
| 148553 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 148554 | .clobbers = .{ .eflags = true }, |
| 148555 | .each = .{ .once = &.{ |
| 148556 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 148557 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 148558 | .{ ._, ._, .mov, .tmp0d, .sia(-24, .src0, .add_size), ._, ._ }, |
| 148559 | .{ ._, ._dqa, .mov, .dst0x, .tmp2x, ._, ._ }, |
| 148560 | .{ ._, .p_, .andn, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 148561 | .{ ._, .p_b, .sub, .dst0x, .tmp2x, ._, ._ }, |
| 148562 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 148563 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 148564 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148565 | .{ .@"0:", .p_w, .movzxb, .tmp2x, .memi(.src0q, .tmp0), ._, ._ }, |
| 148566 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148567 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 148568 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 148569 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148570 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148571 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148572 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148573 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 148574 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148575 | } }, |
| 148576 | }, .{ |
| 148577 | .required_features = .{ .sse2, null, null, null }, |
| 148578 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148579 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any }, |
| 148580 | .patterns = &.{ |
| 148581 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148582 | }, |
| 148583 | .extra_temps = .{ |
| 148584 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 148585 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 148586 | .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } }, |
| 148587 | .unused, |
| 148588 | .unused, |
| 148589 | .unused, |
| 148590 | .unused, |
| 148591 | .unused, |
| 148592 | .unused, |
| 148593 | .unused, |
| 148594 | .unused, |
| 148595 | }, |
| 148596 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 148597 | .clobbers = .{ .eflags = true }, |
| 148598 | .each = .{ .once = &.{ |
| 148599 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 148600 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 148601 | .{ ._, ._, .mov, .tmp0d, .sia(-24, .src0, .add_size), ._, ._ }, |
| 148602 | .{ ._, ._dqa, .mov, .dst0x, .tmp2x, ._, ._ }, |
| 148603 | .{ ._, .p_, .andn, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 148604 | .{ ._, .p_b, .sub, .dst0x, .tmp2x, ._, ._ }, |
| 148605 | .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ }, |
| 148606 | .{ ._, .p_w, .srl, .tmp2x, .ui(8), ._, ._ }, |
| 148607 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148608 | .{ .@"0:", ._q, .mov, .tmp2x, .memi(.src0q, .tmp0), ._, ._ }, |
| 148609 | .{ ._, .p_, .unpcklbw, .tmp2x, .tmp2x, ._, ._ }, |
| 148610 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148611 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 148612 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 148613 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148614 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148615 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148616 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148617 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 148618 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148619 | } }, |
| 148620 | }, .{ |
| 148621 | .required_features = .{ .slow_incdec, null, null, null }, |
| 148622 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148623 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 148624 | .patterns = &.{ |
| 148625 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148626 | }, |
| 148627 | .extra_temps = .{ |
| 148628 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 148629 | .unused, |
| 148630 | .unused, |
| 148631 | .unused, |
| 148632 | .unused, |
| 148633 | .unused, |
| 148634 | .unused, |
| 148635 | .unused, |
| 148636 | .unused, |
| 148637 | .unused, |
| 148638 | .unused, |
| 148639 | }, |
| 148640 | .dst_temps = .{ .{ .reg = .al }, .unused }, |
| 148641 | .clobbers = .{ .eflags = true }, |
| 148642 | .each = .{ .once = &.{ |
| 148643 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 148644 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 148645 | .{ .@"0:", ._, .mul, .memi(.src0b, .tmp0), ._, ._, ._ }, |
| 148646 | .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ }, |
| 148647 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 148648 | } }, |
| 148649 | }, .{ |
| 148650 | .dst_constraints = .{ .{ .int = .byte }, .any }, |
| 148651 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any }, |
| 148652 | .patterns = &.{ |
| 148653 | .{ .src = .{ .to_mem, .none, .none } }, |
| 148654 | }, |
| 148655 | .extra_temps = .{ |
| 148656 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 148657 | .unused, |
| 148658 | .unused, |
| 148659 | .unused, |
| 148660 | .unused, |
| 148661 | .unused, |
| 148662 | .unused, |
| 148663 | .unused, |
| 148664 | .unused, |
| 148665 | .unused, |
| 148666 | .unused, |
| 148667 | }, |
| 148668 | .dst_temps = .{ .{ .reg = .al }, .unused }, |
| 148669 | .clobbers = .{ .eflags = true }, |
| 148670 | .each = .{ .once = &.{ |
| 148671 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size), ._, ._ }, |
| 148672 | .{ ._, ._, .movzx, .dst0d, .memad(.src0b, .add_unaligned_size, -1), ._, ._ }, |
| 148673 | .{ .@"0:", ._, .mul, .memi(.src0b, .tmp0), ._, ._, ._ }, |
| 148674 | .{ ._, ._c, .de, .tmp0d, ._, ._, ._ }, |
| 148675 | .{ ._, ._ns, .j, .@"0b", ._, ._, ._ }, |
| 148676 | } }, |
| 148677 | }, .{ |
| 148678 | .required_features = .{ .avx, null, null, null }, |
| 148679 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 148680 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 148681 | .patterns = &.{ |
| 148682 | .{ .src = .{ .to_sse, .none, .none } }, |
| 148683 | }, |
| 148684 | .extra_temps = .{ |
| 148685 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 148686 | .unused, |
| 148687 | .unused, |
| 148688 | .unused, |
| 148689 | .unused, |
| 148690 | .unused, |
| 148691 | .unused, |
| 148692 | .unused, |
| 148693 | .unused, |
| 148694 | .unused, |
| 148695 | .unused, |
| 148696 | }, |
| 148697 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 148698 | .each = .{ .once = &.{ |
| 148699 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 148700 | .{ ._, .vp_w, .mull, .dst0x, .src0x, .tmp0x, ._ }, |
| 148701 | } }, |
| 148702 | }, .{ |
| 148703 | .required_features = .{ .sse2, null, null, null }, |
| 148704 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 148705 | .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 148706 | .patterns = &.{ |
| 148707 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 148708 | }, |
| 148709 | .extra_temps = .{ |
| 148710 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 148711 | .unused, |
| 148712 | .unused, |
| 148713 | .unused, |
| 148714 | .unused, |
| 148715 | .unused, |
| 148716 | .unused, |
| 148717 | .unused, |
| 148718 | .unused, |
| 148719 | .unused, |
| 148720 | .unused, |
| 148721 | }, |
| 148722 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 148723 | .each = .{ .once = &.{ |
| 148724 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 148725 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 148726 | } }, |
| 148727 | }, .{ |
| 148728 | .required_features = .{ .avx, null, null, null }, |
| 148729 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 148730 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 148731 | .patterns = &.{ |
| 148732 | .{ .src = .{ .to_sse, .none, .none } }, |
| 148733 | }, |
| 148734 | .extra_temps = .{ |
| 148735 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 148736 | .unused, |
| 148737 | .unused, |
| 148738 | .unused, |
| 148739 | .unused, |
| 148740 | .unused, |
| 148741 | .unused, |
| 148742 | .unused, |
| 148743 | .unused, |
| 148744 | .unused, |
| 148745 | .unused, |
| 148746 | }, |
| 148747 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 148748 | .each = .{ .once = &.{ |
| 148749 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 148750 | .{ ._, .vp_w, .mull, .dst0x, .src0x, .tmp0x, ._ }, |
| 148751 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 148752 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148753 | } }, |
| 148754 | }, .{ |
| 148755 | .required_features = .{ .sse2, null, null, null }, |
| 148756 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 148757 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 148758 | .patterns = &.{ |
| 148759 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 148760 | }, |
| 148761 | .extra_temps = .{ |
| 148762 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 148763 | .unused, |
| 148764 | .unused, |
| 148765 | .unused, |
| 148766 | .unused, |
| 148767 | .unused, |
| 148768 | .unused, |
| 148769 | .unused, |
| 148770 | .unused, |
| 148771 | .unused, |
| 148772 | .unused, |
| 148773 | }, |
| 148774 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 148775 | .each = .{ .once = &.{ |
| 148776 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 148777 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 148778 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 148779 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 148780 | } }, |
| 148781 | }, .{ |
| 148782 | .required_features = .{ .avx, null, null, null }, |
| 148783 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 148784 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 148785 | .patterns = &.{ |
| 148786 | .{ .src = .{ .to_sse, .none, .none } }, |
| 148787 | }, |
| 148788 | .extra_temps = .{ |
| 148789 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 148790 | .unused, |
| 148791 | .unused, |
| 148792 | .unused, |
| 148793 | .unused, |
| 148794 | .unused, |
| 148795 | .unused, |
| 148796 | .unused, |
| 148797 | .unused, |
| 148798 | .unused, |
| 148799 | .unused, |
| 148800 | }, |
| 148801 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 148802 | .each = .{ .once = &.{ |
| 148803 | .{ ._, .vp_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 148804 | .{ ._, .vp_w, .mull, .tmp0x, .src0x, .tmp0x, ._ }, |
| 148805 | .{ ._, .vp_w, .shufl, .dst0x, .src0x, .ui(0b01), ._ }, |
| 148806 | .{ ._, .vp_w, .mull, .dst0x, .tmp0x, .dst0x, ._ }, |
| 148807 | } }, |
| 148808 | }, .{ |
| 148809 | .required_features = .{ .sse2, null, null, null }, |
| 148810 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 148811 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 148812 | .patterns = &.{ |
| 148813 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 148814 | }, |
| 148815 | .extra_temps = .{ |
| 148816 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 148817 | .unused, |
| 148818 | .unused, |
| 148819 | .unused, |
| 148820 | .unused, |
| 148821 | .unused, |
| 148822 | .unused, |
| 148823 | .unused, |
| 148824 | .unused, |
| 148825 | .unused, |
| 148826 | .unused, |
| 148827 | }, |
| 148828 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 148829 | .each = .{ .once = &.{ |
| 148830 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 148831 | .{ ._, .p_w, .mull, .tmp0x, .src0x, ._, ._ }, |
| 148832 | .{ ._, .p_w, .shufl, .dst0x, .src0x, .ui(0b01), ._ }, |
| 148833 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 148834 | } }, |
| 148835 | }, .{ |
| 148836 | .required_features = .{ .avx, null, null, null }, |
| 148837 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 148838 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 148839 | .patterns = &.{ |
| 148840 | .{ .src = .{ .to_sse, .none, .none } }, |
| 148841 | }, |
| 148842 | .extra_temps = .{ |
| 148843 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 148844 | .unused, |
| 148845 | .unused, |
| 148846 | .unused, |
| 148847 | .unused, |
| 148848 | .unused, |
| 148849 | .unused, |
| 148850 | .unused, |
| 148851 | .unused, |
| 148852 | .unused, |
| 148853 | .unused, |
| 148854 | }, |
| 148855 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 148856 | .each = .{ .once = &.{ |
| 148857 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 148858 | .{ ._, .vp_w, .mull, .dst0x, .src0x, .tmp0x, ._ }, |
| 148859 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 148860 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148861 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 148862 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148863 | } }, |
| 148864 | }, .{ |
| 148865 | .required_features = .{ .sse2, null, null, null }, |
| 148866 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 148867 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 148868 | .patterns = &.{ |
| 148869 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 148870 | }, |
| 148871 | .extra_temps = .{ |
| 148872 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 148873 | .unused, |
| 148874 | .unused, |
| 148875 | .unused, |
| 148876 | .unused, |
| 148877 | .unused, |
| 148878 | .unused, |
| 148879 | .unused, |
| 148880 | .unused, |
| 148881 | .unused, |
| 148882 | .unused, |
| 148883 | }, |
| 148884 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 148885 | .each = .{ .once = &.{ |
| 148886 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 148887 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 148888 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 148889 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 148890 | .{ ._, .p_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 148891 | .{ ._, .p_w, .mull, .dst0x, .tmp0x, ._, ._ }, |
| 148892 | } }, |
| 148893 | }, .{ |
| 148894 | .required_features = .{ .avx, null, null, null }, |
| 148895 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 148896 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 148897 | .patterns = &.{ |
| 148898 | .{ .src = .{ .mem, .none, .none } }, |
| 148899 | .{ .src = .{ .to_sse, .none, .none } }, |
| 148900 | }, |
| 148901 | .extra_temps = .{ |
| 148902 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 148903 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 148904 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 148905 | .unused, |
| 148906 | .unused, |
| 148907 | .unused, |
| 148908 | .unused, |
| 148909 | .unused, |
| 148910 | .unused, |
| 148911 | .unused, |
| 148912 | .unused, |
| 148913 | }, |
| 148914 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 148915 | .each = .{ .once = &.{ |
| 148916 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 148917 | .{ ._, .v_dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 148918 | .{ ._, .vp_, .andn, .dst0x, .tmp2x, .src0x, ._ }, |
| 148919 | .{ ._, .vp_w, .sub, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148920 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148921 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148922 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148923 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148924 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 148925 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 148926 | } }, |
| 148927 | }, .{ |
| 148928 | .required_features = .{ .sse2, null, null, null }, |
| 148929 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 148930 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 148931 | .patterns = &.{ |
| 148932 | .{ .src = .{ .mem, .none, .none } }, |
| 148933 | .{ .src = .{ .to_sse, .none, .none } }, |
| 148934 | }, |
| 148935 | .extra_temps = .{ |
| 148936 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 148937 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 148938 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 148939 | .unused, |
| 148940 | .unused, |
| 148941 | .unused, |
| 148942 | .unused, |
| 148943 | .unused, |
| 148944 | .unused, |
| 148945 | .unused, |
| 148946 | .unused, |
| 148947 | }, |
| 148948 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 148949 | .each = .{ .once = &.{ |
| 148950 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 148951 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 148952 | .{ ._, ._dqa, .mov, .dst0x, .tmp2x, ._, ._ }, |
| 148953 | .{ ._, .p_, .andn, .dst0x, .src0x, ._, ._ }, |
| 148954 | .{ ._, .p_w, .sub, .dst0x, .tmp2x, ._, ._ }, |
| 148955 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148956 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148957 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 148958 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148959 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 148960 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 148961 | } }, |
| 148962 | }, .{ |
| 148963 | .required_features = .{ .avx2, null, null, null }, |
| 148964 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 148965 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 148966 | .patterns = &.{ |
| 148967 | .{ .src = .{ .to_sse, .none, .none } }, |
| 148968 | }, |
| 148969 | .extra_temps = .{ |
| 148970 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 148971 | .unused, |
| 148972 | .unused, |
| 148973 | .unused, |
| 148974 | .unused, |
| 148975 | .unused, |
| 148976 | .unused, |
| 148977 | .unused, |
| 148978 | .unused, |
| 148979 | .unused, |
| 148980 | .unused, |
| 148981 | }, |
| 148982 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 148983 | .each = .{ .once = &.{ |
| 148984 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 148985 | .{ ._, .vp_w, .mull, .dst0x, .src0x, .tmp0x, ._ }, |
| 148986 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 148987 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148988 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 148989 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148990 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 148991 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 148992 | } }, |
| 148993 | }, .{ |
| 148994 | .required_features = .{ .avx, null, null, null }, |
| 148995 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 148996 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 148997 | .patterns = &.{ |
| 148998 | .{ .src = .{ .to_sse, .none, .none } }, |
| 148999 | }, |
| 149000 | .extra_temps = .{ |
| 149001 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 149002 | .unused, |
| 149003 | .unused, |
| 149004 | .unused, |
| 149005 | .unused, |
| 149006 | .unused, |
| 149007 | .unused, |
| 149008 | .unused, |
| 149009 | .unused, |
| 149010 | .unused, |
| 149011 | .unused, |
| 149012 | }, |
| 149013 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 149014 | .each = .{ .once = &.{ |
| 149015 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 149016 | .{ ._, .vp_w, .mull, .dst0x, .src0x, .tmp0x, ._ }, |
| 149017 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 149018 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149019 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 149020 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149021 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 149022 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149023 | } }, |
| 149024 | }, .{ |
| 149025 | .required_features = .{ .avx2, null, null, null }, |
| 149026 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 149027 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 149028 | .patterns = &.{ |
| 149029 | .{ .src = .{ .to_sse, .none, .none } }, |
| 149030 | }, |
| 149031 | .extra_temps = .{ |
| 149032 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 149033 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 149034 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 149035 | .unused, |
| 149036 | .unused, |
| 149037 | .unused, |
| 149038 | .unused, |
| 149039 | .unused, |
| 149040 | .unused, |
| 149041 | .unused, |
| 149042 | .unused, |
| 149043 | }, |
| 149044 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 149045 | .each = .{ .once = &.{ |
| 149046 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 149047 | .{ ._, .v_dqa, .mov, .tmp2y, .lea(.tmp0y), ._, ._ }, |
| 149048 | .{ ._, .vp_, .andn, .dst0y, .tmp2y, .src0y, ._ }, |
| 149049 | .{ ._, .vp_w, .sub, .dst0y, .dst0y, .tmp2y, ._ }, |
| 149050 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 149051 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149052 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149053 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149054 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149055 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149056 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 149057 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149058 | } }, |
| 149059 | }, .{ |
| 149060 | .required_features = .{ .avx, null, null, null }, |
| 149061 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 149062 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 149063 | .patterns = &.{ |
| 149064 | .{ .src = .{ .to_sse, .none, .none } }, |
| 149065 | }, |
| 149066 | .extra_temps = .{ |
| 149067 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 149068 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 149069 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 149070 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 149071 | .unused, |
| 149072 | .unused, |
| 149073 | .unused, |
| 149074 | .unused, |
| 149075 | .unused, |
| 149076 | .unused, |
| 149077 | .unused, |
| 149078 | }, |
| 149079 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 149080 | .each = .{ .once = &.{ |
| 149081 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 149082 | .{ ._, .v_ps, .mova, .tmp2y, .lea(.tmp0y), ._, ._ }, |
| 149083 | .{ ._, .v_ps, .andn, .tmp3y, .tmp2y, .src0y, ._ }, |
| 149084 | .{ ._, .vp_w, .sub, .dst0x, .tmp3x, .tmp2x, ._ }, |
| 149085 | .{ ._, .v_f128, .extract, .tmp2x, .tmp2y, .ui(1), ._ }, |
| 149086 | .{ ._, .v_f128, .extract, .tmp3x, .tmp3y, .ui(1), ._ }, |
| 149087 | .{ ._, .vp_w, .sub, .tmp2x, .tmp3x, .tmp2x, ._ }, |
| 149088 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149089 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149090 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149091 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149092 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149093 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 149094 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149095 | } }, |
| 149096 | }, .{ |
| 149097 | .required_features = .{ .avx512f, null, null, null }, |
| 149098 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 149099 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 149100 | .patterns = &.{ |
| 149101 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149102 | }, |
| 149103 | .extra_temps = .{ |
| 149104 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 149105 | .unused, |
| 149106 | .unused, |
| 149107 | .unused, |
| 149108 | .unused, |
| 149109 | .unused, |
| 149110 | .unused, |
| 149111 | .unused, |
| 149112 | .unused, |
| 149113 | .unused, |
| 149114 | .unused, |
| 149115 | }, |
| 149116 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149117 | .each = .{ .once = &.{ |
| 149118 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 149119 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 149120 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 149121 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149122 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 149123 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149124 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 149125 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149126 | .{ ._, .vp_w, .shufl, .tmp0x, .dst0x, .ui(0b01), ._ }, |
| 149127 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149128 | } }, |
| 149129 | }, .{ |
| 149130 | .required_features = .{ .avx512f, null, null, null }, |
| 149131 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 149132 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 149133 | .patterns = &.{ |
| 149134 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149135 | }, |
| 149136 | .extra_temps = .{ |
| 149137 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 149138 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 149139 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 149140 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 149141 | .unused, |
| 149142 | .unused, |
| 149143 | .unused, |
| 149144 | .unused, |
| 149145 | .unused, |
| 149146 | .unused, |
| 149147 | .unused, |
| 149148 | }, |
| 149149 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149150 | .each = .{ .once = &.{ |
| 149151 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 149152 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 149153 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 149154 | .{ ._, .vp_, .andn, .tmp3y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 149155 | .{ ._, .vp_w, .sub, .tmp2y, .tmp3y, .tmp2y, ._ }, |
| 149156 | .{ ._, .vp_, .andn, .tmp3y, .dst0y, .mem(.src0y), ._ }, |
| 149157 | .{ ._, .vp_w, .sub, .dst0y, .tmp3y, .dst0y, ._ }, |
| 149158 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp2y, ._ }, |
| 149159 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 149160 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149161 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149162 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149163 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149164 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149165 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 149166 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149167 | } }, |
| 149168 | }, .{ |
| 149169 | .required_features = .{ .avx2, null, null, null }, |
| 149170 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 149171 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 149172 | .patterns = &.{ |
| 149173 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149174 | }, |
| 149175 | .extra_temps = .{ |
| 149176 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149177 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 149178 | .unused, |
| 149179 | .unused, |
| 149180 | .unused, |
| 149181 | .unused, |
| 149182 | .unused, |
| 149183 | .unused, |
| 149184 | .unused, |
| 149185 | .unused, |
| 149186 | .unused, |
| 149187 | }, |
| 149188 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149189 | .clobbers = .{ .eflags = true }, |
| 149190 | .each = .{ .once = &.{ |
| 149191 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 149192 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 149193 | .{ .@"0:", .vp_w, .mull, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 149194 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 149195 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149196 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 149197 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 149198 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 149199 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 149200 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 149201 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 149202 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 149203 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 149204 | } }, |
| 149205 | }, .{ |
| 149206 | .required_features = .{ .avx, null, null, null }, |
| 149207 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 149208 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 149209 | .patterns = &.{ |
| 149210 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149211 | }, |
| 149212 | .extra_temps = .{ |
| 149213 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149214 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 149215 | .unused, |
| 149216 | .unused, |
| 149217 | .unused, |
| 149218 | .unused, |
| 149219 | .unused, |
| 149220 | .unused, |
| 149221 | .unused, |
| 149222 | .unused, |
| 149223 | .unused, |
| 149224 | }, |
| 149225 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149226 | .clobbers = .{ .eflags = true }, |
| 149227 | .each = .{ .once = &.{ |
| 149228 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 149229 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 149230 | .{ .@"0:", .vp_w, .mull, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 149231 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 149232 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149233 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 149234 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 149235 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 149236 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 149237 | .{ ._, .vp_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 149238 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 149239 | } }, |
| 149240 | }, .{ |
| 149241 | .required_features = .{ .sse2, null, null, null }, |
| 149242 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 149243 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 149244 | .patterns = &.{ |
| 149245 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149246 | }, |
| 149247 | .extra_temps = .{ |
| 149248 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149249 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 149250 | .unused, |
| 149251 | .unused, |
| 149252 | .unused, |
| 149253 | .unused, |
| 149254 | .unused, |
| 149255 | .unused, |
| 149256 | .unused, |
| 149257 | .unused, |
| 149258 | .unused, |
| 149259 | }, |
| 149260 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149261 | .clobbers = .{ .eflags = true }, |
| 149262 | .each = .{ .once = &.{ |
| 149263 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 149264 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 149265 | .{ .@"0:", .p_w, .mull, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 149266 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 149267 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149268 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 149269 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 149270 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 149271 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 149272 | .{ ._, .p_w, .shufl, .tmp1x, .dst0x, .ui(0b01), ._ }, |
| 149273 | .{ ._, .p_w, .mull, .dst0x, .tmp1x, ._, ._ }, |
| 149274 | } }, |
| 149275 | }, .{ |
| 149276 | .required_features = .{ .avx512f, null, null, null }, |
| 149277 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 149278 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 149279 | .patterns = &.{ |
| 149280 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149281 | }, |
| 149282 | .extra_temps = .{ |
| 149283 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149284 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 149285 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 149286 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 149287 | .unused, |
| 149288 | .unused, |
| 149289 | .unused, |
| 149290 | .unused, |
| 149291 | .unused, |
| 149292 | .unused, |
| 149293 | .unused, |
| 149294 | }, |
| 149295 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149296 | .clobbers = .{ .eflags = true }, |
| 149297 | .each = .{ .once = &.{ |
| 149298 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 149299 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 149300 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 149301 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 149302 | .{ ._, .vp_, .andn, .tmp3y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 149303 | .{ ._, .vp_w, .sub, .tmp2y, .tmp3y, .tmp2y, ._ }, |
| 149304 | .{ ._, .vp_, .andn, .tmp3y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 149305 | .{ ._, .vp_w, .sub, .dst0y, .tmp3y, .dst0y, ._ }, |
| 149306 | .{ .@"0:", .vp_w, .mull, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 149307 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 149308 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 149309 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149310 | .{ ._, .vp_w, .mull, .dst0y, .dst0y, .tmp2y, ._ }, |
| 149311 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 149312 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149313 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149314 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149315 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149316 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149317 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 149318 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149319 | } }, |
| 149320 | }, .{ |
| 149321 | .required_features = .{ .avx2, null, null, null }, |
| 149322 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 149323 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 149324 | .patterns = &.{ |
| 149325 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149326 | }, |
| 149327 | .extra_temps = .{ |
| 149328 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149329 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 149330 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 149331 | .unused, |
| 149332 | .unused, |
| 149333 | .unused, |
| 149334 | .unused, |
| 149335 | .unused, |
| 149336 | .unused, |
| 149337 | .unused, |
| 149338 | .unused, |
| 149339 | }, |
| 149340 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149341 | .clobbers = .{ .eflags = true }, |
| 149342 | .each = .{ .once = &.{ |
| 149343 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 149344 | .{ ._, .v_dqa, .mov, .tmp2y, .lea(.tmp0y), ._, ._ }, |
| 149345 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 149346 | .{ ._, .vp_, .andn, .dst0y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 149347 | .{ ._, .vp_w, .sub, .dst0y, .dst0y, .tmp2y, ._ }, |
| 149348 | .{ .@"0:", .vp_w, .mull, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 149349 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 149350 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149351 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 149352 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149353 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149354 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149355 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149356 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149357 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 149358 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149359 | } }, |
| 149360 | }, .{ |
| 149361 | .required_features = .{ .avx, null, null, null }, |
| 149362 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 149363 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 149364 | .patterns = &.{ |
| 149365 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149366 | }, |
| 149367 | .extra_temps = .{ |
| 149368 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149369 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 149370 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 149371 | .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } }, |
| 149372 | .unused, |
| 149373 | .unused, |
| 149374 | .unused, |
| 149375 | .unused, |
| 149376 | .unused, |
| 149377 | .unused, |
| 149378 | .unused, |
| 149379 | }, |
| 149380 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149381 | .clobbers = .{ .eflags = true }, |
| 149382 | .each = .{ .once = &.{ |
| 149383 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 149384 | .{ ._, .v_ps, .mova, .tmp2y, .lea(.tmp0y), ._, ._ }, |
| 149385 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 149386 | .{ ._, .v_ps, .andn, .tmp3y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 149387 | .{ ._, .vp_w, .sub, .dst0x, .tmp3x, .tmp2x, ._ }, |
| 149388 | .{ ._, .v_f128, .extract, .tmp2x, .tmp2y, .ui(1), ._ }, |
| 149389 | .{ ._, .v_f128, .extract, .tmp3x, .tmp3y, .ui(1), ._ }, |
| 149390 | .{ ._, .vp_w, .sub, .tmp2x, .tmp3x, .tmp2x, ._ }, |
| 149391 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149392 | .{ .@"0:", .vp_w, .mull, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 149393 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 149394 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149395 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149396 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149397 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149398 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149399 | .{ ._, .vp_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 149400 | .{ ._, .vp_w, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149401 | } }, |
| 149402 | }, .{ |
| 149403 | .required_features = .{ .sse2, null, null, null }, |
| 149404 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 149405 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 149406 | .patterns = &.{ |
| 149407 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149408 | }, |
| 149409 | .extra_temps = .{ |
| 149410 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149411 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 149412 | .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } }, |
| 149413 | .unused, |
| 149414 | .unused, |
| 149415 | .unused, |
| 149416 | .unused, |
| 149417 | .unused, |
| 149418 | .unused, |
| 149419 | .unused, |
| 149420 | .unused, |
| 149421 | }, |
| 149422 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149423 | .clobbers = .{ .eflags = true }, |
| 149424 | .each = .{ .once = &.{ |
| 149425 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 149426 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 149427 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 149428 | .{ ._, ._dqa, .mov, .dst0x, .tmp2x, ._, ._ }, |
| 149429 | .{ ._, .p_, .andn, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 149430 | .{ ._, .p_w, .sub, .dst0x, .tmp2x, ._, ._ }, |
| 149431 | .{ .@"0:", .p_w, .mull, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 149432 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 149433 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149434 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149435 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 149436 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149437 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 149438 | .{ ._, .p_w, .shufl, .tmp2x, .dst0x, .ui(0b01), ._ }, |
| 149439 | .{ ._, .p_w, .mull, .dst0x, .tmp2x, ._, ._ }, |
| 149440 | } }, |
| 149441 | }, .{ |
| 149442 | .dst_constraints = .{ .{ .int = .word }, .any }, |
| 149443 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any }, |
| 149444 | .patterns = &.{ |
| 149445 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149446 | }, |
| 149447 | .extra_temps = .{ |
| 149448 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149449 | .unused, |
| 149450 | .unused, |
| 149451 | .unused, |
| 149452 | .unused, |
| 149453 | .unused, |
| 149454 | .unused, |
| 149455 | .unused, |
| 149456 | .unused, |
| 149457 | .unused, |
| 149458 | .unused, |
| 149459 | }, |
| 149460 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 149461 | .clobbers = .{ .eflags = true }, |
| 149462 | .each = .{ .once = &.{ |
| 149463 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 149464 | .{ ._, ._, .movzx, .dst0d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 149465 | .{ .@"0:", .i_, .mul, .dst0w, .memi(.src0w, .tmp0), ._, ._ }, |
| 149466 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 149467 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149468 | } }, |
| 149469 | }, .{ |
| 149470 | .required_features = .{ .avx, null, null, null }, |
| 149471 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149472 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 149473 | .patterns = &.{ |
| 149474 | .{ .src = .{ .to_sse, .none, .none } }, |
| 149475 | }, |
| 149476 | .extra_temps = .{ |
| 149477 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149478 | .unused, |
| 149479 | .unused, |
| 149480 | .unused, |
| 149481 | .unused, |
| 149482 | .unused, |
| 149483 | .unused, |
| 149484 | .unused, |
| 149485 | .unused, |
| 149486 | .unused, |
| 149487 | .unused, |
| 149488 | }, |
| 149489 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 149490 | .each = .{ .once = &.{ |
| 149491 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b01), ._ }, |
| 149492 | .{ ._, .vp_udq, .mul, .dst0x, .src0x, .tmp0x, ._ }, |
| 149493 | } }, |
| 149494 | }, .{ |
| 149495 | .required_features = .{ .sse2, null, null, null }, |
| 149496 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149497 | .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 149498 | .patterns = &.{ |
| 149499 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 149500 | }, |
| 149501 | .extra_temps = .{ |
| 149502 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149503 | .unused, |
| 149504 | .unused, |
| 149505 | .unused, |
| 149506 | .unused, |
| 149507 | .unused, |
| 149508 | .unused, |
| 149509 | .unused, |
| 149510 | .unused, |
| 149511 | .unused, |
| 149512 | .unused, |
| 149513 | }, |
| 149514 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 149515 | .each = .{ .once = &.{ |
| 149516 | .{ ._, .p_w, .shufl, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 149517 | .{ ._, .p_udq, .mul, .dst0x, .tmp0x, ._, ._ }, |
| 149518 | } }, |
| 149519 | }, .{ |
| 149520 | .required_features = .{ .avx, null, null, null }, |
| 149521 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149522 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 149523 | .patterns = &.{ |
| 149524 | .{ .src = .{ .to_sse, .none, .none } }, |
| 149525 | }, |
| 149526 | .extra_temps = .{ |
| 149527 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149528 | .unused, |
| 149529 | .unused, |
| 149530 | .unused, |
| 149531 | .unused, |
| 149532 | .unused, |
| 149533 | .unused, |
| 149534 | .unused, |
| 149535 | .unused, |
| 149536 | .unused, |
| 149537 | .unused, |
| 149538 | }, |
| 149539 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 149540 | .each = .{ .once = &.{ |
| 149541 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_11_01_01), ._ }, |
| 149542 | .{ ._, .vp_udq, .mul, .dst0x, .src0x, .tmp0x, ._ }, |
| 149543 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 149544 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149545 | } }, |
| 149546 | }, .{ |
| 149547 | .required_features = .{ .sse2, null, null, null }, |
| 149548 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149549 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 149550 | .patterns = &.{ |
| 149551 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 149552 | }, |
| 149553 | .extra_temps = .{ |
| 149554 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149555 | .unused, |
| 149556 | .unused, |
| 149557 | .unused, |
| 149558 | .unused, |
| 149559 | .unused, |
| 149560 | .unused, |
| 149561 | .unused, |
| 149562 | .unused, |
| 149563 | .unused, |
| 149564 | .unused, |
| 149565 | }, |
| 149566 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 149567 | .each = .{ .once = &.{ |
| 149568 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_11_01_01), ._ }, |
| 149569 | .{ ._, .p_udq, .mul, .dst0x, .tmp0x, ._, ._ }, |
| 149570 | .{ ._, .p_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 149571 | .{ ._, .p_udq, .mul, .dst0x, .tmp0x, ._, ._ }, |
| 149572 | } }, |
| 149573 | }, .{ |
| 149574 | .required_features = .{ .avx, null, null, null }, |
| 149575 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149576 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 149577 | .patterns = &.{ |
| 149578 | .{ .src = .{ .to_sse, .none, .none } }, |
| 149579 | }, |
| 149580 | .extra_temps = .{ |
| 149581 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149582 | .unused, |
| 149583 | .unused, |
| 149584 | .unused, |
| 149585 | .unused, |
| 149586 | .unused, |
| 149587 | .unused, |
| 149588 | .unused, |
| 149589 | .unused, |
| 149590 | .unused, |
| 149591 | .unused, |
| 149592 | }, |
| 149593 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 149594 | .each = .{ .once = &.{ |
| 149595 | .{ ._, .vp_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 149596 | .{ ._, .vp_udq, .mul, .tmp0x, .src0x, .tmp0x, ._ }, |
| 149597 | .{ ._, .vp_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 149598 | .{ ._, .vp_udq, .mul, .dst0x, .tmp0x, .dst0x, ._ }, |
| 149599 | } }, |
| 149600 | }, .{ |
| 149601 | .required_features = .{ .sse2, null, null, null }, |
| 149602 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149603 | .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 149604 | .patterns = &.{ |
| 149605 | .{ .src = .{ .to_sse, .none, .none } }, |
| 149606 | }, |
| 149607 | .extra_temps = .{ |
| 149608 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149609 | .unused, |
| 149610 | .unused, |
| 149611 | .unused, |
| 149612 | .unused, |
| 149613 | .unused, |
| 149614 | .unused, |
| 149615 | .unused, |
| 149616 | .unused, |
| 149617 | .unused, |
| 149618 | .unused, |
| 149619 | }, |
| 149620 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 149621 | .each = .{ .once = &.{ |
| 149622 | .{ ._, .p_d, .shuf, .tmp0x, .src0x, .ui(0b11_10), ._ }, |
| 149623 | .{ ._, .p_udq, .mul, .tmp0x, .src0x, ._, ._ }, |
| 149624 | .{ ._, .p_w, .shufl, .dst0x, .src0x, .ui(0b11_10), ._ }, |
| 149625 | .{ ._, .p_udq, .mul, .dst0x, .tmp0x, ._, ._ }, |
| 149626 | } }, |
| 149627 | }, .{ |
| 149628 | .required_features = .{ .avx2, null, null, null }, |
| 149629 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149630 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 149631 | .patterns = &.{ |
| 149632 | .{ .src = .{ .to_sse, .none, .none } }, |
| 149633 | }, |
| 149634 | .extra_temps = .{ |
| 149635 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149636 | .unused, |
| 149637 | .unused, |
| 149638 | .unused, |
| 149639 | .unused, |
| 149640 | .unused, |
| 149641 | .unused, |
| 149642 | .unused, |
| 149643 | .unused, |
| 149644 | .unused, |
| 149645 | .unused, |
| 149646 | }, |
| 149647 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 149648 | .each = .{ .once = &.{ |
| 149649 | .{ ._, .v_i128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 149650 | .{ ._, .vp_d, .mull, .dst0x, .src0x, .tmp0x, ._ }, |
| 149651 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 149652 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149653 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 149654 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149655 | } }, |
| 149656 | }, .{ |
| 149657 | .required_features = .{ .avx, null, null, null }, |
| 149658 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149659 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 149660 | .patterns = &.{ |
| 149661 | .{ .src = .{ .to_sse, .none, .none } }, |
| 149662 | }, |
| 149663 | .extra_temps = .{ |
| 149664 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149665 | .unused, |
| 149666 | .unused, |
| 149667 | .unused, |
| 149668 | .unused, |
| 149669 | .unused, |
| 149670 | .unused, |
| 149671 | .unused, |
| 149672 | .unused, |
| 149673 | .unused, |
| 149674 | .unused, |
| 149675 | }, |
| 149676 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 149677 | .each = .{ .once = &.{ |
| 149678 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 149679 | .{ ._, .vp_d, .mull, .dst0x, .src0x, .tmp0x, ._ }, |
| 149680 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 149681 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149682 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 149683 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149684 | } }, |
| 149685 | }, .{ |
| 149686 | .required_features = .{ .avx2, null, null, null }, |
| 149687 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149688 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 149689 | .patterns = &.{ |
| 149690 | .{ .src = .{ .mem, .none, .none } }, |
| 149691 | .{ .src = .{ .to_sse, .none, .none } }, |
| 149692 | }, |
| 149693 | .extra_temps = .{ |
| 149694 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 149695 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 149696 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 149697 | .unused, |
| 149698 | .unused, |
| 149699 | .unused, |
| 149700 | .unused, |
| 149701 | .unused, |
| 149702 | .unused, |
| 149703 | .unused, |
| 149704 | .unused, |
| 149705 | }, |
| 149706 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 149707 | .each = .{ .once = &.{ |
| 149708 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 149709 | .{ ._, .v_dqa, .mov, .tmp2y, .lea(.tmp0y), ._, ._ }, |
| 149710 | .{ ._, .vp_, .andn, .dst0y, .tmp2y, .src0y, ._ }, |
| 149711 | .{ ._, .vp_d, .sub, .dst0y, .dst0y, .tmp2y, ._ }, |
| 149712 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 149713 | .{ ._, .vp_d, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149714 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 149715 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149716 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149717 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149718 | } }, |
| 149719 | }, .{ |
| 149720 | .required_features = .{ .avx, null, null, null }, |
| 149721 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149722 | .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 149723 | .patterns = &.{ |
| 149724 | .{ .src = .{ .mem, .none, .none } }, |
| 149725 | .{ .src = .{ .to_sse, .none, .none } }, |
| 149726 | }, |
| 149727 | .extra_temps = .{ |
| 149728 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 149729 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 149730 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 149731 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 149732 | .unused, |
| 149733 | .unused, |
| 149734 | .unused, |
| 149735 | .unused, |
| 149736 | .unused, |
| 149737 | .unused, |
| 149738 | .unused, |
| 149739 | }, |
| 149740 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 149741 | .each = .{ .once = &.{ |
| 149742 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 149743 | .{ ._, .v_ps, .mova, .tmp2y, .lea(.tmp0y), ._, ._ }, |
| 149744 | .{ ._, .v_ps, .andn, .tmp3y, .tmp2y, .src0y, ._ }, |
| 149745 | .{ ._, .vp_d, .sub, .dst0x, .tmp3x, .tmp2x, ._ }, |
| 149746 | .{ ._, .v_f128, .extract, .tmp2x, .tmp2y, .ui(1), ._ }, |
| 149747 | .{ ._, .v_f128, .extract, .tmp3x, .tmp3y, .ui(1), ._ }, |
| 149748 | .{ ._, .vp_d, .sub, .tmp2x, .tmp3x, .tmp2x, ._ }, |
| 149749 | .{ ._, .vp_d, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149750 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 149751 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149752 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149753 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149754 | } }, |
| 149755 | }, .{ |
| 149756 | .required_features = .{ .avx512f, null, null, null }, |
| 149757 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149758 | .src_constraints = .{ .{ .exact_scalar_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 149759 | .patterns = &.{ |
| 149760 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149761 | }, |
| 149762 | .extra_temps = .{ |
| 149763 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149764 | .unused, |
| 149765 | .unused, |
| 149766 | .unused, |
| 149767 | .unused, |
| 149768 | .unused, |
| 149769 | .unused, |
| 149770 | .unused, |
| 149771 | .unused, |
| 149772 | .unused, |
| 149773 | .unused, |
| 149774 | }, |
| 149775 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149776 | .each = .{ .once = &.{ |
| 149777 | .{ ._, .v_dqa, .mov, .dst0y, .mem(.src0y), ._, ._ }, |
| 149778 | .{ ._, .vp_d, .mull, .dst0y, .dst0y, .memd(.src0y, 32), ._ }, |
| 149779 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 149780 | .{ ._, .vp_d, .mull, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149781 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 149782 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149783 | .{ ._, .vp_d, .shuf, .tmp0x, .dst0x, .ui(0b11_10), ._ }, |
| 149784 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 149785 | } }, |
| 149786 | }, .{ |
| 149787 | .required_features = .{ .avx512f, null, null, null }, |
| 149788 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149789 | .src_constraints = .{ .{ .scalar_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 149790 | .patterns = &.{ |
| 149791 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149792 | }, |
| 149793 | .extra_temps = .{ |
| 149794 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 149795 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 149796 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 149797 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 149798 | .unused, |
| 149799 | .unused, |
| 149800 | .unused, |
| 149801 | .unused, |
| 149802 | .unused, |
| 149803 | .unused, |
| 149804 | .unused, |
| 149805 | }, |
| 149806 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149807 | .each = .{ .once = &.{ |
| 149808 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 149809 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 149810 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 149811 | .{ ._, .vp_, .andn, .tmp3y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 149812 | .{ ._, .vp_d, .sub, .tmp2y, .tmp3y, .tmp2y, ._ }, |
| 149813 | .{ ._, .vp_, .andn, .tmp3y, .dst0y, .mem(.src0y), ._ }, |
| 149814 | .{ ._, .vp_d, .sub, .dst0y, .tmp3y, .dst0y, ._ }, |
| 149815 | .{ ._, .vp_d, .mull, .dst0y, .dst0y, .tmp2y, ._ }, |
| 149816 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 149817 | .{ ._, .vp_d, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149818 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 149819 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149820 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 149821 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149822 | } }, |
| 149823 | }, .{ |
| 149824 | .required_features = .{ .avx2, null, null, null }, |
| 149825 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149826 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 149827 | .patterns = &.{ |
| 149828 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149829 | }, |
| 149830 | .extra_temps = .{ |
| 149831 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149832 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149833 | .unused, |
| 149834 | .unused, |
| 149835 | .unused, |
| 149836 | .unused, |
| 149837 | .unused, |
| 149838 | .unused, |
| 149839 | .unused, |
| 149840 | .unused, |
| 149841 | .unused, |
| 149842 | }, |
| 149843 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149844 | .clobbers = .{ .eflags = true }, |
| 149845 | .each = .{ .once = &.{ |
| 149846 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 149847 | .{ ._, .v_dqa, .mov, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 149848 | .{ .@"0:", .vp_d, .mull, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 149849 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 149850 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149851 | .{ ._, .v_i128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 149852 | .{ ._, .vp_d, .mull, .dst0x, .dst0x, .tmp1x, ._ }, |
| 149853 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 149854 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 149855 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 149856 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 149857 | } }, |
| 149858 | }, .{ |
| 149859 | .required_features = .{ .avx, null, null, null }, |
| 149860 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149861 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 149862 | .patterns = &.{ |
| 149863 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149864 | }, |
| 149865 | .extra_temps = .{ |
| 149866 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149867 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149868 | .unused, |
| 149869 | .unused, |
| 149870 | .unused, |
| 149871 | .unused, |
| 149872 | .unused, |
| 149873 | .unused, |
| 149874 | .unused, |
| 149875 | .unused, |
| 149876 | .unused, |
| 149877 | }, |
| 149878 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149879 | .clobbers = .{ .eflags = true }, |
| 149880 | .each = .{ .once = &.{ |
| 149881 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 149882 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 149883 | .{ .@"0:", .vp_d, .mull, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 149884 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 149885 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149886 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 149887 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 149888 | .{ ._, .vp_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 149889 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 149890 | } }, |
| 149891 | }, .{ |
| 149892 | .required_features = .{ .sse4_1, null, null, null }, |
| 149893 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149894 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 149895 | .patterns = &.{ |
| 149896 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149897 | }, |
| 149898 | .extra_temps = .{ |
| 149899 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149900 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149901 | .unused, |
| 149902 | .unused, |
| 149903 | .unused, |
| 149904 | .unused, |
| 149905 | .unused, |
| 149906 | .unused, |
| 149907 | .unused, |
| 149908 | .unused, |
| 149909 | .unused, |
| 149910 | }, |
| 149911 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149912 | .clobbers = .{ .eflags = true }, |
| 149913 | .each = .{ .once = &.{ |
| 149914 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 149915 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 149916 | .{ .@"0:", .p_d, .mull, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 149917 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 149918 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149919 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 149920 | .{ ._, .p_udq, .mul, .dst0x, .tmp1x, ._, ._ }, |
| 149921 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 149922 | .{ ._, .p_udq, .mul, .dst0x, .tmp1x, ._, ._ }, |
| 149923 | } }, |
| 149924 | }, .{ |
| 149925 | .required_features = .{ .sse2, null, null, null }, |
| 149926 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149927 | .src_constraints = .{ .{ .unaligned_multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 149928 | .patterns = &.{ |
| 149929 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149930 | }, |
| 149931 | .extra_temps = .{ |
| 149932 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149933 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 149934 | .unused, |
| 149935 | .unused, |
| 149936 | .unused, |
| 149937 | .unused, |
| 149938 | .unused, |
| 149939 | .unused, |
| 149940 | .unused, |
| 149941 | .unused, |
| 149942 | .unused, |
| 149943 | }, |
| 149944 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149945 | .clobbers = .{ .eflags = true }, |
| 149946 | .each = .{ .once = &.{ |
| 149947 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 149948 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 149949 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 149950 | .{ ._, .p_udq, .mul, .dst0x, .tmp1x, ._, ._ }, |
| 149951 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 149952 | .{ ._, .p_udq, .mul, .dst0x, .tmp1x, ._, ._ }, |
| 149953 | .{ ._, .p_d, .shuf, .tmp1x, .tmp1x, .ui(0b11_11_01_01), ._ }, |
| 149954 | .{ ._, .p_udq, .mul, .dst0x, .tmp1x, ._, ._ }, |
| 149955 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 149956 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149957 | .{ ._, .p_d, .shuf, .tmp1x, .dst0x, .ui(0b11_10), ._ }, |
| 149958 | .{ ._, .p_udq, .mul, .dst0x, .tmp1x, ._, ._ }, |
| 149959 | } }, |
| 149960 | }, .{ |
| 149961 | .required_features = .{ .avx512f, null, null, null }, |
| 149962 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 149963 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 149964 | .patterns = &.{ |
| 149965 | .{ .src = .{ .to_mem, .none, .none } }, |
| 149966 | }, |
| 149967 | .extra_temps = .{ |
| 149968 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 149969 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 149970 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 149971 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 149972 | .unused, |
| 149973 | .unused, |
| 149974 | .unused, |
| 149975 | .unused, |
| 149976 | .unused, |
| 149977 | .unused, |
| 149978 | .unused, |
| 149979 | }, |
| 149980 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 149981 | .clobbers = .{ .eflags = true }, |
| 149982 | .each = .{ .once = &.{ |
| 149983 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 149984 | .{ ._, .v_dqa, .mov, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 149985 | .{ ._, .v_dqa, .mov, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 149986 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 149987 | .{ ._, .vp_, .andn, .tmp3y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 149988 | .{ ._, .vp_d, .sub, .tmp2y, .tmp3y, .tmp2y, ._ }, |
| 149989 | .{ ._, .vp_, .andn, .tmp3y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 149990 | .{ ._, .vp_d, .sub, .dst0y, .tmp3y, .dst0y, ._ }, |
| 149991 | .{ .@"0:", .vp_d, .mull, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 149992 | .{ ._, .vp_d, .mull, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 149993 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 149994 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 149995 | .{ ._, .vp_d, .mull, .dst0y, .dst0y, .tmp2y, ._ }, |
| 149996 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 149997 | .{ ._, .vp_d, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 149998 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 149999 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp2x, ._ }, |
| 150000 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 150001 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp2x, ._ }, |
| 150002 | } }, |
| 150003 | }, .{ |
| 150004 | .required_features = .{ .avx2, null, null, null }, |
| 150005 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 150006 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 150007 | .patterns = &.{ |
| 150008 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150009 | }, |
| 150010 | .extra_temps = .{ |
| 150011 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 150012 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 150013 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 150014 | .unused, |
| 150015 | .unused, |
| 150016 | .unused, |
| 150017 | .unused, |
| 150018 | .unused, |
| 150019 | .unused, |
| 150020 | .unused, |
| 150021 | .unused, |
| 150022 | }, |
| 150023 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 150024 | .clobbers = .{ .eflags = true }, |
| 150025 | .each = .{ .once = &.{ |
| 150026 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 150027 | .{ ._, .v_dqa, .mov, .tmp2y, .lea(.tmp0y), ._, ._ }, |
| 150028 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_size), ._, ._ }, |
| 150029 | .{ ._, .vp_, .andn, .dst0y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 150030 | .{ ._, .vp_d, .sub, .dst0y, .dst0y, .tmp2y, ._ }, |
| 150031 | .{ .@"0:", .vp_d, .mull, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 150032 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 150033 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 150034 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 150035 | .{ ._, .vp_d, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 150036 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 150037 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp2x, ._ }, |
| 150038 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 150039 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp2x, ._ }, |
| 150040 | } }, |
| 150041 | }, .{ |
| 150042 | .required_features = .{ .avx, null, null, null }, |
| 150043 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 150044 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 150045 | .patterns = &.{ |
| 150046 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150047 | }, |
| 150048 | .extra_temps = .{ |
| 150049 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 150050 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 150051 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 150052 | .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } }, |
| 150053 | .unused, |
| 150054 | .unused, |
| 150055 | .unused, |
| 150056 | .unused, |
| 150057 | .unused, |
| 150058 | .unused, |
| 150059 | .unused, |
| 150060 | }, |
| 150061 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 150062 | .clobbers = .{ .eflags = true }, |
| 150063 | .each = .{ .once = &.{ |
| 150064 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 150065 | .{ ._, .v_ps, .mova, .tmp2y, .lea(.tmp0y), ._, ._ }, |
| 150066 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 150067 | .{ ._, .v_ps, .andn, .tmp3y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 150068 | .{ ._, .vp_d, .sub, .dst0x, .tmp3x, .tmp2x, ._ }, |
| 150069 | .{ ._, .v_f128, .extract, .tmp2x, .tmp2y, .ui(1), ._ }, |
| 150070 | .{ ._, .v_f128, .extract, .tmp3x, .tmp3y, .ui(1), ._ }, |
| 150071 | .{ ._, .vp_d, .sub, .tmp2x, .tmp3x, .tmp2x, ._ }, |
| 150072 | .{ ._, .vp_d, .mull, .dst0x, .dst0x, .tmp2x, ._ }, |
| 150073 | .{ .@"0:", .vp_d, .mull, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 150074 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 150075 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 150076 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 150077 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp2x, ._ }, |
| 150078 | .{ ._, .vp_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 150079 | .{ ._, .vp_udq, .mul, .dst0x, .dst0x, .tmp2x, ._ }, |
| 150080 | } }, |
| 150081 | }, .{ |
| 150082 | .required_features = .{ .sse4_1, null, null, null }, |
| 150083 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 150084 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 150085 | .patterns = &.{ |
| 150086 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150087 | }, |
| 150088 | .extra_temps = .{ |
| 150089 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 150090 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 150091 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 150092 | .unused, |
| 150093 | .unused, |
| 150094 | .unused, |
| 150095 | .unused, |
| 150096 | .unused, |
| 150097 | .unused, |
| 150098 | .unused, |
| 150099 | .unused, |
| 150100 | }, |
| 150101 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 150102 | .clobbers = .{ .eflags = true }, |
| 150103 | .each = .{ .once = &.{ |
| 150104 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 150105 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 150106 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 150107 | .{ ._, ._dqa, .mov, .dst0x, .tmp2x, ._, ._ }, |
| 150108 | .{ ._, .p_, .andn, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 150109 | .{ ._, .p_d, .sub, .dst0x, .tmp2x, ._, ._ }, |
| 150110 | .{ .@"0:", .p_d, .mull, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 150111 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 150112 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 150113 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 150114 | .{ ._, .p_udq, .mul, .dst0x, .tmp2x, ._, ._ }, |
| 150115 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 150116 | .{ ._, .p_udq, .mul, .dst0x, .tmp2x, ._, ._ }, |
| 150117 | } }, |
| 150118 | }, .{ |
| 150119 | .required_features = .{ .sse2, null, null, null }, |
| 150120 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 150121 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 150122 | .patterns = &.{ |
| 150123 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150124 | }, |
| 150125 | .extra_temps = .{ |
| 150126 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 150127 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0, .invert = true } } }, |
| 150128 | .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } }, |
| 150129 | .unused, |
| 150130 | .unused, |
| 150131 | .unused, |
| 150132 | .unused, |
| 150133 | .unused, |
| 150134 | .unused, |
| 150135 | .unused, |
| 150136 | .unused, |
| 150137 | }, |
| 150138 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 150139 | .clobbers = .{ .eflags = true }, |
| 150140 | .each = .{ .once = &.{ |
| 150141 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 150142 | .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ }, |
| 150143 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 150144 | .{ ._, ._dqa, .mov, .dst0x, .tmp2x, ._, ._ }, |
| 150145 | .{ ._, .p_, .andn, .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 150146 | .{ ._, .p_d, .sub, .dst0x, .tmp2x, ._, ._ }, |
| 150147 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_11_01_01), ._ }, |
| 150148 | .{ ._, .p_udq, .mul, .dst0x, .tmp2x, ._, ._ }, |
| 150149 | .{ .@"0:", ._dqa, .mov, .tmp2x, .memi(.src0x, .tmp0), ._, ._ }, |
| 150150 | .{ ._, .p_udq, .mul, .dst0x, .tmp2x, ._, ._ }, |
| 150151 | .{ ._, .p_d, .shuf, .tmp2x, .tmp2x, .ui(0b11_11_01_01), ._ }, |
| 150152 | .{ ._, .p_udq, .mul, .dst0x, .tmp2x, ._, ._ }, |
| 150153 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 150154 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 150155 | .{ ._, .p_d, .shuf, .tmp2x, .dst0x, .ui(0b11_10), ._ }, |
| 150156 | .{ ._, .p_udq, .mul, .dst0x, .tmp2x, ._, ._ }, |
| 150157 | } }, |
| 150158 | }, .{ |
| 150159 | .dst_constraints = .{ .{ .int = .dword }, .any }, |
| 150160 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 150161 | .patterns = &.{ |
| 150162 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150163 | }, |
| 150164 | .extra_temps = .{ |
| 150165 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 150166 | .unused, |
| 150167 | .unused, |
| 150168 | .unused, |
| 150169 | .unused, |
| 150170 | .unused, |
| 150171 | .unused, |
| 150172 | .unused, |
| 150173 | .unused, |
| 150174 | .unused, |
| 150175 | .unused, |
| 150176 | }, |
| 150177 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 150178 | .clobbers = .{ .eflags = true }, |
| 150179 | .each = .{ .once = &.{ |
| 150180 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size), ._, ._ }, |
| 150181 | .{ ._, ._, .mov, .dst0d, .memad(.src0d, .add_unaligned_size, -4), ._, ._ }, |
| 150182 | .{ .@"0:", .i_, .mul, .dst0d, .memi(.src0d, .tmp0), ._, ._ }, |
| 150183 | .{ ._, ._, .sub, .tmp0d, .si(4), ._, ._ }, |
| 150184 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 150185 | } }, |
| 150186 | }, .{ |
| 150187 | .required_features = .{ .@"64bit", null, null, null }, |
| 150188 | .dst_constraints = .{ .{ .int = .qword }, .any }, |
| 150189 | .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 150190 | .patterns = &.{ |
| 150191 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150192 | }, |
| 150193 | .extra_temps = .{ |
| 150194 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 150195 | .unused, |
| 150196 | .unused, |
| 150197 | .unused, |
| 150198 | .unused, |
| 150199 | .unused, |
| 150200 | .unused, |
| 150201 | .unused, |
| 150202 | .unused, |
| 150203 | .unused, |
| 150204 | .unused, |
| 150205 | }, |
| 150206 | .dst_temps = .{ .{ .rc = .general_purpose }, .unused }, |
| 150207 | .clobbers = .{ .eflags = true }, |
| 150208 | .each = .{ .once = &.{ |
| 150209 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 150210 | .{ ._, ._, .mov, .dst0q, .memad(.src0q, .add_unaligned_size, -8), ._, ._ }, |
| 150211 | .{ .@"0:", .i_, .mul, .dst0q, .memi(.src0q, .tmp0), ._, ._ }, |
| 150212 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 150213 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 150214 | } }, |
| 150215 | }, .{ |
| 150216 | .required_features = .{ .@"64bit", .bmi2, .adx, null }, |
| 150217 | .dst_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 150218 | .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 150219 | .patterns = &.{ |
| 150220 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150221 | }, |
| 150222 | .extra_temps = .{ |
| 150223 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150224 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 150225 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 150226 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150227 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| 150228 | .{ .type = .isize, .kind = .{ .reg = .rcx } }, |
| 150229 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150230 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150231 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150232 | .unused, |
| 150233 | .unused, |
| 150234 | }, |
| 150235 | .dst_temps = .{ .mem, .unused }, |
| 150236 | .clobbers = .{ .eflags = true }, |
| 150237 | .each = .{ .once = &.{ |
| 150238 | .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 150239 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 150240 | .{ .@"0:", ._, .lea, .tmp2p, .memi(.src0, .tmp0), ._, ._ }, |
| 150241 | .{ ._, ._, .mov, .tmp3d, .sia(-8, .dst0, .add_size), ._, ._ }, |
| 150242 | .{ .@"1:", ._, .xor, .tmp4d, .tmp4d, ._, ._ }, |
| 150243 | .{ ._, ._, .@"or", .tmp4q, .leai(.tmp1q, .tmp3), ._, ._ }, |
| 150244 | .{ ._, ._z, .j, .@"3f", ._, ._, ._ }, |
| 150245 | .{ ._, ._, .lea, .tmp5p, .leaad(.tmp3, .sub_src0_elem_size, 8), ._, ._ }, |
| 150246 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| 150247 | .{ .@"2:", ._x, .mul, .tmp8q, .tmp7q, .leai(.tmp2q, .tmp5), ._ }, |
| 150248 | .{ ._, ._x, .adc, .tmp7q, .tmp6q, ._, ._ }, |
| 150249 | .{ ._, ._, .mov, .memiad(.dst0q, .tmp5, .add_src0_elem_size, -8), .tmp7q, ._, ._ }, |
| 150250 | .{ ._, ._rcxz, .j, .@"2f", ._, ._, ._ }, |
| 150251 | .{ ._, ._x, .ado, .tmp8q, .memia(.dst0q, .tmp5, .add_src0_elem_size), ._, ._ }, |
| 150252 | .{ ._, ._, .mov, .tmp6q, .tmp8q, ._, ._ }, |
| 150253 | .{ ._, ._, .lea, .tmp5p, .lead(.tmp5, 8), ._, ._ }, |
| 150254 | .{ ._, ._mp, .j, .@"2b", ._, ._, ._ }, |
| 150255 | .{ .@"3:", ._, .mov, .memi(.dst0q, .tmp3), .tmp4q, ._, ._ }, |
| 150256 | .{ .@"2:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| 150257 | .{ ._, ._, .sub, .tmp3d, .si(8), ._, ._ }, |
| 150258 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| 150259 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| 150260 | .{ ._, ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 150261 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 150262 | } }, |
| 150263 | }, .{ |
| 150264 | .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null }, |
| 150265 | .dst_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 150266 | .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 150267 | .patterns = &.{ |
| 150268 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150269 | }, |
| 150270 | .extra_temps = .{ |
| 150271 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150272 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 150273 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 150274 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150275 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150276 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| 150277 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 150278 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150279 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150280 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150281 | .unused, |
| 150282 | }, |
| 150283 | .dst_temps = .{ .mem, .unused }, |
| 150284 | .clobbers = .{ .eflags = true }, |
| 150285 | .each = .{ .once = &.{ |
| 150286 | .{ ._, ._, .mov, .tmp0d, .sia(8, .src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 150287 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 150288 | .{ .@"0:", ._, .lea, .tmp2p, .memi(.src0, .tmp0), ._, ._ }, |
| 150289 | .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| 150290 | .{ .@"1:", ._, .lea, .tmp4p, .leaa(.tmp3, .sub_src0_elem_size_div_8), ._, ._ }, |
| 150291 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| 150292 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| 150293 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| 150294 | .{ ._, ._, .@"or", .tmp5q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| 150295 | .{ ._, ._nz, .j, .@"3f", ._, ._, ._ }, |
| 150296 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp3), .tmp5q, ._, ._ }, |
| 150297 | .{ ._, ._mp, .j, .@"4f", ._, ._, ._ }, |
| 150298 | .{ .@"2:", ._, .adc, .tmp9q, .memsia(.dst0q, .@"8", .tmp4, .add_src0_elem_size), ._, ._ }, |
| 150299 | .{ ._, ._, .adc, .tmp6b, .si(0), ._, ._ }, |
| 150300 | .{ ._, ._, .mov, .tmp7q, .tmp9q, ._, ._ }, |
| 150301 | .{ ._, ._l, .sh, .tmp6b, .ui(4), ._, ._ }, |
| 150302 | .{ .@"3:", ._x, .mul, .tmp9q, .tmp8q, .leasi(.tmp2q, .@"8", .tmp4), ._ }, |
| 150303 | .{ ._, ._, .adc, .tmp8q, .tmp7q, ._, ._ }, |
| 150304 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp4, .add_src0_elem_size), .tmp8q, ._, ._ }, |
| 150305 | .{ ._, ._c, .in, .tmp4p, ._, ._, ._ }, |
| 150306 | .{ ._, ._nz, .j, .@"2b", ._, ._, ._ }, |
| 150307 | .{ .@"4:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| 150308 | .{ ._, ._, .sub, .tmp3d, .si(1), ._, ._ }, |
| 150309 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| 150310 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| 150311 | .{ ._, ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 150312 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 150313 | } }, |
| 150314 | }, .{ |
| 150315 | .required_features = .{ .@"64bit", .bmi2, null, null }, |
| 150316 | .dst_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 150317 | .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 150318 | .patterns = &.{ |
| 150319 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150320 | }, |
| 150321 | .extra_temps = .{ |
| 150322 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150323 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 150324 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 150325 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150326 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150327 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| 150328 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 150329 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150330 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150331 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150332 | .unused, |
| 150333 | }, |
| 150334 | .dst_temps = .{ .mem, .unused }, |
| 150335 | .clobbers = .{ .eflags = true }, |
| 150336 | .each = .{ .once = &.{ |
| 150337 | .{ ._, ._, .mov, .tmp0d, .sia(8, .src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 150338 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 150339 | .{ .@"0:", ._, .lea, .tmp2p, .memi(.src0, .tmp0), ._, ._ }, |
| 150340 | .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| 150341 | .{ .@"1:", ._, .lea, .tmp4p, .leaa(.tmp3, .sub_src0_elem_size_div_8), ._, ._ }, |
| 150342 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| 150343 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| 150344 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| 150345 | .{ ._, ._, .@"or", .tmp5q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| 150346 | .{ ._, ._nz, .j, .@"3f", ._, ._, ._ }, |
| 150347 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp3), .tmp5q, ._, ._ }, |
| 150348 | .{ ._, ._mp, .j, .@"4f", ._, ._, ._ }, |
| 150349 | .{ .@"2:", ._, .adc, .tmp9q, .memsia(.dst0q, .@"8", .tmp4, .add_src0_elem_size), ._, ._ }, |
| 150350 | .{ ._, ._, .adc, .tmp6b, .si(0), ._, ._ }, |
| 150351 | .{ ._, ._, .mov, .tmp7q, .tmp9q, ._, ._ }, |
| 150352 | .{ ._, ._l, .sh, .tmp6b, .ui(4), ._, ._ }, |
| 150353 | .{ .@"3:", ._x, .mul, .tmp9q, .tmp8q, .leasi(.tmp2q, .@"8", .tmp4), ._ }, |
| 150354 | .{ ._, ._, .adc, .tmp8q, .tmp7q, ._, ._ }, |
| 150355 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp4, .add_src0_elem_size), .tmp8q, ._, ._ }, |
| 150356 | .{ ._, ._c, .in, .tmp4p, ._, ._, ._ }, |
| 150357 | .{ ._, ._nz, .j, .@"2b", ._, ._, ._ }, |
| 150358 | .{ .@"4:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| 150359 | .{ ._, ._c, .de, .tmp3d, ._, ._, ._ }, |
| 150360 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| 150361 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| 150362 | .{ ._, ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 150363 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 150364 | } }, |
| 150365 | }, .{ |
| 150366 | .required_features = .{ .@"64bit", .slow_incdec, null, null }, |
| 150367 | .dst_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 150368 | .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 150369 | .patterns = &.{ |
| 150370 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150371 | }, |
| 150372 | .extra_temps = .{ |
| 150373 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150374 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 150375 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 150376 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150377 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150378 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150379 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 150380 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150381 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| 150382 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| 150383 | .unused, |
| 150384 | }, |
| 150385 | .dst_temps = .{ .mem, .unused }, |
| 150386 | .clobbers = .{ .eflags = true }, |
| 150387 | .each = .{ .once = &.{ |
| 150388 | .{ ._, ._, .mov, .tmp0d, .sia(8, .src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 150389 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 150390 | .{ .@"0:", ._, .lea, .tmp2p, .memi(.src0, .tmp0), ._, ._ }, |
| 150391 | .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| 150392 | .{ .@"1:", ._, .lea, .tmp4p, .leaa(.tmp3, .sub_src0_elem_size_div_8), ._, ._ }, |
| 150393 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| 150394 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| 150395 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| 150396 | .{ ._, ._, .@"or", .tmp5q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| 150397 | .{ ._, ._nz, .j, .@"3f", ._, ._, ._ }, |
| 150398 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp3), .tmp5q, ._, ._ }, |
| 150399 | .{ ._, ._mp, .j, .@"4f", ._, ._, ._ }, |
| 150400 | .{ .@"2:", ._, .adc, .tmp9q, .memsia(.dst0q, .@"8", .tmp4, .add_src0_elem_size), ._, ._ }, |
| 150401 | .{ ._, ._, .adc, .tmp6b, .si(0), ._, ._ }, |
| 150402 | .{ ._, ._, .mov, .tmp7q, .tmp9q, ._, ._ }, |
| 150403 | .{ .@"3:", ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| 150404 | .{ ._, ._, .mul, .leasi(.tmp2q, .@"8", .tmp4), ._, ._, ._ }, |
| 150405 | .{ ._, ._l, .sh, .tmp6b, .ui(4), ._, ._ }, |
| 150406 | .{ ._, ._, .adc, .tmp8q, .tmp7q, ._, ._ }, |
| 150407 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp4, .add_src0_elem_size), .tmp8q, ._, ._ }, |
| 150408 | .{ ._, ._c, .in, .tmp4p, ._, ._, ._ }, |
| 150409 | .{ ._, ._nz, .j, .@"2b", ._, ._, ._ }, |
| 150410 | .{ .@"4:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| 150411 | .{ ._, ._, .sub, .tmp3d, .si(1), ._, ._ }, |
| 150412 | .{ ._, ._ae, .j, .@"1b", ._, ._, ._ }, |
| 150413 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| 150414 | .{ ._, ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 150415 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 150416 | } }, |
| 150417 | }, .{ |
| 150418 | .required_features = .{ .@"64bit", null, null, null }, |
| 150419 | .dst_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .qword } }, .any }, |
| 150420 | .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 150421 | .patterns = &.{ |
| 150422 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150423 | }, |
| 150424 | .extra_temps = .{ |
| 150425 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150426 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 150427 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 150428 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150429 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150430 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150431 | .{ .type = .u8, .kind = .{ .rc = .general_purpose } }, |
| 150432 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| 150433 | .{ .type = .u64, .kind = .{ .reg = .rax } }, |
| 150434 | .{ .type = .u64, .kind = .{ .reg = .rdx } }, |
| 150435 | .unused, |
| 150436 | }, |
| 150437 | .dst_temps = .{ .mem, .unused }, |
| 150438 | .clobbers = .{ .eflags = true }, |
| 150439 | .each = .{ .once = &.{ |
| 150440 | .{ ._, ._, .mov, .tmp0d, .sia(8, .src0, .add_unaligned_size_sub_2_elem_size), ._, ._ }, |
| 150441 | .{ ._, ._, .lea, .tmp1p, .mema(.src0, .add_unaligned_size_sub_elem_size), ._, ._ }, |
| 150442 | .{ .@"0:", ._, .lea, .tmp2p, .memi(.src0, .tmp0), ._, ._ }, |
| 150443 | .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_size_div_8), ._, ._ }, |
| 150444 | .{ .@"1:", ._, .lea, .tmp4p, .leaa(.tmp3, .sub_src0_elem_size_div_8), ._, ._ }, |
| 150445 | .{ ._, ._, .xor, .tmp5d, .tmp5d, ._, ._ }, |
| 150446 | .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ }, |
| 150447 | .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ }, |
| 150448 | .{ ._, ._, .@"or", .tmp5q, .leasi(.tmp1q, .@"8", .tmp3), ._, ._ }, |
| 150449 | .{ ._, ._nz, .j, .@"3f", ._, ._, ._ }, |
| 150450 | .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp3), .tmp5q, ._, ._ }, |
| 150451 | .{ ._, ._mp, .j, .@"4f", ._, ._, ._ }, |
| 150452 | .{ .@"2:", ._, .adc, .tmp9q, .memsia(.dst0q, .@"8", .tmp4, .add_src0_elem_size), ._, ._ }, |
| 150453 | .{ ._, ._, .adc, .tmp6b, .si(0), ._, ._ }, |
| 150454 | .{ ._, ._, .mov, .tmp7q, .tmp9q, ._, ._ }, |
| 150455 | .{ .@"3:", ._, .mov, .tmp8q, .tmp5q, ._, ._ }, |
| 150456 | .{ ._, ._, .mul, .leasi(.tmp2q, .@"8", .tmp4), ._, ._, ._ }, |
| 150457 | .{ ._, ._l, .sh, .tmp6b, .ui(4), ._, ._ }, |
| 150458 | .{ ._, ._, .adc, .tmp8q, .tmp7q, ._, ._ }, |
| 150459 | .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp4, .add_src0_elem_size), .tmp8q, ._, ._ }, |
| 150460 | .{ ._, ._c, .in, .tmp4p, ._, ._, ._ }, |
| 150461 | .{ ._, ._nz, .j, .@"2b", ._, ._, ._ }, |
| 150462 | .{ .@"4:", ._, .lea, .tmp2p, .lead(.tmp2, 8), ._, ._ }, |
| 150463 | .{ ._, ._c, .de, .tmp3d, ._, ._, ._ }, |
| 150464 | .{ ._, ._ns, .j, .@"1b", ._, ._, ._ }, |
| 150465 | .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ }, |
| 150466 | .{ ._, ._, .sub, .tmp0d, .sa(.dst0, .add_size), ._, ._ }, |
| 150467 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 150468 | } }, |
| 150469 | }, .{ |
| 150470 | .required_features = .{ .f16c, null, null, null }, |
| 150471 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 150472 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 150473 | .patterns = &.{ |
| 150474 | .{ .src = .{ .mem, .none, .none } }, |
| 150475 | .{ .src = .{ .to_sse, .none, .none } }, |
| 150476 | }, |
| 150477 | .extra_temps = .{ |
| 150478 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 150479 | .unused, |
| 150480 | .unused, |
| 150481 | .unused, |
| 150482 | .unused, |
| 150483 | .unused, |
| 150484 | .unused, |
| 150485 | .unused, |
| 150486 | .unused, |
| 150487 | .unused, |
| 150488 | .unused, |
| 150489 | }, |
| 150490 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 150491 | .each = .{ .once = &.{ |
| 150492 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 150493 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 150494 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 150495 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 150496 | } }, |
| 150497 | }, .{ |
| 150498 | .required_features = .{ .f16c, null, null, null }, |
| 150499 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 150500 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 150501 | .patterns = &.{ |
| 150502 | .{ .src = .{ .mem, .none, .none } }, |
| 150503 | .{ .src = .{ .to_sse, .none, .none } }, |
| 150504 | }, |
| 150505 | .extra_temps = .{ |
| 150506 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 150507 | .unused, |
| 150508 | .unused, |
| 150509 | .unused, |
| 150510 | .unused, |
| 150511 | .unused, |
| 150512 | .unused, |
| 150513 | .unused, |
| 150514 | .unused, |
| 150515 | .unused, |
| 150516 | .unused, |
| 150517 | }, |
| 150518 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 150519 | .each = .{ .once = &.{ |
| 150520 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 150521 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 150522 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 150523 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 150524 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 150525 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 150526 | } }, |
| 150527 | }, .{ |
| 150528 | .required_features = .{ .f16c, null, null, null }, |
| 150529 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 150530 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 150531 | .patterns = &.{ |
| 150532 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150533 | }, |
| 150534 | .extra_temps = .{ |
| 150535 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150536 | .{ .type = .f16, .kind = .{ .rc = .sse } }, |
| 150537 | .unused, |
| 150538 | .unused, |
| 150539 | .unused, |
| 150540 | .unused, |
| 150541 | .unused, |
| 150542 | .unused, |
| 150543 | .unused, |
| 150544 | .unused, |
| 150545 | .unused, |
| 150546 | }, |
| 150547 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 150548 | .clobbers = .{ .eflags = true }, |
| 150549 | .each = .{ .once = &.{ |
| 150550 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .dst0x, ._ }, |
| 150551 | .{ ._, ._, .mov, .tmp0p, .sia(2, .src0, .sub_unaligned_size), ._, ._ }, |
| 150552 | .{ ._, .vp_w, .insr, .dst0x, .dst0x, .mem(.src0w), .ui(0) }, |
| 150553 | .{ .@"0:", .vp_w, .insr, .dst0x, .dst0x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(1) }, |
| 150554 | .{ ._, .v_ps, .cvtph2, .dst0x, .dst0q, ._, ._ }, |
| 150555 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 150556 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 150557 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 150558 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 150559 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 150560 | } }, |
| 150561 | }, .{ |
| 150562 | .required_features = .{ .avx, null, null, null }, |
| 150563 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 150564 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 150565 | .patterns = &.{ |
| 150566 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150567 | }, |
| 150568 | .call_frame = .{ .alignment = .@"16" }, |
| 150569 | .extra_temps = .{ |
| 150570 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150571 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 150572 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__mulhf3" } } }, |
| 150573 | .unused, |
| 150574 | .unused, |
| 150575 | .unused, |
| 150576 | .unused, |
| 150577 | .unused, |
| 150578 | .unused, |
| 150579 | .unused, |
| 150580 | .unused, |
| 150581 | }, |
| 150582 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 150583 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 150584 | .each = .{ .once = &.{ |
| 150585 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .dst0x, ._ }, |
| 150586 | .{ ._, ._, .mov, .tmp0p, .sia(2, .src0, .sub_unaligned_size), ._, ._ }, |
| 150587 | .{ ._, .vp_w, .insr, .dst0x, .dst0x, .mem(.src0w), .ui(0) }, |
| 150588 | .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| 150589 | .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) }, |
| 150590 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 150591 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 150592 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 150593 | } }, |
| 150594 | }, .{ |
| 150595 | .required_features = .{ .sse2, null, null, null }, |
| 150596 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 150597 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 150598 | .patterns = &.{ |
| 150599 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150600 | }, |
| 150601 | .call_frame = .{ .alignment = .@"16" }, |
| 150602 | .extra_temps = .{ |
| 150603 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150604 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 150605 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__mulhf3" } } }, |
| 150606 | .unused, |
| 150607 | .unused, |
| 150608 | .unused, |
| 150609 | .unused, |
| 150610 | .unused, |
| 150611 | .unused, |
| 150612 | .unused, |
| 150613 | .unused, |
| 150614 | }, |
| 150615 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 150616 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 150617 | .each = .{ .once = &.{ |
| 150618 | .{ ._, .p_, .xor, .dst0x, .dst0x, ._, ._ }, |
| 150619 | .{ ._, ._, .mov, .tmp0p, .sia(2, .src0, .sub_unaligned_size), ._, ._ }, |
| 150620 | .{ ._, .p_w, .insr, .dst0x, .mem(.src0w), .ui(0), ._ }, |
| 150621 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 150622 | .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ }, |
| 150623 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 150624 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 150625 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 150626 | } }, |
| 150627 | }, .{ |
| 150628 | .required_features = .{ .sse, null, null, null }, |
| 150629 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 150630 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 150631 | .patterns = &.{ |
| 150632 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150633 | }, |
| 150634 | .call_frame = .{ .alignment = .@"16" }, |
| 150635 | .extra_temps = .{ |
| 150636 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150637 | .{ .type = .f16, .kind = .{ .reg = .ax } }, |
| 150638 | .{ .type = .f32, .kind = .mem }, |
| 150639 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 150640 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__mulhf3" } } }, |
| 150641 | .unused, |
| 150642 | .unused, |
| 150643 | .unused, |
| 150644 | .unused, |
| 150645 | .unused, |
| 150646 | .unused, |
| 150647 | }, |
| 150648 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 150649 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 150650 | .each = .{ .once = &.{ |
| 150651 | .{ ._, ._ps, .xor, .dst0x, .dst0x, ._, ._ }, |
| 150652 | .{ ._, ._, .mov, .tmp0p, .sia(2, .src0, .sub_unaligned_size), ._, ._ }, |
| 150653 | .{ ._, ._, .movzx, .tmp1d, .mem(.src0w), ._, ._ }, |
| 150654 | .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ }, |
| 150655 | .{ ._, ._ss, .mov, .dst0x, .mem(.tmp2d), ._, ._ }, |
| 150656 | .{ .@"0:", ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 150657 | .{ ._, ._ss, .mov, .tmp3x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ }, |
| 150658 | .{ ._, ._, .call, .tmp4d, ._, ._, ._ }, |
| 150659 | .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ }, |
| 150660 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 150661 | } }, |
| 150662 | }, .{ |
| 150663 | .required_features = .{ .avx, null, null, null }, |
| 150664 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 150665 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 150666 | .patterns = &.{ |
| 150667 | .{ .src = .{ .to_sse, .none, .none } }, |
| 150668 | }, |
| 150669 | .extra_temps = .{ |
| 150670 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 150671 | .unused, |
| 150672 | .unused, |
| 150673 | .unused, |
| 150674 | .unused, |
| 150675 | .unused, |
| 150676 | .unused, |
| 150677 | .unused, |
| 150678 | .unused, |
| 150679 | .unused, |
| 150680 | .unused, |
| 150681 | }, |
| 150682 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 150683 | .each = .{ .once = &.{ |
| 150684 | .{ ._, .v_ps, .shuf, .tmp0x, .src0x, .src0x, .ui(0b01) }, |
| 150685 | .{ ._, .v_ss, .mul, .dst0x, .src0x, .tmp0x, ._ }, |
| 150686 | } }, |
| 150687 | }, .{ |
| 150688 | .required_features = .{ .sse, null, null, null }, |
| 150689 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 150690 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 150691 | .patterns = &.{ |
| 150692 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 150693 | }, |
| 150694 | .extra_temps = .{ |
| 150695 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 150696 | .unused, |
| 150697 | .unused, |
| 150698 | .unused, |
| 150699 | .unused, |
| 150700 | .unused, |
| 150701 | .unused, |
| 150702 | .unused, |
| 150703 | .unused, |
| 150704 | .unused, |
| 150705 | .unused, |
| 150706 | }, |
| 150707 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 150708 | .each = .{ .once = &.{ |
| 150709 | .{ ._, ._ps, .mova, .tmp0x, .src0x, ._, ._ }, |
| 150710 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 150711 | .{ ._, ._ss, .mul, .dst0x, .tmp0x, ._, ._ }, |
| 150712 | } }, |
| 150713 | }, .{ |
| 150714 | .required_features = .{ .avx, null, null, null }, |
| 150715 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 150716 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 150717 | .patterns = &.{ |
| 150718 | .{ .src = .{ .to_sse, .none, .none } }, |
| 150719 | }, |
| 150720 | .extra_temps = .{ |
| 150721 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 150722 | .unused, |
| 150723 | .unused, |
| 150724 | .unused, |
| 150725 | .unused, |
| 150726 | .unused, |
| 150727 | .unused, |
| 150728 | .unused, |
| 150729 | .unused, |
| 150730 | .unused, |
| 150731 | .unused, |
| 150732 | }, |
| 150733 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 150734 | .each = .{ .once = &.{ |
| 150735 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 150736 | .{ ._, .v_ss, .mul, .tmp0x, .src0x, .tmp0x, ._ }, |
| 150737 | .{ ._, .v_ps, .shuf, .dst0x, .src0x, .src0x, .ui(0b01) }, |
| 150738 | .{ ._, .v_ss, .mul, .dst0x, .tmp0x, .dst0x, ._ }, |
| 150739 | } }, |
| 150740 | }, .{ |
| 150741 | .required_features = .{ .sse, null, null, null }, |
| 150742 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 150743 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 150744 | .patterns = &.{ |
| 150745 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 150746 | }, |
| 150747 | .extra_temps = .{ |
| 150748 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 150749 | .unused, |
| 150750 | .unused, |
| 150751 | .unused, |
| 150752 | .unused, |
| 150753 | .unused, |
| 150754 | .unused, |
| 150755 | .unused, |
| 150756 | .unused, |
| 150757 | .unused, |
| 150758 | .unused, |
| 150759 | }, |
| 150760 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 150761 | .each = .{ .once = &.{ |
| 150762 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 150763 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 150764 | .{ ._, ._ss, .mul, .tmp0x, .src0x, ._, ._ }, |
| 150765 | .{ ._, ._ps, .shuf, .dst0x, .src0x, .ui(0b01), ._ }, |
| 150766 | .{ ._, ._ss, .mul, .dst0x, .tmp0x, ._, ._ }, |
| 150767 | } }, |
| 150768 | }, .{ |
| 150769 | .required_features = .{ .avx, null, null, null }, |
| 150770 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 150771 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 150772 | .patterns = &.{ |
| 150773 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150774 | }, |
| 150775 | .extra_temps = .{ |
| 150776 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150777 | .unused, |
| 150778 | .unused, |
| 150779 | .unused, |
| 150780 | .unused, |
| 150781 | .unused, |
| 150782 | .unused, |
| 150783 | .unused, |
| 150784 | .unused, |
| 150785 | .unused, |
| 150786 | .unused, |
| 150787 | }, |
| 150788 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 150789 | .clobbers = .{ .eflags = true }, |
| 150790 | .each = .{ .once = &.{ |
| 150791 | .{ ._, ._, .mov, .tmp0p, .sia(4, .src0, .sub_unaligned_size), ._, ._ }, |
| 150792 | .{ ._, .v_ss, .mov, .dst0x, .mem(.src0d), ._, ._ }, |
| 150793 | .{ .@"0:", .v_ss, .mul, .dst0x, .dst0x, .memia(.src0d, .tmp0, .add_unaligned_size), ._ }, |
| 150794 | .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ }, |
| 150795 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 150796 | } }, |
| 150797 | }, .{ |
| 150798 | .required_features = .{ .sse, null, null, null }, |
| 150799 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 150800 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any }, |
| 150801 | .patterns = &.{ |
| 150802 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150803 | }, |
| 150804 | .extra_temps = .{ |
| 150805 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150806 | .unused, |
| 150807 | .unused, |
| 150808 | .unused, |
| 150809 | .unused, |
| 150810 | .unused, |
| 150811 | .unused, |
| 150812 | .unused, |
| 150813 | .unused, |
| 150814 | .unused, |
| 150815 | .unused, |
| 150816 | }, |
| 150817 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 150818 | .clobbers = .{ .eflags = true }, |
| 150819 | .each = .{ .once = &.{ |
| 150820 | .{ ._, ._, .mov, .tmp0p, .sia(4, .src0, .sub_unaligned_size), ._, ._ }, |
| 150821 | .{ ._, ._ss, .mov, .dst0x, .mem(.src0d), ._, ._ }, |
| 150822 | .{ .@"0:", ._ss, .mul, .dst0x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ }, |
| 150823 | .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ }, |
| 150824 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 150825 | } }, |
| 150826 | }, .{ |
| 150827 | .required_features = .{ .avx, null, null, null }, |
| 150828 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 150829 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 150830 | .patterns = &.{ |
| 150831 | .{ .src = .{ .to_sse, .none, .none } }, |
| 150832 | }, |
| 150833 | .extra_temps = .{ |
| 150834 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 150835 | .unused, |
| 150836 | .unused, |
| 150837 | .unused, |
| 150838 | .unused, |
| 150839 | .unused, |
| 150840 | .unused, |
| 150841 | .unused, |
| 150842 | .unused, |
| 150843 | .unused, |
| 150844 | .unused, |
| 150845 | }, |
| 150846 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 150847 | .each = .{ .once = &.{ |
| 150848 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 150849 | .{ ._, .v_sd, .mul, .dst0x, .src0x, .tmp0x, ._ }, |
| 150850 | } }, |
| 150851 | }, .{ |
| 150852 | .required_features = .{ .sse2, null, null, null }, |
| 150853 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 150854 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 150855 | .patterns = &.{ |
| 150856 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 150857 | }, |
| 150858 | .extra_temps = .{ |
| 150859 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 150860 | .unused, |
| 150861 | .unused, |
| 150862 | .unused, |
| 150863 | .unused, |
| 150864 | .unused, |
| 150865 | .unused, |
| 150866 | .unused, |
| 150867 | .unused, |
| 150868 | .unused, |
| 150869 | .unused, |
| 150870 | }, |
| 150871 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 150872 | .each = .{ .once = &.{ |
| 150873 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 150874 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 150875 | .{ ._, ._sd, .mul, .dst0x, .tmp0x, ._, ._ }, |
| 150876 | } }, |
| 150877 | }, .{ |
| 150878 | .required_features = .{ .avx, null, null, null }, |
| 150879 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 150880 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 150881 | .patterns = &.{ |
| 150882 | .{ .src = .{ .to_sse, .none, .none } }, |
| 150883 | }, |
| 150884 | .extra_temps = .{ |
| 150885 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 150886 | .unused, |
| 150887 | .unused, |
| 150888 | .unused, |
| 150889 | .unused, |
| 150890 | .unused, |
| 150891 | .unused, |
| 150892 | .unused, |
| 150893 | .unused, |
| 150894 | .unused, |
| 150895 | .unused, |
| 150896 | }, |
| 150897 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 150898 | .each = .{ .once = &.{ |
| 150899 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 150900 | .{ ._, .v_sd, .mul, .tmp0x, .src0x, .tmp0x, ._ }, |
| 150901 | .{ ._, .v_ps, .movhl, .dst0x, .src0x, .src0x, ._ }, |
| 150902 | .{ ._, .v_sd, .mul, .dst0x, .tmp0x, .dst0x, ._ }, |
| 150903 | } }, |
| 150904 | }, .{ |
| 150905 | .required_features = .{ .avx, null, null, null }, |
| 150906 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 150907 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 150908 | .patterns = &.{ |
| 150909 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150910 | }, |
| 150911 | .extra_temps = .{ |
| 150912 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150913 | .unused, |
| 150914 | .unused, |
| 150915 | .unused, |
| 150916 | .unused, |
| 150917 | .unused, |
| 150918 | .unused, |
| 150919 | .unused, |
| 150920 | .unused, |
| 150921 | .unused, |
| 150922 | .unused, |
| 150923 | }, |
| 150924 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 150925 | .clobbers = .{ .eflags = true }, |
| 150926 | .each = .{ .once = &.{ |
| 150927 | .{ ._, ._, .mov, .tmp0p, .sia(8, .src0, .sub_unaligned_size), ._, ._ }, |
| 150928 | .{ ._, .v_sd, .mov, .dst0x, .mem(.src0q), ._, ._ }, |
| 150929 | .{ .@"0:", .v_sd, .mul, .dst0x, .dst0x, .memia(.src0q, .tmp0, .add_unaligned_size), ._ }, |
| 150930 | .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ }, |
| 150931 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 150932 | } }, |
| 150933 | }, .{ |
| 150934 | .required_features = .{ .sse2, null, null, null }, |
| 150935 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 150936 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 150937 | .patterns = &.{ |
| 150938 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150939 | }, |
| 150940 | .extra_temps = .{ |
| 150941 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150942 | .unused, |
| 150943 | .unused, |
| 150944 | .unused, |
| 150945 | .unused, |
| 150946 | .unused, |
| 150947 | .unused, |
| 150948 | .unused, |
| 150949 | .unused, |
| 150950 | .unused, |
| 150951 | .unused, |
| 150952 | }, |
| 150953 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 150954 | .clobbers = .{ .eflags = true }, |
| 150955 | .each = .{ .once = &.{ |
| 150956 | .{ ._, ._, .mov, .tmp0p, .sia(8, .src0, .sub_unaligned_size), ._, ._ }, |
| 150957 | .{ ._, ._sd, .mov, .dst0x, .mem(.src0q), ._, ._ }, |
| 150958 | .{ .@"0:", ._sd, .mul, .dst0x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ }, |
| 150959 | .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ }, |
| 150960 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 150961 | } }, |
| 150962 | }, .{ |
| 150963 | .required_features = .{ .x87, null, null, null }, |
| 150964 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 150965 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 150966 | .patterns = &.{ |
| 150967 | .{ .src = .{ .to_mem, .none, .none } }, |
| 150968 | }, |
| 150969 | .extra_temps = .{ |
| 150970 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 150971 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 150972 | .unused, |
| 150973 | .unused, |
| 150974 | .unused, |
| 150975 | .unused, |
| 150976 | .unused, |
| 150977 | .unused, |
| 150978 | .unused, |
| 150979 | .unused, |
| 150980 | .unused, |
| 150981 | }, |
| 150982 | .dst_temps = .{ .mem, .unused }, |
| 150983 | .clobbers = .{ .eflags = true }, |
| 150984 | .each = .{ .once = &.{ |
| 150985 | .{ ._, ._, .mov, .tmp0p, .sia(8, .src0, .sub_unaligned_size), ._, ._ }, |
| 150986 | .{ ._, .f_, .ld, .mem(.src0q), ._, ._, ._ }, |
| 150987 | .{ ._, ._mp, .j, .@"1f", ._, ._, ._ }, |
| 150988 | .{ .pseudo, .f_cstp, .in, ._, ._, ._, ._ }, |
| 150989 | .{ .@"0:", .f_, .ld, .dst0q, ._, ._, ._ }, |
| 150990 | .{ .@"1:", .f_, .mul, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 150991 | .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ }, |
| 150992 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 150993 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 150994 | } }, |
| 150995 | }, .{ |
| 150996 | .required_features = .{ .x87, null, null, null }, |
| 150997 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 150998 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 150999 | .patterns = &.{ |
| 151000 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151001 | }, |
| 151002 | .extra_temps = .{ |
| 151003 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 151004 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 151005 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 151006 | .unused, |
| 151007 | .unused, |
| 151008 | .unused, |
| 151009 | .unused, |
| 151010 | .unused, |
| 151011 | .unused, |
| 151012 | .unused, |
| 151013 | .unused, |
| 151014 | }, |
| 151015 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 151016 | .clobbers = .{ .eflags = true }, |
| 151017 | .each = .{ .once = &.{ |
| 151018 | .{ ._, ._, .mov, .tmp0p, .sia(16, .src0, .sub_unaligned_size), ._, ._ }, |
| 151019 | .{ ._, .f_, .ld, .mem(.src0t), ._, ._, ._ }, |
| 151020 | .{ .@"0:", .f_, .ld, .memia(.src0t, .tmp0, .add_unaligned_size), ._, ._, ._ }, |
| 151021 | .{ ._, .f_p, .mul, ._, ._, ._, ._ }, |
| 151022 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| 151023 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 151024 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 151025 | } }, |
| 151026 | }, .{ |
| 151027 | .required_features = .{ .avx, null, null, null }, |
| 151028 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 151029 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 151030 | .patterns = &.{ |
| 151031 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151032 | }, |
| 151033 | .call_frame = .{ .alignment = .@"16" }, |
| 151034 | .extra_temps = .{ |
| 151035 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 151036 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 151037 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__multf3" } } }, |
| 151038 | .unused, |
| 151039 | .unused, |
| 151040 | .unused, |
| 151041 | .unused, |
| 151042 | .unused, |
| 151043 | .unused, |
| 151044 | .unused, |
| 151045 | .unused, |
| 151046 | }, |
| 151047 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 151048 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 151049 | .each = .{ .once = &.{ |
| 151050 | .{ ._, ._, .mov, .tmp0p, .sia(16, .src0, .sub_unaligned_size), ._, ._ }, |
| 151051 | .{ ._, .v_dqa, .mov, .dst0x, .mem(.src0x), ._, ._ }, |
| 151052 | .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, |
| 151053 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 151054 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| 151055 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 151056 | } }, |
| 151057 | }, .{ |
| 151058 | .required_features = .{ .sse2, null, null, null }, |
| 151059 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 151060 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 151061 | .patterns = &.{ |
| 151062 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151063 | }, |
| 151064 | .call_frame = .{ .alignment = .@"16" }, |
| 151065 | .extra_temps = .{ |
| 151066 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 151067 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 151068 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__multf3" } } }, |
| 151069 | .unused, |
| 151070 | .unused, |
| 151071 | .unused, |
| 151072 | .unused, |
| 151073 | .unused, |
| 151074 | .unused, |
| 151075 | .unused, |
| 151076 | .unused, |
| 151077 | }, |
| 151078 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 151079 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 151080 | .each = .{ .once = &.{ |
| 151081 | .{ ._, ._, .mov, .tmp0p, .sia(16, .src0, .sub_unaligned_size), ._, ._ }, |
| 151082 | .{ ._, ._dqa, .mov, .dst0x, .mem(.src0x), ._, ._ }, |
| 151083 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, |
| 151084 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 151085 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| 151086 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 151087 | } }, |
| 151088 | }, .{ |
| 151089 | .required_features = .{ .sse, null, null, null }, |
| 151090 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 151091 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 151092 | .patterns = &.{ |
| 151093 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151094 | }, |
| 151095 | .call_frame = .{ .alignment = .@"16" }, |
| 151096 | .extra_temps = .{ |
| 151097 | .{ .type = .isize, .kind = .{ .rc = .general_purpose } }, |
| 151098 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 151099 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__multf3" } } }, |
| 151100 | .unused, |
| 151101 | .unused, |
| 151102 | .unused, |
| 151103 | .unused, |
| 151104 | .unused, |
| 151105 | .unused, |
| 151106 | .unused, |
| 151107 | .unused, |
| 151108 | }, |
| 151109 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 151110 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 151111 | .each = .{ .once = &.{ |
| 151112 | .{ ._, ._, .mov, .tmp0p, .sia(16, .src0, .sub_unaligned_size), ._, ._ }, |
| 151113 | .{ ._, ._ps, .mova, .dst0x, .mem(.src0x), ._, ._ }, |
| 151114 | .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ }, |
| 151115 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 151116 | .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ }, |
| 151117 | .{ ._, ._nc, .j, .@"0b", ._, ._, ._ }, |
| 151118 | } }, |
| 151119 | } }, |
| 151120 | }) catch |err| switch (err) { |
| 151121 | error.SelectFailed => return cg.fail("failed to select {s}.{s} {} {}", .{ |
| 151122 | @tagName(air_tag), |
| 151123 | @tagName(reduce.operation), |
| 151124 | cg.typeOf(reduce.operand).fmt(pt), |
| 151125 | ops[0].tracking(cg), |
| 151126 | }), |
| 151127 | else => |e| return e, |
| 151128 | }; |
| 151129 | switch (reduce.operation) { |
| 151130 | .And, .Or, .Xor, .Min, .Max => {}, |
| 151131 | .Add, .Mul => if (cg.intInfo(res_ty)) |_| res[0].wrapInt(cg) catch |err| switch (err) { |
| 151132 | error.SelectFailed => return cg.fail("failed to select {s}.{s} wrap {} {}", .{ |
| 151133 | @tagName(air_tag), |
| 151134 | @tagName(reduce.operation), |
| 151135 | res_ty.fmt(pt), |
| 151136 | res[0].tracking(cg), |
| 151137 | }), |
| 151138 | else => |e| return e, |
| 151139 | }, |
| 151140 | } |
| 151141 | try res[0].finish(inst, &.{reduce.operand}, &ops, cg); |
| 151142 | }, |
| 151143 | .reduce_optimized => |air_tag| if (use_old) try cg.airReduce(inst) else { |
| 151144 | const inf = std.math.inf(f16); |
| 151145 | const reduce = air_datas[@intFromEnum(inst)].reduce; |
| 151146 | var ops = try cg.tempsFromOperands(inst, .{reduce.operand}); |
| 151147 | var res: [1]Temp = undefined; |
| 151148 | cg.select(&res, &.{cg.typeOfIndex(inst)}, &ops, switch (reduce.operation) { |
| 151149 | .And, .Or, .Xor => unreachable, |
| 151150 | .Min => comptime &.{ .{ |
| 151151 | .required_features = .{ .f16c, null, null, null }, |
| 151152 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151153 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 151154 | .patterns = &.{ |
| 151155 | .{ .src = .{ .mem, .none, .none } }, |
| 151156 | .{ .src = .{ .to_sse, .none, .none } }, |
| 151157 | }, |
| 151158 | .extra_temps = .{ |
| 151159 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 151160 | .unused, |
| 151161 | .unused, |
| 151162 | .unused, |
| 151163 | .unused, |
| 151164 | .unused, |
| 151165 | .unused, |
| 151166 | .unused, |
| 151167 | .unused, |
| 151168 | .unused, |
| 151169 | .unused, |
| 151170 | }, |
| 151171 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 151172 | .each = .{ .once = &.{ |
| 151173 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 151174 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 151175 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151176 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 151177 | } }, |
| 151178 | }, .{ |
| 151179 | .required_features = .{ .f16c, null, null, null }, |
| 151180 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151181 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 151182 | .patterns = &.{ |
| 151183 | .{ .src = .{ .mem, .none, .none } }, |
| 151184 | .{ .src = .{ .to_sse, .none, .none } }, |
| 151185 | }, |
| 151186 | .extra_temps = .{ |
| 151187 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 151188 | .unused, |
| 151189 | .unused, |
| 151190 | .unused, |
| 151191 | .unused, |
| 151192 | .unused, |
| 151193 | .unused, |
| 151194 | .unused, |
| 151195 | .unused, |
| 151196 | .unused, |
| 151197 | .unused, |
| 151198 | }, |
| 151199 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 151200 | .each = .{ .once = &.{ |
| 151201 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 151202 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 151203 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151204 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 151205 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151206 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 151207 | } }, |
| 151208 | }, .{ |
| 151209 | .required_features = .{ .f16c, null, null, null }, |
| 151210 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151211 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 151212 | .patterns = &.{ |
| 151213 | .{ .src = .{ .mem, .none, .none } }, |
| 151214 | .{ .src = .{ .to_sse, .none, .none } }, |
| 151215 | }, |
| 151216 | .extra_temps = .{ |
| 151217 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 151218 | .unused, |
| 151219 | .unused, |
| 151220 | .unused, |
| 151221 | .unused, |
| 151222 | .unused, |
| 151223 | .unused, |
| 151224 | .unused, |
| 151225 | .unused, |
| 151226 | .unused, |
| 151227 | .unused, |
| 151228 | }, |
| 151229 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 151230 | .each = .{ .once = &.{ |
| 151231 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 151232 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 151233 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151234 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 151235 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151236 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 151237 | } }, |
| 151238 | }, .{ |
| 151239 | .required_features = .{ .f16c, null, null, null }, |
| 151240 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151241 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 151242 | .patterns = &.{ |
| 151243 | .{ .src = .{ .to_sse, .none, .none } }, |
| 151244 | }, |
| 151245 | .extra_temps = .{ |
| 151246 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 151247 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 151248 | .{ .type = .vector_8_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 151249 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151250 | .unused, |
| 151251 | .unused, |
| 151252 | .unused, |
| 151253 | .unused, |
| 151254 | .unused, |
| 151255 | .unused, |
| 151256 | .unused, |
| 151257 | }, |
| 151258 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 151259 | .each = .{ .once = &.{ |
| 151260 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 151261 | .{ ._, .v_ps, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 151262 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 151263 | .{ ._, .v_ps, .@"or", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 151264 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 151265 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 151266 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151267 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 151268 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151269 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 151270 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151271 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 151272 | } }, |
| 151273 | }, .{ |
| 151274 | .required_features = .{ .f16c, null, null, null }, |
| 151275 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151276 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 151277 | .patterns = &.{ |
| 151278 | .{ .src = .{ .mem, .none, .none } }, |
| 151279 | .{ .src = .{ .to_sse, .none, .none } }, |
| 151280 | }, |
| 151281 | .extra_temps = .{ |
| 151282 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151283 | .unused, |
| 151284 | .unused, |
| 151285 | .unused, |
| 151286 | .unused, |
| 151287 | .unused, |
| 151288 | .unused, |
| 151289 | .unused, |
| 151290 | .unused, |
| 151291 | .unused, |
| 151292 | .unused, |
| 151293 | }, |
| 151294 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 151295 | .each = .{ .once = &.{ |
| 151296 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| 151297 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 151298 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151299 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 151300 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151301 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 151302 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151303 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 151304 | } }, |
| 151305 | }, .{ |
| 151306 | .required_features = .{ .f16c, null, null, null }, |
| 151307 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151308 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 151309 | .patterns = &.{ |
| 151310 | .{ .src = .{ .to_sse, .none, .none } }, |
| 151311 | }, |
| 151312 | .extra_temps = .{ |
| 151313 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 151314 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 151315 | .{ .type = .vector_16_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 151316 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151317 | .unused, |
| 151318 | .unused, |
| 151319 | .unused, |
| 151320 | .unused, |
| 151321 | .unused, |
| 151322 | .unused, |
| 151323 | .unused, |
| 151324 | }, |
| 151325 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 151326 | .each = .{ .once = &.{ |
| 151327 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 151328 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 151329 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 151330 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 151331 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 151332 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 151333 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 151334 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp3y, ._ }, |
| 151335 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 151336 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151337 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 151338 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151339 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 151340 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151341 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 151342 | } }, |
| 151343 | }, .{ |
| 151344 | .required_features = .{ .f16c, null, null, null }, |
| 151345 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151346 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 151347 | .patterns = &.{ |
| 151348 | .{ .src = .{ .to_sse, .none, .none } }, |
| 151349 | }, |
| 151350 | .extra_temps = .{ |
| 151351 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151352 | .unused, |
| 151353 | .unused, |
| 151354 | .unused, |
| 151355 | .unused, |
| 151356 | .unused, |
| 151357 | .unused, |
| 151358 | .unused, |
| 151359 | .unused, |
| 151360 | .unused, |
| 151361 | .unused, |
| 151362 | }, |
| 151363 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 151364 | .each = .{ .once = &.{ |
| 151365 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 151366 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| 151367 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| 151368 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp0y, ._ }, |
| 151369 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 151370 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151371 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 151372 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151373 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 151374 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151375 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 151376 | } }, |
| 151377 | }, .{ |
| 151378 | .required_features = .{ .avx512f, null, null, null }, |
| 151379 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151380 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 151381 | .patterns = &.{ |
| 151382 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151383 | }, |
| 151384 | .extra_temps = .{ |
| 151385 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 151386 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 151387 | .{ .type = .vector_32_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 151388 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151389 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151390 | .unused, |
| 151391 | .unused, |
| 151392 | .unused, |
| 151393 | .unused, |
| 151394 | .unused, |
| 151395 | .unused, |
| 151396 | }, |
| 151397 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 151398 | .each = .{ .once = &.{ |
| 151399 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 151400 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 151401 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 151402 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 151403 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 151404 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 151405 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 151406 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 151407 | .{ ._, .v_f128, .extract, .tmp4x, .tmp3y, .ui(1), ._ }, |
| 151408 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 151409 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 151410 | .{ ._, .v_ps, .min, .tmp3y, .tmp3y, .tmp4y, ._ }, |
| 151411 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 151412 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 151413 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 151414 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp4y, ._ }, |
| 151415 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp3y, ._ }, |
| 151416 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 151417 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151418 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 151419 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151420 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 151421 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151422 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 151423 | } }, |
| 151424 | }, .{ |
| 151425 | .required_features = .{ .avx512f, null, null, null }, |
| 151426 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151427 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 151428 | .patterns = &.{ |
| 151429 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151430 | }, |
| 151431 | .extra_temps = .{ |
| 151432 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151433 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151434 | .unused, |
| 151435 | .unused, |
| 151436 | .unused, |
| 151437 | .unused, |
| 151438 | .unused, |
| 151439 | .unused, |
| 151440 | .unused, |
| 151441 | .unused, |
| 151442 | .unused, |
| 151443 | }, |
| 151444 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 151445 | .each = .{ .once = &.{ |
| 151446 | .{ ._, .v_ps, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 151447 | .{ ._, .v_ps, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 151448 | .{ ._, .v_f128, .extract, .tmp1x, .tmp0y, .ui(1), ._ }, |
| 151449 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| 151450 | .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ }, |
| 151451 | .{ ._, .v_ps, .min, .tmp0y, .tmp0y, .tmp1y, ._ }, |
| 151452 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 151453 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 151454 | .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ }, |
| 151455 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp1y, ._ }, |
| 151456 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp0y, ._ }, |
| 151457 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 151458 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151459 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 151460 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151461 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 151462 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151463 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 151464 | } }, |
| 151465 | }, .{ |
| 151466 | .required_features = .{ .f16c, null, null, null }, |
| 151467 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151468 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 151469 | .patterns = &.{ |
| 151470 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151471 | }, |
| 151472 | .extra_temps = .{ |
| 151473 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 151474 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151475 | .unused, |
| 151476 | .unused, |
| 151477 | .unused, |
| 151478 | .unused, |
| 151479 | .unused, |
| 151480 | .unused, |
| 151481 | .unused, |
| 151482 | .unused, |
| 151483 | .unused, |
| 151484 | }, |
| 151485 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 151486 | .clobbers = .{ .eflags = true }, |
| 151487 | .each = .{ .once = &.{ |
| 151488 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 151489 | .{ ._, .v_ps, .cvtph2, .dst0y, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 151490 | .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| 151491 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp1y, ._ }, |
| 151492 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 151493 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 151494 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 151495 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp1x, ._ }, |
| 151496 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 151497 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp1x, ._ }, |
| 151498 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 151499 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp1x, ._ }, |
| 151500 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 151501 | } }, |
| 151502 | }, .{ |
| 151503 | .required_features = .{ .avx512f, null, null, null }, |
| 151504 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151505 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 151506 | .patterns = &.{ |
| 151507 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151508 | }, |
| 151509 | .extra_temps = .{ |
| 151510 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 151511 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 151512 | .{ .type = .vector_32_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 151513 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151514 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151515 | .unused, |
| 151516 | .unused, |
| 151517 | .unused, |
| 151518 | .unused, |
| 151519 | .unused, |
| 151520 | .unused, |
| 151521 | }, |
| 151522 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 151523 | .clobbers = .{ .eflags = true }, |
| 151524 | .each = .{ .once = &.{ |
| 151525 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 151526 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 151527 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 151528 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 151529 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 151530 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 151531 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 151532 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 151533 | .{ ._, ._, .mov, .tmp0d, .sia(-80, .src0, .add_size), ._, ._ }, |
| 151534 | .{ ._, .v_f128, .extract, .tmp4x, .tmp3y, .ui(1), ._ }, |
| 151535 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 151536 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 151537 | .{ ._, .v_ps, .min, .tmp3y, .tmp3y, .tmp4y, ._ }, |
| 151538 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 151539 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 151540 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 151541 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp4y, ._ }, |
| 151542 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp3y, ._ }, |
| 151543 | .{ .@"0:", .v_ps, .cvtph2, .tmp3y, .memi(.src0x, .tmp0), ._, ._ }, |
| 151544 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp3y, ._ }, |
| 151545 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 151546 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 151547 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 151548 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151549 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 151550 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151551 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 151552 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151553 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 151554 | } }, |
| 151555 | }, .{ |
| 151556 | .required_features = .{ .f16c, null, null, null }, |
| 151557 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151558 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 151559 | .patterns = &.{ |
| 151560 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151561 | }, |
| 151562 | .extra_temps = .{ |
| 151563 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 151564 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 151565 | .{ .type = .vector_16_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 151566 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151567 | .unused, |
| 151568 | .unused, |
| 151569 | .unused, |
| 151570 | .unused, |
| 151571 | .unused, |
| 151572 | .unused, |
| 151573 | .unused, |
| 151574 | }, |
| 151575 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 151576 | .clobbers = .{ .eflags = true }, |
| 151577 | .each = .{ .once = &.{ |
| 151578 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 151579 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 151580 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 151581 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 151582 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 151583 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 151584 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 151585 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 151586 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 151587 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp3y, ._ }, |
| 151588 | .{ .@"0:", .v_ps, .cvtph2, .tmp3y, .memi(.src0x, .tmp0), ._, ._ }, |
| 151589 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp3y, ._ }, |
| 151590 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 151591 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 151592 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 151593 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151594 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 151595 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151596 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 151597 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151598 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 151599 | } }, |
| 151600 | }, .{ |
| 151601 | .required_features = .{ .avx, null, null, null }, |
| 151602 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151603 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 151604 | .patterns = &.{ |
| 151605 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151606 | }, |
| 151607 | .call_frame = .{ .alignment = .@"16" }, |
| 151608 | .extra_temps = .{ |
| 151609 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 151610 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 151611 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fminh" } } }, |
| 151612 | .unused, |
| 151613 | .unused, |
| 151614 | .unused, |
| 151615 | .unused, |
| 151616 | .unused, |
| 151617 | .unused, |
| 151618 | .unused, |
| 151619 | .unused, |
| 151620 | }, |
| 151621 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 151622 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 151623 | .each = .{ .once = &.{ |
| 151624 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .dst0x, ._ }, |
| 151625 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 151626 | .{ ._, .vp_w, .insr, .dst0x, .dst0x, .memad(.src0w, .add_unaligned_size, -2), .ui(0) }, |
| 151627 | .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| 151628 | .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memi(.src0w, .tmp0), .ui(0) }, |
| 151629 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 151630 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 151631 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 151632 | } }, |
| 151633 | }, .{ |
| 151634 | .required_features = .{ .sse2, null, null, null }, |
| 151635 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151636 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 151637 | .patterns = &.{ |
| 151638 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151639 | }, |
| 151640 | .call_frame = .{ .alignment = .@"16" }, |
| 151641 | .extra_temps = .{ |
| 151642 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 151643 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 151644 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fminh" } } }, |
| 151645 | .unused, |
| 151646 | .unused, |
| 151647 | .unused, |
| 151648 | .unused, |
| 151649 | .unused, |
| 151650 | .unused, |
| 151651 | .unused, |
| 151652 | .unused, |
| 151653 | }, |
| 151654 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 151655 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 151656 | .each = .{ .once = &.{ |
| 151657 | .{ ._, .p_, .xor, .dst0x, .dst0x, ._, ._ }, |
| 151658 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 151659 | .{ ._, .p_w, .insr, .dst0x, .memad(.src0w, .add_unaligned_size, -2), .ui(0), ._ }, |
| 151660 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 151661 | .{ ._, .p_w, .insr, .tmp1x, .memi(.src0w, .tmp0), .ui(0), ._ }, |
| 151662 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 151663 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 151664 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 151665 | } }, |
| 151666 | }, .{ |
| 151667 | .required_features = .{ .sse, null, null, null }, |
| 151668 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 151669 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 151670 | .patterns = &.{ |
| 151671 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151672 | }, |
| 151673 | .call_frame = .{ .alignment = .@"16" }, |
| 151674 | .extra_temps = .{ |
| 151675 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 151676 | .{ .type = .f16, .kind = .{ .reg = .ax } }, |
| 151677 | .{ .type = .f32, .kind = .mem }, |
| 151678 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 151679 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fminh" } } }, |
| 151680 | .unused, |
| 151681 | .unused, |
| 151682 | .unused, |
| 151683 | .unused, |
| 151684 | .unused, |
| 151685 | .unused, |
| 151686 | }, |
| 151687 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 151688 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 151689 | .each = .{ .once = &.{ |
| 151690 | .{ ._, ._ps, .xor, .dst0x, .dst0x, ._, ._ }, |
| 151691 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 151692 | .{ ._, ._, .movzx, .tmp1d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 151693 | .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ }, |
| 151694 | .{ ._, ._ss, .mov, .dst0x, .mem(.tmp2d), ._, ._ }, |
| 151695 | .{ .@"0:", ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 151696 | .{ ._, ._ss, .mov, .tmp3x, .memi(.src0d, .tmp0), ._, ._ }, |
| 151697 | .{ ._, ._, .call, .tmp4d, ._, ._, ._ }, |
| 151698 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 151699 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 151700 | } }, |
| 151701 | }, .{ |
| 151702 | .required_features = .{ .avx, null, null, null }, |
| 151703 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 151704 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 151705 | .patterns = &.{ |
| 151706 | .{ .src = .{ .to_sse, .none, .none } }, |
| 151707 | }, |
| 151708 | .extra_temps = .{ |
| 151709 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 151710 | .unused, |
| 151711 | .unused, |
| 151712 | .unused, |
| 151713 | .unused, |
| 151714 | .unused, |
| 151715 | .unused, |
| 151716 | .unused, |
| 151717 | .unused, |
| 151718 | .unused, |
| 151719 | .unused, |
| 151720 | }, |
| 151721 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 151722 | .each = .{ .once = &.{ |
| 151723 | .{ ._, .v_ps, .shuf, .tmp0x, .src0x, .src0x, .ui(0b01) }, |
| 151724 | .{ ._, .v_ss, .min, .dst0x, .src0x, .tmp0x, ._ }, |
| 151725 | } }, |
| 151726 | }, .{ |
| 151727 | .required_features = .{ .sse, null, null, null }, |
| 151728 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 151729 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 151730 | .patterns = &.{ |
| 151731 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 151732 | }, |
| 151733 | .extra_temps = .{ |
| 151734 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 151735 | .unused, |
| 151736 | .unused, |
| 151737 | .unused, |
| 151738 | .unused, |
| 151739 | .unused, |
| 151740 | .unused, |
| 151741 | .unused, |
| 151742 | .unused, |
| 151743 | .unused, |
| 151744 | .unused, |
| 151745 | }, |
| 151746 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 151747 | .each = .{ .once = &.{ |
| 151748 | .{ ._, ._ps, .mova, .tmp0x, .src0x, ._, ._ }, |
| 151749 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 151750 | .{ ._, ._ss, .min, .dst0x, .tmp0x, ._, ._ }, |
| 151751 | } }, |
| 151752 | }, .{ |
| 151753 | .required_features = .{ .avx, null, null, null }, |
| 151754 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 151755 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 151756 | .patterns = &.{ |
| 151757 | .{ .src = .{ .to_sse, .none, .none } }, |
| 151758 | }, |
| 151759 | .extra_temps = .{ |
| 151760 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 151761 | .unused, |
| 151762 | .unused, |
| 151763 | .unused, |
| 151764 | .unused, |
| 151765 | .unused, |
| 151766 | .unused, |
| 151767 | .unused, |
| 151768 | .unused, |
| 151769 | .unused, |
| 151770 | .unused, |
| 151771 | }, |
| 151772 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 151773 | .each = .{ .once = &.{ |
| 151774 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 151775 | .{ ._, .v_ss, .min, .tmp0x, .src0x, .tmp0x, ._ }, |
| 151776 | .{ ._, .v_ps, .shuf, .dst0x, .src0x, .src0x, .ui(0b01) }, |
| 151777 | .{ ._, .v_ss, .min, .dst0x, .tmp0x, .dst0x, ._ }, |
| 151778 | } }, |
| 151779 | }, .{ |
| 151780 | .required_features = .{ .sse, null, null, null }, |
| 151781 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 151782 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 151783 | .patterns = &.{ |
| 151784 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 151785 | }, |
| 151786 | .extra_temps = .{ |
| 151787 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 151788 | .unused, |
| 151789 | .unused, |
| 151790 | .unused, |
| 151791 | .unused, |
| 151792 | .unused, |
| 151793 | .unused, |
| 151794 | .unused, |
| 151795 | .unused, |
| 151796 | .unused, |
| 151797 | .unused, |
| 151798 | }, |
| 151799 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 151800 | .each = .{ .once = &.{ |
| 151801 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 151802 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 151803 | .{ ._, ._ss, .min, .tmp0x, .src0x, ._, ._ }, |
| 151804 | .{ ._, ._ps, .shuf, .dst0x, .src0x, .ui(0b01), ._ }, |
| 151805 | .{ ._, ._ss, .min, .dst0x, .tmp0x, ._, ._ }, |
| 151806 | } }, |
| 151807 | }, .{ |
| 151808 | .required_features = .{ .avx, null, null, null }, |
| 151809 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 151810 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 151811 | .patterns = &.{ |
| 151812 | .{ .src = .{ .to_sse, .none, .none } }, |
| 151813 | }, |
| 151814 | .extra_temps = .{ |
| 151815 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 151816 | .unused, |
| 151817 | .unused, |
| 151818 | .unused, |
| 151819 | .unused, |
| 151820 | .unused, |
| 151821 | .unused, |
| 151822 | .unused, |
| 151823 | .unused, |
| 151824 | .unused, |
| 151825 | .unused, |
| 151826 | }, |
| 151827 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 151828 | .each = .{ .once = &.{ |
| 151829 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 151830 | .{ ._, .v_ps, .min, .dst0x, .src0x, .tmp0x, ._ }, |
| 151831 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 151832 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151833 | } }, |
| 151834 | }, .{ |
| 151835 | .required_features = .{ .sse, null, null, null }, |
| 151836 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 151837 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 151838 | .patterns = &.{ |
| 151839 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 151840 | }, |
| 151841 | .extra_temps = .{ |
| 151842 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 151843 | .unused, |
| 151844 | .unused, |
| 151845 | .unused, |
| 151846 | .unused, |
| 151847 | .unused, |
| 151848 | .unused, |
| 151849 | .unused, |
| 151850 | .unused, |
| 151851 | .unused, |
| 151852 | .unused, |
| 151853 | }, |
| 151854 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 151855 | .each = .{ .once = &.{ |
| 151856 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 151857 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 151858 | .{ ._, ._ps, .min, .dst0x, .tmp0x, ._, ._ }, |
| 151859 | .{ ._, ._ps, .mova, .tmp0x, .dst0x, ._, ._ }, |
| 151860 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 151861 | .{ ._, ._ss, .min, .dst0x, .tmp0x, ._, ._ }, |
| 151862 | } }, |
| 151863 | }, .{ |
| 151864 | .required_features = .{ .avx, null, null, null }, |
| 151865 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 151866 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 151867 | .patterns = &.{ |
| 151868 | .{ .src = .{ .to_sse, .none, .none } }, |
| 151869 | }, |
| 151870 | .extra_temps = .{ |
| 151871 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 151872 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 151873 | .{ .type = .vector_8_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 151874 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 151875 | .unused, |
| 151876 | .unused, |
| 151877 | .unused, |
| 151878 | .unused, |
| 151879 | .unused, |
| 151880 | .unused, |
| 151881 | .unused, |
| 151882 | }, |
| 151883 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 151884 | .each = .{ .once = &.{ |
| 151885 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 151886 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 151887 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 151888 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 151889 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 151890 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151891 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 151892 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151893 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 151894 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151895 | } }, |
| 151896 | }, .{ |
| 151897 | .required_features = .{ .avx, null, null, null }, |
| 151898 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 151899 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 151900 | .patterns = &.{ |
| 151901 | .{ .src = .{ .to_sse, .none, .none } }, |
| 151902 | }, |
| 151903 | .extra_temps = .{ |
| 151904 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 151905 | .unused, |
| 151906 | .unused, |
| 151907 | .unused, |
| 151908 | .unused, |
| 151909 | .unused, |
| 151910 | .unused, |
| 151911 | .unused, |
| 151912 | .unused, |
| 151913 | .unused, |
| 151914 | .unused, |
| 151915 | }, |
| 151916 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 151917 | .each = .{ .once = &.{ |
| 151918 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 151919 | .{ ._, .v_ps, .min, .dst0x, .src0x, .tmp0x, ._ }, |
| 151920 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 151921 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151922 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 151923 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151924 | } }, |
| 151925 | }, .{ |
| 151926 | .required_features = .{ .avx512f, null, null, null }, |
| 151927 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 151928 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 151929 | .patterns = &.{ |
| 151930 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151931 | }, |
| 151932 | .extra_temps = .{ |
| 151933 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 151934 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 151935 | .{ .type = .vector_16_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 151936 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 151937 | .unused, |
| 151938 | .unused, |
| 151939 | .unused, |
| 151940 | .unused, |
| 151941 | .unused, |
| 151942 | .unused, |
| 151943 | .unused, |
| 151944 | }, |
| 151945 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 151946 | .each = .{ .once = &.{ |
| 151947 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 151948 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 151949 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 151950 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 151951 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 151952 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 151953 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 151954 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 151955 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp3y, ._ }, |
| 151956 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 151957 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151958 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 151959 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151960 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 151961 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 151962 | } }, |
| 151963 | }, .{ |
| 151964 | .required_features = .{ .avx512f, null, null, null }, |
| 151965 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 151966 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 151967 | .patterns = &.{ |
| 151968 | .{ .src = .{ .to_mem, .none, .none } }, |
| 151969 | }, |
| 151970 | .extra_temps = .{ |
| 151971 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 151972 | .unused, |
| 151973 | .unused, |
| 151974 | .unused, |
| 151975 | .unused, |
| 151976 | .unused, |
| 151977 | .unused, |
| 151978 | .unused, |
| 151979 | .unused, |
| 151980 | .unused, |
| 151981 | .unused, |
| 151982 | }, |
| 151983 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 151984 | .each = .{ .once = &.{ |
| 151985 | .{ ._, .v_ps, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 151986 | .{ ._, .v_ps, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 151987 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp0y, ._ }, |
| 151988 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 151989 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151990 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 151991 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151992 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 151993 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 151994 | } }, |
| 151995 | }, .{ |
| 151996 | .required_features = .{ .avx, null, null, null }, |
| 151997 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 151998 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 151999 | .patterns = &.{ |
| 152000 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152001 | }, |
| 152002 | .extra_temps = .{ |
| 152003 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152004 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 152005 | .unused, |
| 152006 | .unused, |
| 152007 | .unused, |
| 152008 | .unused, |
| 152009 | .unused, |
| 152010 | .unused, |
| 152011 | .unused, |
| 152012 | .unused, |
| 152013 | .unused, |
| 152014 | }, |
| 152015 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 152016 | .clobbers = .{ .eflags = true }, |
| 152017 | .each = .{ .once = &.{ |
| 152018 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 152019 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 152020 | .{ .@"0:", .v_ps, .min, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 152021 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 152022 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152023 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 152024 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp1x, ._ }, |
| 152025 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 152026 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp1x, ._ }, |
| 152027 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 152028 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp1x, ._ }, |
| 152029 | } }, |
| 152030 | }, .{ |
| 152031 | .required_features = .{ .sse, null, null, null }, |
| 152032 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 152033 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 152034 | .patterns = &.{ |
| 152035 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152036 | }, |
| 152037 | .extra_temps = .{ |
| 152038 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152039 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 152040 | .unused, |
| 152041 | .unused, |
| 152042 | .unused, |
| 152043 | .unused, |
| 152044 | .unused, |
| 152045 | .unused, |
| 152046 | .unused, |
| 152047 | .unused, |
| 152048 | .unused, |
| 152049 | }, |
| 152050 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 152051 | .clobbers = .{ .eflags = true }, |
| 152052 | .each = .{ .once = &.{ |
| 152053 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 152054 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 152055 | .{ .@"0:", ._ps, .min, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 152056 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 152057 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152058 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 152059 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| 152060 | .{ ._, ._ps, .min, .dst0x, .tmp1x, ._, ._ }, |
| 152061 | .{ ._, ._ps, .mova, .tmp1x, .dst0x, ._, ._ }, |
| 152062 | .{ ._, ._ps, .shuf, .tmp1x, .tmp1x, .ui(0b01), ._ }, |
| 152063 | .{ ._, ._ss, .min, .dst0x, .tmp1x, ._, ._ }, |
| 152064 | } }, |
| 152065 | }, .{ |
| 152066 | .required_features = .{ .avx512f, null, null, null }, |
| 152067 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 152068 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 152069 | .patterns = &.{ |
| 152070 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152071 | }, |
| 152072 | .extra_temps = .{ |
| 152073 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152074 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 152075 | .{ .type = .vector_16_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 152076 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 152077 | .unused, |
| 152078 | .unused, |
| 152079 | .unused, |
| 152080 | .unused, |
| 152081 | .unused, |
| 152082 | .unused, |
| 152083 | .unused, |
| 152084 | }, |
| 152085 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 152086 | .clobbers = .{ .eflags = true }, |
| 152087 | .each = .{ .once = &.{ |
| 152088 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 152089 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 152090 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 152091 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 152092 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 152093 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 152094 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 152095 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 152096 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 152097 | .{ .@"0:", .v_ps, .min, .tmp3y, .tmp3y, .memid(.src0y, .tmp0, 32), ._ }, |
| 152098 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 152099 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 152100 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152101 | .{ ._, .v_ps, .min, .dst0y, .dst0y, .tmp3y, ._ }, |
| 152102 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 152103 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152104 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 152105 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152106 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 152107 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152108 | } }, |
| 152109 | }, .{ |
| 152110 | .required_features = .{ .avx, null, null, null }, |
| 152111 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 152112 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 152113 | .patterns = &.{ |
| 152114 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152115 | }, |
| 152116 | .extra_temps = .{ |
| 152117 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152118 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 152119 | .{ .type = .vector_8_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 152120 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 152121 | .unused, |
| 152122 | .unused, |
| 152123 | .unused, |
| 152124 | .unused, |
| 152125 | .unused, |
| 152126 | .unused, |
| 152127 | .unused, |
| 152128 | }, |
| 152129 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 152130 | .clobbers = .{ .eflags = true }, |
| 152131 | .each = .{ .once = &.{ |
| 152132 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 152133 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 152134 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 152135 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 152136 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 152137 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 152138 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 152139 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152140 | .{ .@"0:", .v_ps, .min, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 152141 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 152142 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152143 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 152144 | .{ ._, .v_ps, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152145 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 152146 | .{ ._, .v_ss, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152147 | } }, |
| 152148 | }, .{ |
| 152149 | .required_features = .{ .sse, null, null, null }, |
| 152150 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 152151 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 152152 | .patterns = &.{ |
| 152153 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152154 | }, |
| 152155 | .extra_temps = .{ |
| 152156 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152157 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 152158 | .{ .type = .vector_4_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 152159 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 152160 | .unused, |
| 152161 | .unused, |
| 152162 | .unused, |
| 152163 | .unused, |
| 152164 | .unused, |
| 152165 | .unused, |
| 152166 | .unused, |
| 152167 | }, |
| 152168 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 152169 | .clobbers = .{ .eflags = true }, |
| 152170 | .each = .{ .once = &.{ |
| 152171 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 152172 | .{ ._, ._ps, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 152173 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 152174 | .{ ._, ._ps, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 152175 | .{ ._, ._ps, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 152176 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 152177 | .{ .@"0:", ._ps, .min, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 152178 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 152179 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152180 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 152181 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| 152182 | .{ ._, ._ps, .min, .dst0x, .tmp3x, ._, ._ }, |
| 152183 | .{ ._, ._ps, .mova, .tmp3x, .dst0x, ._, ._ }, |
| 152184 | .{ ._, ._ps, .shuf, .tmp3x, .tmp3x, .ui(0b01), ._ }, |
| 152185 | .{ ._, ._ss, .min, .dst0x, .tmp3x, ._, ._ }, |
| 152186 | } }, |
| 152187 | }, .{ |
| 152188 | .required_features = .{ .avx, null, null, null }, |
| 152189 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152190 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 152191 | .patterns = &.{ |
| 152192 | .{ .src = .{ .to_sse, .none, .none } }, |
| 152193 | }, |
| 152194 | .extra_temps = .{ |
| 152195 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 152196 | .unused, |
| 152197 | .unused, |
| 152198 | .unused, |
| 152199 | .unused, |
| 152200 | .unused, |
| 152201 | .unused, |
| 152202 | .unused, |
| 152203 | .unused, |
| 152204 | .unused, |
| 152205 | .unused, |
| 152206 | }, |
| 152207 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 152208 | .each = .{ .once = &.{ |
| 152209 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 152210 | .{ ._, .v_sd, .min, .dst0x, .src0x, .tmp0x, ._ }, |
| 152211 | } }, |
| 152212 | }, .{ |
| 152213 | .required_features = .{ .sse2, null, null, null }, |
| 152214 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152215 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 152216 | .patterns = &.{ |
| 152217 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 152218 | }, |
| 152219 | .extra_temps = .{ |
| 152220 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 152221 | .unused, |
| 152222 | .unused, |
| 152223 | .unused, |
| 152224 | .unused, |
| 152225 | .unused, |
| 152226 | .unused, |
| 152227 | .unused, |
| 152228 | .unused, |
| 152229 | .unused, |
| 152230 | .unused, |
| 152231 | }, |
| 152232 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 152233 | .each = .{ .once = &.{ |
| 152234 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 152235 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 152236 | .{ ._, ._sd, .min, .dst0x, .tmp0x, ._, ._ }, |
| 152237 | } }, |
| 152238 | }, .{ |
| 152239 | .required_features = .{ .avx, null, null, null }, |
| 152240 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152241 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 152242 | .patterns = &.{ |
| 152243 | .{ .src = .{ .to_sse, .none, .none } }, |
| 152244 | }, |
| 152245 | .extra_temps = .{ |
| 152246 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 152247 | .unused, |
| 152248 | .unused, |
| 152249 | .unused, |
| 152250 | .unused, |
| 152251 | .unused, |
| 152252 | .unused, |
| 152253 | .unused, |
| 152254 | .unused, |
| 152255 | .unused, |
| 152256 | .unused, |
| 152257 | }, |
| 152258 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 152259 | .each = .{ .once = &.{ |
| 152260 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 152261 | .{ ._, .v_sd, .min, .tmp0x, .src0x, .tmp0x, ._ }, |
| 152262 | .{ ._, .v_ps, .movhl, .dst0x, .src0x, .src0x, ._ }, |
| 152263 | .{ ._, .v_sd, .min, .dst0x, .tmp0x, .dst0x, ._ }, |
| 152264 | } }, |
| 152265 | }, .{ |
| 152266 | .required_features = .{ .avx, null, null, null }, |
| 152267 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152268 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 152269 | .patterns = &.{ |
| 152270 | .{ .src = .{ .to_sse, .none, .none } }, |
| 152271 | }, |
| 152272 | .extra_temps = .{ |
| 152273 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 152274 | .unused, |
| 152275 | .unused, |
| 152276 | .unused, |
| 152277 | .unused, |
| 152278 | .unused, |
| 152279 | .unused, |
| 152280 | .unused, |
| 152281 | .unused, |
| 152282 | .unused, |
| 152283 | .unused, |
| 152284 | }, |
| 152285 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 152286 | .each = .{ .once = &.{ |
| 152287 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 152288 | .{ ._, .v_pd, .min, .dst0x, .src0x, .tmp0x, ._ }, |
| 152289 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 152290 | .{ ._, .v_sd, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 152291 | } }, |
| 152292 | }, .{ |
| 152293 | .required_features = .{ .avx512f, null, null, null }, |
| 152294 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152295 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 152296 | .patterns = &.{ |
| 152297 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152298 | }, |
| 152299 | .extra_temps = .{ |
| 152300 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 152301 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 152302 | .{ .type = .vector_8_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 152303 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| 152304 | .unused, |
| 152305 | .unused, |
| 152306 | .unused, |
| 152307 | .unused, |
| 152308 | .unused, |
| 152309 | .unused, |
| 152310 | .unused, |
| 152311 | }, |
| 152312 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 152313 | .each = .{ .once = &.{ |
| 152314 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 152315 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 152316 | .{ ._, .v_pd, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 152317 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 152318 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 152319 | .{ ._, .v_pd, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 152320 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 152321 | .{ ._, .v_pd, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 152322 | .{ ._, .v_pd, .min, .dst0y, .dst0y, .tmp3y, ._ }, |
| 152323 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 152324 | .{ ._, .v_pd, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152325 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 152326 | .{ ._, .v_sd, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152327 | } }, |
| 152328 | }, .{ |
| 152329 | .required_features = .{ .avx512f, null, null, null }, |
| 152330 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152331 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 152332 | .patterns = &.{ |
| 152333 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152334 | }, |
| 152335 | .extra_temps = .{ |
| 152336 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 152337 | .unused, |
| 152338 | .unused, |
| 152339 | .unused, |
| 152340 | .unused, |
| 152341 | .unused, |
| 152342 | .unused, |
| 152343 | .unused, |
| 152344 | .unused, |
| 152345 | .unused, |
| 152346 | .unused, |
| 152347 | }, |
| 152348 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 152349 | .each = .{ .once = &.{ |
| 152350 | .{ ._, .v_pd, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 152351 | .{ ._, .v_pd, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 152352 | .{ ._, .v_pd, .min, .dst0y, .dst0y, .tmp0y, ._ }, |
| 152353 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 152354 | .{ ._, .v_pd, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 152355 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 152356 | .{ ._, .v_sd, .min, .dst0x, .dst0x, .tmp0x, ._ }, |
| 152357 | } }, |
| 152358 | }, .{ |
| 152359 | .required_features = .{ .avx, null, null, null }, |
| 152360 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152361 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 152362 | .patterns = &.{ |
| 152363 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152364 | }, |
| 152365 | .extra_temps = .{ |
| 152366 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152367 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 152368 | .unused, |
| 152369 | .unused, |
| 152370 | .unused, |
| 152371 | .unused, |
| 152372 | .unused, |
| 152373 | .unused, |
| 152374 | .unused, |
| 152375 | .unused, |
| 152376 | .unused, |
| 152377 | }, |
| 152378 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 152379 | .clobbers = .{ .eflags = true }, |
| 152380 | .each = .{ .once = &.{ |
| 152381 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 152382 | .{ ._, .v_pd, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 152383 | .{ .@"0:", .v_pd, .min, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 152384 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 152385 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152386 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 152387 | .{ ._, .v_pd, .min, .dst0x, .dst0x, .tmp1x, ._ }, |
| 152388 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 152389 | .{ ._, .v_sd, .min, .dst0x, .dst0x, .tmp1x, ._ }, |
| 152390 | } }, |
| 152391 | }, .{ |
| 152392 | .required_features = .{ .sse2, null, null, null }, |
| 152393 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152394 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 152395 | .patterns = &.{ |
| 152396 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152397 | }, |
| 152398 | .extra_temps = .{ |
| 152399 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152400 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 152401 | .unused, |
| 152402 | .unused, |
| 152403 | .unused, |
| 152404 | .unused, |
| 152405 | .unused, |
| 152406 | .unused, |
| 152407 | .unused, |
| 152408 | .unused, |
| 152409 | .unused, |
| 152410 | }, |
| 152411 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 152412 | .clobbers = .{ .eflags = true }, |
| 152413 | .each = .{ .once = &.{ |
| 152414 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 152415 | .{ ._, ._pd, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 152416 | .{ .@"0:", ._pd, .min, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 152417 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 152418 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152419 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 152420 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| 152421 | .{ ._, ._sd, .min, .dst0x, .tmp1x, ._, ._ }, |
| 152422 | } }, |
| 152423 | }, .{ |
| 152424 | .required_features = .{ .avx512f, null, null, null }, |
| 152425 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152426 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 152427 | .patterns = &.{ |
| 152428 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152429 | }, |
| 152430 | .extra_temps = .{ |
| 152431 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152432 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 152433 | .{ .type = .vector_8_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 152434 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| 152435 | .unused, |
| 152436 | .unused, |
| 152437 | .unused, |
| 152438 | .unused, |
| 152439 | .unused, |
| 152440 | .unused, |
| 152441 | .unused, |
| 152442 | }, |
| 152443 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 152444 | .clobbers = .{ .eflags = true }, |
| 152445 | .each = .{ .once = &.{ |
| 152446 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 152447 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 152448 | .{ ._, .v_pd, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 152449 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 152450 | .{ ._, .v_pd, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 152451 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 152452 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 152453 | .{ ._, .v_pd, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 152454 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 152455 | .{ .@"0:", .v_pd, .min, .tmp3y, .tmp3y, .memid(.src0y, .tmp0, 32), ._ }, |
| 152456 | .{ ._, .v_pd, .min, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 152457 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 152458 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152459 | .{ ._, .v_pd, .min, .dst0y, .dst0y, .tmp3y, ._ }, |
| 152460 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 152461 | .{ ._, .v_pd, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152462 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 152463 | .{ ._, .v_sd, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152464 | } }, |
| 152465 | }, .{ |
| 152466 | .required_features = .{ .avx, null, null, null }, |
| 152467 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152468 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 152469 | .patterns = &.{ |
| 152470 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152471 | }, |
| 152472 | .extra_temps = .{ |
| 152473 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152474 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 152475 | .{ .type = .vector_4_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 152476 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 152477 | .unused, |
| 152478 | .unused, |
| 152479 | .unused, |
| 152480 | .unused, |
| 152481 | .unused, |
| 152482 | .unused, |
| 152483 | .unused, |
| 152484 | }, |
| 152485 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 152486 | .clobbers = .{ .eflags = true }, |
| 152487 | .each = .{ .once = &.{ |
| 152488 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 152489 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 152490 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 152491 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 152492 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 152493 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 152494 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 152495 | .{ ._, .v_pd, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152496 | .{ .@"0:", .v_pd, .min, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 152497 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 152498 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152499 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 152500 | .{ ._, .v_sd, .min, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152501 | } }, |
| 152502 | }, .{ |
| 152503 | .required_features = .{ .sse2, null, null, null }, |
| 152504 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152505 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 152506 | .patterns = &.{ |
| 152507 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152508 | }, |
| 152509 | .extra_temps = .{ |
| 152510 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152511 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 152512 | .{ .type = .vector_2_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = inf } } }, |
| 152513 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 152514 | .unused, |
| 152515 | .unused, |
| 152516 | .unused, |
| 152517 | .unused, |
| 152518 | .unused, |
| 152519 | .unused, |
| 152520 | .unused, |
| 152521 | }, |
| 152522 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 152523 | .clobbers = .{ .eflags = true }, |
| 152524 | .each = .{ .once = &.{ |
| 152525 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 152526 | .{ ._, ._pd, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 152527 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 152528 | .{ ._, ._pd, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 152529 | .{ ._, ._pd, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 152530 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 152531 | .{ .@"0:", ._pd, .min, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 152532 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 152533 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152534 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 152535 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| 152536 | .{ ._, ._sd, .min, .dst0x, .tmp3x, ._, ._ }, |
| 152537 | } }, |
| 152538 | }, .{ |
| 152539 | .required_features = .{ .x87, .cmov, null, null }, |
| 152540 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152541 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 152542 | .patterns = &.{ |
| 152543 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152544 | }, |
| 152545 | .extra_temps = .{ |
| 152546 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152547 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 152548 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 152549 | .unused, |
| 152550 | .unused, |
| 152551 | .unused, |
| 152552 | .unused, |
| 152553 | .unused, |
| 152554 | .unused, |
| 152555 | .unused, |
| 152556 | .unused, |
| 152557 | }, |
| 152558 | .dst_temps = .{ .mem, .unused }, |
| 152559 | .clobbers = .{ .eflags = true }, |
| 152560 | .each = .{ .once = &.{ |
| 152561 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 152562 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| 152563 | .{ .@"0:", .f_, .ld, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| 152564 | .{ ._, .f_, .ucomi, .tmp2t, .tmp1t, ._, ._ }, |
| 152565 | .{ ._, .f_nb, .cmov, .tmp2t, .tmp1t, ._, ._ }, |
| 152566 | .{ ._, .f_p, .st, .tmp1t, ._, ._, ._ }, |
| 152567 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 152568 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152569 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 152570 | } }, |
| 152571 | }, .{ |
| 152572 | .required_features = .{ .sahf, .x87, null, null }, |
| 152573 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152574 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 152575 | .patterns = &.{ |
| 152576 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152577 | }, |
| 152578 | .extra_temps = .{ |
| 152579 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152580 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 152581 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 152582 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 152583 | .unused, |
| 152584 | .unused, |
| 152585 | .unused, |
| 152586 | .unused, |
| 152587 | .unused, |
| 152588 | .unused, |
| 152589 | .unused, |
| 152590 | }, |
| 152591 | .dst_temps = .{ .mem, .unused }, |
| 152592 | .clobbers = .{ .eflags = true }, |
| 152593 | .each = .{ .once = &.{ |
| 152594 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 152595 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| 152596 | .{ .@"0:", .f_, .ld, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| 152597 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| 152598 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 152599 | .{ ._, ._, .sahf, ._, ._, ._, ._ }, |
| 152600 | .{ ._, ._nb, .j, .@"1f", ._, ._, ._ }, |
| 152601 | .{ ._, .f_, .st, .tmp1t, ._, ._, ._ }, |
| 152602 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 152603 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 152604 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152605 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 152606 | } }, |
| 152607 | }, .{ |
| 152608 | .required_features = .{ .x87, null, null, null }, |
| 152609 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 152610 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 152611 | .patterns = &.{ |
| 152612 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152613 | }, |
| 152614 | .extra_temps = .{ |
| 152615 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152616 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 152617 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 152618 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 152619 | .unused, |
| 152620 | .unused, |
| 152621 | .unused, |
| 152622 | .unused, |
| 152623 | .unused, |
| 152624 | .unused, |
| 152625 | .unused, |
| 152626 | }, |
| 152627 | .dst_temps = .{ .mem, .unused }, |
| 152628 | .clobbers = .{ .eflags = true }, |
| 152629 | .each = .{ .once = &.{ |
| 152630 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 152631 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| 152632 | .{ .@"0:", .f_, .ld, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| 152633 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| 152634 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 152635 | .{ ._, ._, .@"test", .tmp3h, .si(0b0_000_001), ._, ._ }, |
| 152636 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 152637 | .{ ._, .f_, .st, .tmp1t, ._, ._, ._ }, |
| 152638 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 152639 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 152640 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152641 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 152642 | } }, |
| 152643 | }, .{ |
| 152644 | .required_features = .{ .x87, .cmov, null, null }, |
| 152645 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 152646 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 152647 | .patterns = &.{ |
| 152648 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152649 | }, |
| 152650 | .extra_temps = .{ |
| 152651 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152652 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 152653 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 152654 | .unused, |
| 152655 | .unused, |
| 152656 | .unused, |
| 152657 | .unused, |
| 152658 | .unused, |
| 152659 | .unused, |
| 152660 | .unused, |
| 152661 | .unused, |
| 152662 | }, |
| 152663 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 152664 | .clobbers = .{ .eflags = true }, |
| 152665 | .each = .{ .once = &.{ |
| 152666 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 152667 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| 152668 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| 152669 | .{ ._, .f_, .ucomi, .tmp2t, .tmp1t, ._, ._ }, |
| 152670 | .{ ._, .f_nb, .cmov, .tmp2t, .tmp1t, ._, ._ }, |
| 152671 | .{ ._, .f_p, .st, .tmp1t, ._, ._, ._ }, |
| 152672 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 152673 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152674 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 152675 | } }, |
| 152676 | }, .{ |
| 152677 | .required_features = .{ .sahf, .x87, null, null }, |
| 152678 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 152679 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 152680 | .patterns = &.{ |
| 152681 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152682 | }, |
| 152683 | .extra_temps = .{ |
| 152684 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152685 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 152686 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 152687 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 152688 | .unused, |
| 152689 | .unused, |
| 152690 | .unused, |
| 152691 | .unused, |
| 152692 | .unused, |
| 152693 | .unused, |
| 152694 | .unused, |
| 152695 | }, |
| 152696 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 152697 | .clobbers = .{ .eflags = true }, |
| 152698 | .each = .{ .once = &.{ |
| 152699 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 152700 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| 152701 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| 152702 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| 152703 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 152704 | .{ ._, ._, .sahf, ._, ._, ._, ._ }, |
| 152705 | .{ ._, ._nb, .j, .@"1f", ._, ._, ._ }, |
| 152706 | .{ ._, .f_, .st, .tmp1t, ._, ._, ._ }, |
| 152707 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 152708 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 152709 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152710 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 152711 | } }, |
| 152712 | }, .{ |
| 152713 | .required_features = .{ .x87, null, null, null }, |
| 152714 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 152715 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 152716 | .patterns = &.{ |
| 152717 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152718 | }, |
| 152719 | .extra_temps = .{ |
| 152720 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152721 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 152722 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 152723 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 152724 | .unused, |
| 152725 | .unused, |
| 152726 | .unused, |
| 152727 | .unused, |
| 152728 | .unused, |
| 152729 | .unused, |
| 152730 | .unused, |
| 152731 | }, |
| 152732 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 152733 | .clobbers = .{ .eflags = true }, |
| 152734 | .each = .{ .once = &.{ |
| 152735 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 152736 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| 152737 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| 152738 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| 152739 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 152740 | .{ ._, ._, .@"test", .tmp3h, .si(0b0_000_001), ._, ._ }, |
| 152741 | .{ ._, ._z, .j, .@"1f", ._, ._, ._ }, |
| 152742 | .{ ._, .f_, .st, .tmp1t, ._, ._, ._ }, |
| 152743 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 152744 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 152745 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152746 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 152747 | } }, |
| 152748 | }, .{ |
| 152749 | .required_features = .{ .avx, null, null, null }, |
| 152750 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 152751 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 152752 | .patterns = &.{ |
| 152753 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152754 | }, |
| 152755 | .call_frame = .{ .alignment = .@"16" }, |
| 152756 | .extra_temps = .{ |
| 152757 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152758 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 152759 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fminq" } } }, |
| 152760 | .unused, |
| 152761 | .unused, |
| 152762 | .unused, |
| 152763 | .unused, |
| 152764 | .unused, |
| 152765 | .unused, |
| 152766 | .unused, |
| 152767 | .unused, |
| 152768 | }, |
| 152769 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 152770 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 152771 | .each = .{ .once = &.{ |
| 152772 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 152773 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 152774 | .{ .@"0:", .v_dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 152775 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 152776 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 152777 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152778 | } }, |
| 152779 | }, .{ |
| 152780 | .required_features = .{ .sse2, null, null, null }, |
| 152781 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 152782 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 152783 | .patterns = &.{ |
| 152784 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152785 | }, |
| 152786 | .call_frame = .{ .alignment = .@"16" }, |
| 152787 | .extra_temps = .{ |
| 152788 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152789 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 152790 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fminq" } } }, |
| 152791 | .unused, |
| 152792 | .unused, |
| 152793 | .unused, |
| 152794 | .unused, |
| 152795 | .unused, |
| 152796 | .unused, |
| 152797 | .unused, |
| 152798 | .unused, |
| 152799 | }, |
| 152800 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 152801 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 152802 | .each = .{ .once = &.{ |
| 152803 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 152804 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 152805 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 152806 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 152807 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 152808 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152809 | } }, |
| 152810 | }, .{ |
| 152811 | .required_features = .{ .sse, null, null, null }, |
| 152812 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 152813 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 152814 | .patterns = &.{ |
| 152815 | .{ .src = .{ .to_mem, .none, .none } }, |
| 152816 | }, |
| 152817 | .call_frame = .{ .alignment = .@"16" }, |
| 152818 | .extra_temps = .{ |
| 152819 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 152820 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 152821 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fminq" } } }, |
| 152822 | .unused, |
| 152823 | .unused, |
| 152824 | .unused, |
| 152825 | .unused, |
| 152826 | .unused, |
| 152827 | .unused, |
| 152828 | .unused, |
| 152829 | .unused, |
| 152830 | }, |
| 152831 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 152832 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 152833 | .each = .{ .once = &.{ |
| 152834 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 152835 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 152836 | .{ .@"0:", ._ps, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 152837 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 152838 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 152839 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 152840 | } }, |
| 152841 | } }, |
| 152842 | .Max => comptime &.{ .{ |
| 152843 | .required_features = .{ .f16c, null, null, null }, |
| 152844 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 152845 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 152846 | .patterns = &.{ |
| 152847 | .{ .src = .{ .mem, .none, .none } }, |
| 152848 | .{ .src = .{ .to_sse, .none, .none } }, |
| 152849 | }, |
| 152850 | .extra_temps = .{ |
| 152851 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 152852 | .unused, |
| 152853 | .unused, |
| 152854 | .unused, |
| 152855 | .unused, |
| 152856 | .unused, |
| 152857 | .unused, |
| 152858 | .unused, |
| 152859 | .unused, |
| 152860 | .unused, |
| 152861 | .unused, |
| 152862 | }, |
| 152863 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 152864 | .each = .{ .once = &.{ |
| 152865 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 152866 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 152867 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 152868 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 152869 | } }, |
| 152870 | }, .{ |
| 152871 | .required_features = .{ .f16c, null, null, null }, |
| 152872 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 152873 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 152874 | .patterns = &.{ |
| 152875 | .{ .src = .{ .mem, .none, .none } }, |
| 152876 | .{ .src = .{ .to_sse, .none, .none } }, |
| 152877 | }, |
| 152878 | .extra_temps = .{ |
| 152879 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 152880 | .unused, |
| 152881 | .unused, |
| 152882 | .unused, |
| 152883 | .unused, |
| 152884 | .unused, |
| 152885 | .unused, |
| 152886 | .unused, |
| 152887 | .unused, |
| 152888 | .unused, |
| 152889 | .unused, |
| 152890 | }, |
| 152891 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 152892 | .each = .{ .once = &.{ |
| 152893 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 152894 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 152895 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 152896 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 152897 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 152898 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 152899 | } }, |
| 152900 | }, .{ |
| 152901 | .required_features = .{ .f16c, null, null, null }, |
| 152902 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 152903 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 152904 | .patterns = &.{ |
| 152905 | .{ .src = .{ .mem, .none, .none } }, |
| 152906 | .{ .src = .{ .to_sse, .none, .none } }, |
| 152907 | }, |
| 152908 | .extra_temps = .{ |
| 152909 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 152910 | .unused, |
| 152911 | .unused, |
| 152912 | .unused, |
| 152913 | .unused, |
| 152914 | .unused, |
| 152915 | .unused, |
| 152916 | .unused, |
| 152917 | .unused, |
| 152918 | .unused, |
| 152919 | .unused, |
| 152920 | }, |
| 152921 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 152922 | .each = .{ .once = &.{ |
| 152923 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 152924 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 152925 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 152926 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 152927 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 152928 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 152929 | } }, |
| 152930 | }, .{ |
| 152931 | .required_features = .{ .f16c, null, null, null }, |
| 152932 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 152933 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 152934 | .patterns = &.{ |
| 152935 | .{ .src = .{ .to_sse, .none, .none } }, |
| 152936 | }, |
| 152937 | .extra_temps = .{ |
| 152938 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 152939 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 152940 | .{ .type = .vector_8_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 152941 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 152942 | .unused, |
| 152943 | .unused, |
| 152944 | .unused, |
| 152945 | .unused, |
| 152946 | .unused, |
| 152947 | .unused, |
| 152948 | .unused, |
| 152949 | }, |
| 152950 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 152951 | .each = .{ .once = &.{ |
| 152952 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 152953 | .{ ._, .v_ps, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 152954 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 152955 | .{ ._, .v_ps, .@"or", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 152956 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 152957 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 152958 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152959 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 152960 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152961 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 152962 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 152963 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 152964 | } }, |
| 152965 | }, .{ |
| 152966 | .required_features = .{ .f16c, null, null, null }, |
| 152967 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 152968 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 152969 | .patterns = &.{ |
| 152970 | .{ .src = .{ .mem, .none, .none } }, |
| 152971 | .{ .src = .{ .to_sse, .none, .none } }, |
| 152972 | }, |
| 152973 | .extra_temps = .{ |
| 152974 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 152975 | .unused, |
| 152976 | .unused, |
| 152977 | .unused, |
| 152978 | .unused, |
| 152979 | .unused, |
| 152980 | .unused, |
| 152981 | .unused, |
| 152982 | .unused, |
| 152983 | .unused, |
| 152984 | .unused, |
| 152985 | }, |
| 152986 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 152987 | .each = .{ .once = &.{ |
| 152988 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| 152989 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 152990 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 152991 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 152992 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 152993 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 152994 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 152995 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 152996 | } }, |
| 152997 | }, .{ |
| 152998 | .required_features = .{ .f16c, null, null, null }, |
| 152999 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 153000 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 153001 | .patterns = &.{ |
| 153002 | .{ .src = .{ .to_sse, .none, .none } }, |
| 153003 | }, |
| 153004 | .extra_temps = .{ |
| 153005 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 153006 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 153007 | .{ .type = .vector_16_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 153008 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 153009 | .unused, |
| 153010 | .unused, |
| 153011 | .unused, |
| 153012 | .unused, |
| 153013 | .unused, |
| 153014 | .unused, |
| 153015 | .unused, |
| 153016 | }, |
| 153017 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 153018 | .each = .{ .once = &.{ |
| 153019 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 153020 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 153021 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 153022 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 153023 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 153024 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 153025 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 153026 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp3y, ._ }, |
| 153027 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 153028 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153029 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 153030 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153031 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 153032 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153033 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 153034 | } }, |
| 153035 | }, .{ |
| 153036 | .required_features = .{ .f16c, null, null, null }, |
| 153037 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 153038 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 153039 | .patterns = &.{ |
| 153040 | .{ .src = .{ .to_sse, .none, .none } }, |
| 153041 | }, |
| 153042 | .extra_temps = .{ |
| 153043 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 153044 | .unused, |
| 153045 | .unused, |
| 153046 | .unused, |
| 153047 | .unused, |
| 153048 | .unused, |
| 153049 | .unused, |
| 153050 | .unused, |
| 153051 | .unused, |
| 153052 | .unused, |
| 153053 | .unused, |
| 153054 | }, |
| 153055 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 153056 | .each = .{ .once = &.{ |
| 153057 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 153058 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| 153059 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| 153060 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp0y, ._ }, |
| 153061 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 153062 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153063 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 153064 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153065 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 153066 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153067 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 153068 | } }, |
| 153069 | }, .{ |
| 153070 | .required_features = .{ .avx512f, null, null, null }, |
| 153071 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 153072 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 153073 | .patterns = &.{ |
| 153074 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153075 | }, |
| 153076 | .extra_temps = .{ |
| 153077 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 153078 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 153079 | .{ .type = .vector_32_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 153080 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 153081 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 153082 | .unused, |
| 153083 | .unused, |
| 153084 | .unused, |
| 153085 | .unused, |
| 153086 | .unused, |
| 153087 | .unused, |
| 153088 | }, |
| 153089 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 153090 | .each = .{ .once = &.{ |
| 153091 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 153092 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 153093 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 153094 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 153095 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 153096 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 153097 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 153098 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 153099 | .{ ._, .v_f128, .extract, .tmp4x, .tmp3y, .ui(1), ._ }, |
| 153100 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 153101 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 153102 | .{ ._, .v_ps, .max, .tmp3y, .tmp3y, .tmp4y, ._ }, |
| 153103 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 153104 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 153105 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 153106 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp4y, ._ }, |
| 153107 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp3y, ._ }, |
| 153108 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 153109 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153110 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 153111 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153112 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 153113 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153114 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 153115 | } }, |
| 153116 | }, .{ |
| 153117 | .required_features = .{ .avx512f, null, null, null }, |
| 153118 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 153119 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 153120 | .patterns = &.{ |
| 153121 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153122 | }, |
| 153123 | .extra_temps = .{ |
| 153124 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 153125 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 153126 | .unused, |
| 153127 | .unused, |
| 153128 | .unused, |
| 153129 | .unused, |
| 153130 | .unused, |
| 153131 | .unused, |
| 153132 | .unused, |
| 153133 | .unused, |
| 153134 | .unused, |
| 153135 | }, |
| 153136 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 153137 | .each = .{ .once = &.{ |
| 153138 | .{ ._, .v_ps, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 153139 | .{ ._, .v_ps, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 153140 | .{ ._, .v_f128, .extract, .tmp1x, .tmp0y, .ui(1), ._ }, |
| 153141 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| 153142 | .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ }, |
| 153143 | .{ ._, .v_ps, .max, .tmp0y, .tmp0y, .tmp1y, ._ }, |
| 153144 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 153145 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 153146 | .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ }, |
| 153147 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp1y, ._ }, |
| 153148 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp0y, ._ }, |
| 153149 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 153150 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153151 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 153152 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153153 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 153154 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153155 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 153156 | } }, |
| 153157 | }, .{ |
| 153158 | .required_features = .{ .f16c, null, null, null }, |
| 153159 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 153160 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 153161 | .patterns = &.{ |
| 153162 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153163 | }, |
| 153164 | .extra_temps = .{ |
| 153165 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 153166 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 153167 | .unused, |
| 153168 | .unused, |
| 153169 | .unused, |
| 153170 | .unused, |
| 153171 | .unused, |
| 153172 | .unused, |
| 153173 | .unused, |
| 153174 | .unused, |
| 153175 | .unused, |
| 153176 | }, |
| 153177 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 153178 | .clobbers = .{ .eflags = true }, |
| 153179 | .each = .{ .once = &.{ |
| 153180 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 153181 | .{ ._, .v_ps, .cvtph2, .dst0y, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 153182 | .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| 153183 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp1y, ._ }, |
| 153184 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 153185 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 153186 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 153187 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp1x, ._ }, |
| 153188 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 153189 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp1x, ._ }, |
| 153190 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 153191 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp1x, ._ }, |
| 153192 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 153193 | } }, |
| 153194 | }, .{ |
| 153195 | .required_features = .{ .avx512f, null, null, null }, |
| 153196 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 153197 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 153198 | .patterns = &.{ |
| 153199 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153200 | }, |
| 153201 | .extra_temps = .{ |
| 153202 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 153203 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 153204 | .{ .type = .vector_32_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 153205 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 153206 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 153207 | .unused, |
| 153208 | .unused, |
| 153209 | .unused, |
| 153210 | .unused, |
| 153211 | .unused, |
| 153212 | .unused, |
| 153213 | }, |
| 153214 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 153215 | .clobbers = .{ .eflags = true }, |
| 153216 | .each = .{ .once = &.{ |
| 153217 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 153218 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 153219 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 153220 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 153221 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 153222 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 153223 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 153224 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 153225 | .{ ._, ._, .mov, .tmp0d, .sia(-80, .src0, .add_size), ._, ._ }, |
| 153226 | .{ ._, .v_f128, .extract, .tmp4x, .tmp3y, .ui(1), ._ }, |
| 153227 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 153228 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 153229 | .{ ._, .v_ps, .max, .tmp3y, .tmp3y, .tmp4y, ._ }, |
| 153230 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 153231 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 153232 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 153233 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp4y, ._ }, |
| 153234 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp3y, ._ }, |
| 153235 | .{ .@"0:", .v_ps, .cvtph2, .tmp3y, .memi(.src0x, .tmp0), ._, ._ }, |
| 153236 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp3y, ._ }, |
| 153237 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 153238 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 153239 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 153240 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153241 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 153242 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153243 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 153244 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153245 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 153246 | } }, |
| 153247 | }, .{ |
| 153248 | .required_features = .{ .f16c, null, null, null }, |
| 153249 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 153250 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 153251 | .patterns = &.{ |
| 153252 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153253 | }, |
| 153254 | .extra_temps = .{ |
| 153255 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 153256 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 153257 | .{ .type = .vector_16_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 153258 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 153259 | .unused, |
| 153260 | .unused, |
| 153261 | .unused, |
| 153262 | .unused, |
| 153263 | .unused, |
| 153264 | .unused, |
| 153265 | .unused, |
| 153266 | }, |
| 153267 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 153268 | .clobbers = .{ .eflags = true }, |
| 153269 | .each = .{ .once = &.{ |
| 153270 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 153271 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 153272 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 153273 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 153274 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 153275 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 153276 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 153277 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 153278 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 153279 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp3y, ._ }, |
| 153280 | .{ .@"0:", .v_ps, .cvtph2, .tmp3y, .memi(.src0x, .tmp0), ._, ._ }, |
| 153281 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp3y, ._ }, |
| 153282 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 153283 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 153284 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 153285 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153286 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 153287 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153288 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 153289 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153290 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 153291 | } }, |
| 153292 | }, .{ |
| 153293 | .required_features = .{ .avx, null, null, null }, |
| 153294 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 153295 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 153296 | .patterns = &.{ |
| 153297 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153298 | }, |
| 153299 | .call_frame = .{ .alignment = .@"16" }, |
| 153300 | .extra_temps = .{ |
| 153301 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 153302 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 153303 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } }, |
| 153304 | .unused, |
| 153305 | .unused, |
| 153306 | .unused, |
| 153307 | .unused, |
| 153308 | .unused, |
| 153309 | .unused, |
| 153310 | .unused, |
| 153311 | .unused, |
| 153312 | }, |
| 153313 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 153314 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 153315 | .each = .{ .once = &.{ |
| 153316 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .dst0x, ._ }, |
| 153317 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 153318 | .{ ._, .vp_w, .insr, .dst0x, .dst0x, .memad(.src0w, .add_unaligned_size, -2), .ui(0) }, |
| 153319 | .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| 153320 | .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memi(.src0w, .tmp0), .ui(0) }, |
| 153321 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 153322 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 153323 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 153324 | } }, |
| 153325 | }, .{ |
| 153326 | .required_features = .{ .sse2, null, null, null }, |
| 153327 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 153328 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 153329 | .patterns = &.{ |
| 153330 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153331 | }, |
| 153332 | .call_frame = .{ .alignment = .@"16" }, |
| 153333 | .extra_temps = .{ |
| 153334 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 153335 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 153336 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } }, |
| 153337 | .unused, |
| 153338 | .unused, |
| 153339 | .unused, |
| 153340 | .unused, |
| 153341 | .unused, |
| 153342 | .unused, |
| 153343 | .unused, |
| 153344 | .unused, |
| 153345 | }, |
| 153346 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 153347 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 153348 | .each = .{ .once = &.{ |
| 153349 | .{ ._, .p_, .xor, .dst0x, .dst0x, ._, ._ }, |
| 153350 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 153351 | .{ ._, .p_w, .insr, .dst0x, .memad(.src0w, .add_unaligned_size, -2), .ui(0), ._ }, |
| 153352 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 153353 | .{ ._, .p_w, .insr, .tmp1x, .memi(.src0w, .tmp0), .ui(0), ._ }, |
| 153354 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 153355 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 153356 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 153357 | } }, |
| 153358 | }, .{ |
| 153359 | .required_features = .{ .sse, null, null, null }, |
| 153360 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 153361 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 153362 | .patterns = &.{ |
| 153363 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153364 | }, |
| 153365 | .call_frame = .{ .alignment = .@"16" }, |
| 153366 | .extra_temps = .{ |
| 153367 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 153368 | .{ .type = .f16, .kind = .{ .reg = .ax } }, |
| 153369 | .{ .type = .f32, .kind = .mem }, |
| 153370 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 153371 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } }, |
| 153372 | .unused, |
| 153373 | .unused, |
| 153374 | .unused, |
| 153375 | .unused, |
| 153376 | .unused, |
| 153377 | .unused, |
| 153378 | }, |
| 153379 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 153380 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 153381 | .each = .{ .once = &.{ |
| 153382 | .{ ._, ._ps, .xor, .dst0x, .dst0x, ._, ._ }, |
| 153383 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 153384 | .{ ._, ._, .movzx, .tmp1d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 153385 | .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ }, |
| 153386 | .{ ._, ._ss, .mov, .dst0x, .mem(.tmp2d), ._, ._ }, |
| 153387 | .{ .@"0:", ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 153388 | .{ ._, ._ss, .mov, .tmp3x, .memi(.src0d, .tmp0), ._, ._ }, |
| 153389 | .{ ._, ._, .call, .tmp4d, ._, ._, ._ }, |
| 153390 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 153391 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 153392 | } }, |
| 153393 | }, .{ |
| 153394 | .required_features = .{ .avx, null, null, null }, |
| 153395 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153396 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 153397 | .patterns = &.{ |
| 153398 | .{ .src = .{ .to_sse, .none, .none } }, |
| 153399 | }, |
| 153400 | .extra_temps = .{ |
| 153401 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153402 | .unused, |
| 153403 | .unused, |
| 153404 | .unused, |
| 153405 | .unused, |
| 153406 | .unused, |
| 153407 | .unused, |
| 153408 | .unused, |
| 153409 | .unused, |
| 153410 | .unused, |
| 153411 | .unused, |
| 153412 | }, |
| 153413 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 153414 | .each = .{ .once = &.{ |
| 153415 | .{ ._, .v_ps, .shuf, .tmp0x, .src0x, .src0x, .ui(0b01) }, |
| 153416 | .{ ._, .v_ss, .max, .dst0x, .src0x, .tmp0x, ._ }, |
| 153417 | } }, |
| 153418 | }, .{ |
| 153419 | .required_features = .{ .sse, null, null, null }, |
| 153420 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153421 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 153422 | .patterns = &.{ |
| 153423 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 153424 | }, |
| 153425 | .extra_temps = .{ |
| 153426 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153427 | .unused, |
| 153428 | .unused, |
| 153429 | .unused, |
| 153430 | .unused, |
| 153431 | .unused, |
| 153432 | .unused, |
| 153433 | .unused, |
| 153434 | .unused, |
| 153435 | .unused, |
| 153436 | .unused, |
| 153437 | }, |
| 153438 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 153439 | .each = .{ .once = &.{ |
| 153440 | .{ ._, ._ps, .mova, .tmp0x, .src0x, ._, ._ }, |
| 153441 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 153442 | .{ ._, ._ss, .max, .dst0x, .tmp0x, ._, ._ }, |
| 153443 | } }, |
| 153444 | }, .{ |
| 153445 | .required_features = .{ .avx, null, null, null }, |
| 153446 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153447 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 153448 | .patterns = &.{ |
| 153449 | .{ .src = .{ .to_sse, .none, .none } }, |
| 153450 | }, |
| 153451 | .extra_temps = .{ |
| 153452 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153453 | .unused, |
| 153454 | .unused, |
| 153455 | .unused, |
| 153456 | .unused, |
| 153457 | .unused, |
| 153458 | .unused, |
| 153459 | .unused, |
| 153460 | .unused, |
| 153461 | .unused, |
| 153462 | .unused, |
| 153463 | }, |
| 153464 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 153465 | .each = .{ .once = &.{ |
| 153466 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 153467 | .{ ._, .v_ss, .max, .tmp0x, .src0x, .tmp0x, ._ }, |
| 153468 | .{ ._, .v_ps, .shuf, .dst0x, .src0x, .src0x, .ui(0b01) }, |
| 153469 | .{ ._, .v_ss, .max, .dst0x, .tmp0x, .dst0x, ._ }, |
| 153470 | } }, |
| 153471 | }, .{ |
| 153472 | .required_features = .{ .sse, null, null, null }, |
| 153473 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153474 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 153475 | .patterns = &.{ |
| 153476 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 153477 | }, |
| 153478 | .extra_temps = .{ |
| 153479 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153480 | .unused, |
| 153481 | .unused, |
| 153482 | .unused, |
| 153483 | .unused, |
| 153484 | .unused, |
| 153485 | .unused, |
| 153486 | .unused, |
| 153487 | .unused, |
| 153488 | .unused, |
| 153489 | .unused, |
| 153490 | }, |
| 153491 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 153492 | .each = .{ .once = &.{ |
| 153493 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 153494 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 153495 | .{ ._, ._ss, .max, .tmp0x, .src0x, ._, ._ }, |
| 153496 | .{ ._, ._ps, .shuf, .dst0x, .src0x, .ui(0b01), ._ }, |
| 153497 | .{ ._, ._ss, .max, .dst0x, .tmp0x, ._, ._ }, |
| 153498 | } }, |
| 153499 | }, .{ |
| 153500 | .required_features = .{ .avx, null, null, null }, |
| 153501 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153502 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 153503 | .patterns = &.{ |
| 153504 | .{ .src = .{ .to_sse, .none, .none } }, |
| 153505 | }, |
| 153506 | .extra_temps = .{ |
| 153507 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153508 | .unused, |
| 153509 | .unused, |
| 153510 | .unused, |
| 153511 | .unused, |
| 153512 | .unused, |
| 153513 | .unused, |
| 153514 | .unused, |
| 153515 | .unused, |
| 153516 | .unused, |
| 153517 | .unused, |
| 153518 | }, |
| 153519 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 153520 | .each = .{ .once = &.{ |
| 153521 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 153522 | .{ ._, .v_ps, .max, .dst0x, .src0x, .tmp0x, ._ }, |
| 153523 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 153524 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153525 | } }, |
| 153526 | }, .{ |
| 153527 | .required_features = .{ .sse, null, null, null }, |
| 153528 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153529 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 153530 | .patterns = &.{ |
| 153531 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 153532 | }, |
| 153533 | .extra_temps = .{ |
| 153534 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153535 | .unused, |
| 153536 | .unused, |
| 153537 | .unused, |
| 153538 | .unused, |
| 153539 | .unused, |
| 153540 | .unused, |
| 153541 | .unused, |
| 153542 | .unused, |
| 153543 | .unused, |
| 153544 | .unused, |
| 153545 | }, |
| 153546 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 153547 | .each = .{ .once = &.{ |
| 153548 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 153549 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 153550 | .{ ._, ._ps, .max, .dst0x, .tmp0x, ._, ._ }, |
| 153551 | .{ ._, ._ps, .mova, .tmp0x, .dst0x, ._, ._ }, |
| 153552 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 153553 | .{ ._, ._ss, .max, .dst0x, .tmp0x, ._, ._ }, |
| 153554 | } }, |
| 153555 | }, .{ |
| 153556 | .required_features = .{ .avx, null, null, null }, |
| 153557 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153558 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 153559 | .patterns = &.{ |
| 153560 | .{ .src = .{ .to_sse, .none, .none } }, |
| 153561 | }, |
| 153562 | .extra_temps = .{ |
| 153563 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 153564 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 153565 | .{ .type = .vector_8_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 153566 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153567 | .unused, |
| 153568 | .unused, |
| 153569 | .unused, |
| 153570 | .unused, |
| 153571 | .unused, |
| 153572 | .unused, |
| 153573 | .unused, |
| 153574 | }, |
| 153575 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 153576 | .each = .{ .once = &.{ |
| 153577 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 153578 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 153579 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 153580 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 153581 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 153582 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153583 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 153584 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153585 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 153586 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153587 | } }, |
| 153588 | }, .{ |
| 153589 | .required_features = .{ .avx, null, null, null }, |
| 153590 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153591 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 153592 | .patterns = &.{ |
| 153593 | .{ .src = .{ .to_sse, .none, .none } }, |
| 153594 | }, |
| 153595 | .extra_temps = .{ |
| 153596 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153597 | .unused, |
| 153598 | .unused, |
| 153599 | .unused, |
| 153600 | .unused, |
| 153601 | .unused, |
| 153602 | .unused, |
| 153603 | .unused, |
| 153604 | .unused, |
| 153605 | .unused, |
| 153606 | .unused, |
| 153607 | }, |
| 153608 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 153609 | .each = .{ .once = &.{ |
| 153610 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 153611 | .{ ._, .v_ps, .max, .dst0x, .src0x, .tmp0x, ._ }, |
| 153612 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 153613 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153614 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 153615 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153616 | } }, |
| 153617 | }, .{ |
| 153618 | .required_features = .{ .avx512f, null, null, null }, |
| 153619 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153620 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 153621 | .patterns = &.{ |
| 153622 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153623 | }, |
| 153624 | .extra_temps = .{ |
| 153625 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 153626 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 153627 | .{ .type = .vector_16_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 153628 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 153629 | .unused, |
| 153630 | .unused, |
| 153631 | .unused, |
| 153632 | .unused, |
| 153633 | .unused, |
| 153634 | .unused, |
| 153635 | .unused, |
| 153636 | }, |
| 153637 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 153638 | .each = .{ .once = &.{ |
| 153639 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 153640 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 153641 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 153642 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 153643 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 153644 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 153645 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 153646 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 153647 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp3y, ._ }, |
| 153648 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 153649 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153650 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 153651 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153652 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 153653 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153654 | } }, |
| 153655 | }, .{ |
| 153656 | .required_features = .{ .avx512f, null, null, null }, |
| 153657 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153658 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 153659 | .patterns = &.{ |
| 153660 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153661 | }, |
| 153662 | .extra_temps = .{ |
| 153663 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153664 | .unused, |
| 153665 | .unused, |
| 153666 | .unused, |
| 153667 | .unused, |
| 153668 | .unused, |
| 153669 | .unused, |
| 153670 | .unused, |
| 153671 | .unused, |
| 153672 | .unused, |
| 153673 | .unused, |
| 153674 | }, |
| 153675 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 153676 | .each = .{ .once = &.{ |
| 153677 | .{ ._, .v_ps, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 153678 | .{ ._, .v_ps, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 153679 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp0y, ._ }, |
| 153680 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 153681 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153682 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 153683 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153684 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 153685 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153686 | } }, |
| 153687 | }, .{ |
| 153688 | .required_features = .{ .avx, null, null, null }, |
| 153689 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153690 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 153691 | .patterns = &.{ |
| 153692 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153693 | }, |
| 153694 | .extra_temps = .{ |
| 153695 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 153696 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153697 | .unused, |
| 153698 | .unused, |
| 153699 | .unused, |
| 153700 | .unused, |
| 153701 | .unused, |
| 153702 | .unused, |
| 153703 | .unused, |
| 153704 | .unused, |
| 153705 | .unused, |
| 153706 | }, |
| 153707 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 153708 | .clobbers = .{ .eflags = true }, |
| 153709 | .each = .{ .once = &.{ |
| 153710 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 153711 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 153712 | .{ .@"0:", .v_ps, .max, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 153713 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 153714 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 153715 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 153716 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp1x, ._ }, |
| 153717 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 153718 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp1x, ._ }, |
| 153719 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 153720 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp1x, ._ }, |
| 153721 | } }, |
| 153722 | }, .{ |
| 153723 | .required_features = .{ .sse, null, null, null }, |
| 153724 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153725 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 153726 | .patterns = &.{ |
| 153727 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153728 | }, |
| 153729 | .extra_temps = .{ |
| 153730 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 153731 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153732 | .unused, |
| 153733 | .unused, |
| 153734 | .unused, |
| 153735 | .unused, |
| 153736 | .unused, |
| 153737 | .unused, |
| 153738 | .unused, |
| 153739 | .unused, |
| 153740 | .unused, |
| 153741 | }, |
| 153742 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 153743 | .clobbers = .{ .eflags = true }, |
| 153744 | .each = .{ .once = &.{ |
| 153745 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 153746 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 153747 | .{ .@"0:", ._ps, .max, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 153748 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 153749 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 153750 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 153751 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| 153752 | .{ ._, ._ps, .max, .dst0x, .tmp1x, ._, ._ }, |
| 153753 | .{ ._, ._ps, .mova, .tmp1x, .dst0x, ._, ._ }, |
| 153754 | .{ ._, ._ps, .shuf, .tmp1x, .tmp1x, .ui(0b01), ._ }, |
| 153755 | .{ ._, ._ss, .max, .dst0x, .tmp1x, ._, ._ }, |
| 153756 | } }, |
| 153757 | }, .{ |
| 153758 | .required_features = .{ .avx512f, null, null, null }, |
| 153759 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153760 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 153761 | .patterns = &.{ |
| 153762 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153763 | }, |
| 153764 | .extra_temps = .{ |
| 153765 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 153766 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 153767 | .{ .type = .vector_16_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 153768 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 153769 | .unused, |
| 153770 | .unused, |
| 153771 | .unused, |
| 153772 | .unused, |
| 153773 | .unused, |
| 153774 | .unused, |
| 153775 | .unused, |
| 153776 | }, |
| 153777 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 153778 | .clobbers = .{ .eflags = true }, |
| 153779 | .each = .{ .once = &.{ |
| 153780 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 153781 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 153782 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 153783 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 153784 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 153785 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 153786 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 153787 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 153788 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 153789 | .{ .@"0:", .v_ps, .max, .tmp3y, .tmp3y, .memid(.src0y, .tmp0, 32), ._ }, |
| 153790 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 153791 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 153792 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 153793 | .{ ._, .v_ps, .max, .dst0y, .dst0y, .tmp3y, ._ }, |
| 153794 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 153795 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153796 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 153797 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153798 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 153799 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153800 | } }, |
| 153801 | }, .{ |
| 153802 | .required_features = .{ .avx, null, null, null }, |
| 153803 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153804 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 153805 | .patterns = &.{ |
| 153806 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153807 | }, |
| 153808 | .extra_temps = .{ |
| 153809 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 153810 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 153811 | .{ .type = .vector_8_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 153812 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153813 | .unused, |
| 153814 | .unused, |
| 153815 | .unused, |
| 153816 | .unused, |
| 153817 | .unused, |
| 153818 | .unused, |
| 153819 | .unused, |
| 153820 | }, |
| 153821 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 153822 | .clobbers = .{ .eflags = true }, |
| 153823 | .each = .{ .once = &.{ |
| 153824 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 153825 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 153826 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 153827 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 153828 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 153829 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 153830 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 153831 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153832 | .{ .@"0:", .v_ps, .max, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 153833 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 153834 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 153835 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 153836 | .{ ._, .v_ps, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153837 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 153838 | .{ ._, .v_ss, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 153839 | } }, |
| 153840 | }, .{ |
| 153841 | .required_features = .{ .sse, null, null, null }, |
| 153842 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 153843 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 153844 | .patterns = &.{ |
| 153845 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153846 | }, |
| 153847 | .extra_temps = .{ |
| 153848 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 153849 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 153850 | .{ .type = .vector_4_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 153851 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 153852 | .unused, |
| 153853 | .unused, |
| 153854 | .unused, |
| 153855 | .unused, |
| 153856 | .unused, |
| 153857 | .unused, |
| 153858 | .unused, |
| 153859 | }, |
| 153860 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 153861 | .clobbers = .{ .eflags = true }, |
| 153862 | .each = .{ .once = &.{ |
| 153863 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 153864 | .{ ._, ._ps, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 153865 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 153866 | .{ ._, ._ps, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 153867 | .{ ._, ._ps, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 153868 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 153869 | .{ .@"0:", ._ps, .max, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 153870 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 153871 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 153872 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 153873 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| 153874 | .{ ._, ._ps, .max, .dst0x, .tmp3x, ._, ._ }, |
| 153875 | .{ ._, ._ps, .mova, .tmp3x, .dst0x, ._, ._ }, |
| 153876 | .{ ._, ._ps, .shuf, .tmp3x, .tmp3x, .ui(0b01), ._ }, |
| 153877 | .{ ._, ._ss, .max, .dst0x, .tmp3x, ._, ._ }, |
| 153878 | } }, |
| 153879 | }, .{ |
| 153880 | .required_features = .{ .avx, null, null, null }, |
| 153881 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 153882 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 153883 | .patterns = &.{ |
| 153884 | .{ .src = .{ .to_sse, .none, .none } }, |
| 153885 | }, |
| 153886 | .extra_temps = .{ |
| 153887 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 153888 | .unused, |
| 153889 | .unused, |
| 153890 | .unused, |
| 153891 | .unused, |
| 153892 | .unused, |
| 153893 | .unused, |
| 153894 | .unused, |
| 153895 | .unused, |
| 153896 | .unused, |
| 153897 | .unused, |
| 153898 | }, |
| 153899 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 153900 | .each = .{ .once = &.{ |
| 153901 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 153902 | .{ ._, .v_sd, .max, .dst0x, .src0x, .tmp0x, ._ }, |
| 153903 | } }, |
| 153904 | }, .{ |
| 153905 | .required_features = .{ .sse2, null, null, null }, |
| 153906 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 153907 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 153908 | .patterns = &.{ |
| 153909 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 153910 | }, |
| 153911 | .extra_temps = .{ |
| 153912 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 153913 | .unused, |
| 153914 | .unused, |
| 153915 | .unused, |
| 153916 | .unused, |
| 153917 | .unused, |
| 153918 | .unused, |
| 153919 | .unused, |
| 153920 | .unused, |
| 153921 | .unused, |
| 153922 | .unused, |
| 153923 | }, |
| 153924 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 153925 | .each = .{ .once = &.{ |
| 153926 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 153927 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 153928 | .{ ._, ._sd, .max, .dst0x, .tmp0x, ._, ._ }, |
| 153929 | } }, |
| 153930 | }, .{ |
| 153931 | .required_features = .{ .avx, null, null, null }, |
| 153932 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 153933 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 153934 | .patterns = &.{ |
| 153935 | .{ .src = .{ .to_sse, .none, .none } }, |
| 153936 | }, |
| 153937 | .extra_temps = .{ |
| 153938 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 153939 | .unused, |
| 153940 | .unused, |
| 153941 | .unused, |
| 153942 | .unused, |
| 153943 | .unused, |
| 153944 | .unused, |
| 153945 | .unused, |
| 153946 | .unused, |
| 153947 | .unused, |
| 153948 | .unused, |
| 153949 | }, |
| 153950 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 153951 | .each = .{ .once = &.{ |
| 153952 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 153953 | .{ ._, .v_sd, .max, .tmp0x, .src0x, .tmp0x, ._ }, |
| 153954 | .{ ._, .v_ps, .movhl, .dst0x, .src0x, .src0x, ._ }, |
| 153955 | .{ ._, .v_sd, .max, .dst0x, .tmp0x, .dst0x, ._ }, |
| 153956 | } }, |
| 153957 | }, .{ |
| 153958 | .required_features = .{ .avx, null, null, null }, |
| 153959 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 153960 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 153961 | .patterns = &.{ |
| 153962 | .{ .src = .{ .to_sse, .none, .none } }, |
| 153963 | }, |
| 153964 | .extra_temps = .{ |
| 153965 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 153966 | .unused, |
| 153967 | .unused, |
| 153968 | .unused, |
| 153969 | .unused, |
| 153970 | .unused, |
| 153971 | .unused, |
| 153972 | .unused, |
| 153973 | .unused, |
| 153974 | .unused, |
| 153975 | .unused, |
| 153976 | }, |
| 153977 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 153978 | .each = .{ .once = &.{ |
| 153979 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 153980 | .{ ._, .v_pd, .max, .dst0x, .src0x, .tmp0x, ._ }, |
| 153981 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 153982 | .{ ._, .v_sd, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 153983 | } }, |
| 153984 | }, .{ |
| 153985 | .required_features = .{ .avx512f, null, null, null }, |
| 153986 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 153987 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 153988 | .patterns = &.{ |
| 153989 | .{ .src = .{ .to_mem, .none, .none } }, |
| 153990 | }, |
| 153991 | .extra_temps = .{ |
| 153992 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 153993 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 153994 | .{ .type = .vector_8_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 153995 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| 153996 | .unused, |
| 153997 | .unused, |
| 153998 | .unused, |
| 153999 | .unused, |
| 154000 | .unused, |
| 154001 | .unused, |
| 154002 | .unused, |
| 154003 | }, |
| 154004 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 154005 | .each = .{ .once = &.{ |
| 154006 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 154007 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 154008 | .{ ._, .v_pd, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 154009 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 154010 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 154011 | .{ ._, .v_pd, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 154012 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 154013 | .{ ._, .v_pd, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 154014 | .{ ._, .v_pd, .max, .dst0y, .dst0y, .tmp3y, ._ }, |
| 154015 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 154016 | .{ ._, .v_pd, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 154017 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 154018 | .{ ._, .v_sd, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 154019 | } }, |
| 154020 | }, .{ |
| 154021 | .required_features = .{ .avx512f, null, null, null }, |
| 154022 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 154023 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 154024 | .patterns = &.{ |
| 154025 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154026 | }, |
| 154027 | .extra_temps = .{ |
| 154028 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 154029 | .unused, |
| 154030 | .unused, |
| 154031 | .unused, |
| 154032 | .unused, |
| 154033 | .unused, |
| 154034 | .unused, |
| 154035 | .unused, |
| 154036 | .unused, |
| 154037 | .unused, |
| 154038 | .unused, |
| 154039 | }, |
| 154040 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 154041 | .each = .{ .once = &.{ |
| 154042 | .{ ._, .v_pd, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 154043 | .{ ._, .v_pd, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 154044 | .{ ._, .v_pd, .max, .dst0y, .dst0y, .tmp0y, ._ }, |
| 154045 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 154046 | .{ ._, .v_pd, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154047 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 154048 | .{ ._, .v_sd, .max, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154049 | } }, |
| 154050 | }, .{ |
| 154051 | .required_features = .{ .avx, null, null, null }, |
| 154052 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 154053 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 154054 | .patterns = &.{ |
| 154055 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154056 | }, |
| 154057 | .extra_temps = .{ |
| 154058 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154059 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 154060 | .unused, |
| 154061 | .unused, |
| 154062 | .unused, |
| 154063 | .unused, |
| 154064 | .unused, |
| 154065 | .unused, |
| 154066 | .unused, |
| 154067 | .unused, |
| 154068 | .unused, |
| 154069 | }, |
| 154070 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 154071 | .clobbers = .{ .eflags = true }, |
| 154072 | .each = .{ .once = &.{ |
| 154073 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 154074 | .{ ._, .v_pd, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 154075 | .{ .@"0:", .v_pd, .max, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 154076 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 154077 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154078 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 154079 | .{ ._, .v_pd, .max, .dst0x, .dst0x, .tmp1x, ._ }, |
| 154080 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 154081 | .{ ._, .v_sd, .max, .dst0x, .dst0x, .tmp1x, ._ }, |
| 154082 | } }, |
| 154083 | }, .{ |
| 154084 | .required_features = .{ .sse2, null, null, null }, |
| 154085 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 154086 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 154087 | .patterns = &.{ |
| 154088 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154089 | }, |
| 154090 | .extra_temps = .{ |
| 154091 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154092 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 154093 | .unused, |
| 154094 | .unused, |
| 154095 | .unused, |
| 154096 | .unused, |
| 154097 | .unused, |
| 154098 | .unused, |
| 154099 | .unused, |
| 154100 | .unused, |
| 154101 | .unused, |
| 154102 | }, |
| 154103 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 154104 | .clobbers = .{ .eflags = true }, |
| 154105 | .each = .{ .once = &.{ |
| 154106 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 154107 | .{ ._, ._pd, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 154108 | .{ .@"0:", ._pd, .max, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 154109 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 154110 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154111 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 154112 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| 154113 | .{ ._, ._sd, .max, .dst0x, .tmp1x, ._, ._ }, |
| 154114 | } }, |
| 154115 | }, .{ |
| 154116 | .required_features = .{ .avx512f, null, null, null }, |
| 154117 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 154118 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 154119 | .patterns = &.{ |
| 154120 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154121 | }, |
| 154122 | .extra_temps = .{ |
| 154123 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154124 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 154125 | .{ .type = .vector_8_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 154126 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| 154127 | .unused, |
| 154128 | .unused, |
| 154129 | .unused, |
| 154130 | .unused, |
| 154131 | .unused, |
| 154132 | .unused, |
| 154133 | .unused, |
| 154134 | }, |
| 154135 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 154136 | .clobbers = .{ .eflags = true }, |
| 154137 | .each = .{ .once = &.{ |
| 154138 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 154139 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 154140 | .{ ._, .v_pd, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 154141 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 154142 | .{ ._, .v_pd, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 154143 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 154144 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 154145 | .{ ._, .v_pd, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 154146 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 154147 | .{ .@"0:", .v_pd, .max, .tmp3y, .tmp3y, .memid(.src0y, .tmp0, 32), ._ }, |
| 154148 | .{ ._, .v_pd, .max, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 154149 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 154150 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154151 | .{ ._, .v_pd, .max, .dst0y, .dst0y, .tmp3y, ._ }, |
| 154152 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 154153 | .{ ._, .v_pd, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 154154 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 154155 | .{ ._, .v_sd, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 154156 | } }, |
| 154157 | }, .{ |
| 154158 | .required_features = .{ .avx, null, null, null }, |
| 154159 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 154160 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 154161 | .patterns = &.{ |
| 154162 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154163 | }, |
| 154164 | .extra_temps = .{ |
| 154165 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154166 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 154167 | .{ .type = .vector_4_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 154168 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 154169 | .unused, |
| 154170 | .unused, |
| 154171 | .unused, |
| 154172 | .unused, |
| 154173 | .unused, |
| 154174 | .unused, |
| 154175 | .unused, |
| 154176 | }, |
| 154177 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 154178 | .clobbers = .{ .eflags = true }, |
| 154179 | .each = .{ .once = &.{ |
| 154180 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 154181 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 154182 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 154183 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 154184 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 154185 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 154186 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 154187 | .{ ._, .v_pd, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 154188 | .{ .@"0:", .v_pd, .max, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 154189 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 154190 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154191 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 154192 | .{ ._, .v_sd, .max, .dst0x, .dst0x, .tmp3x, ._ }, |
| 154193 | } }, |
| 154194 | }, .{ |
| 154195 | .required_features = .{ .sse2, null, null, null }, |
| 154196 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 154197 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 154198 | .patterns = &.{ |
| 154199 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154200 | }, |
| 154201 | .extra_temps = .{ |
| 154202 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154203 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 154204 | .{ .type = .vector_2_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = -inf } } }, |
| 154205 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 154206 | .unused, |
| 154207 | .unused, |
| 154208 | .unused, |
| 154209 | .unused, |
| 154210 | .unused, |
| 154211 | .unused, |
| 154212 | .unused, |
| 154213 | }, |
| 154214 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 154215 | .clobbers = .{ .eflags = true }, |
| 154216 | .each = .{ .once = &.{ |
| 154217 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 154218 | .{ ._, ._pd, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 154219 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 154220 | .{ ._, ._pd, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 154221 | .{ ._, ._pd, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 154222 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 154223 | .{ .@"0:", ._pd, .max, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 154224 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 154225 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154226 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 154227 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| 154228 | .{ ._, ._sd, .max, .dst0x, .tmp3x, ._, ._ }, |
| 154229 | } }, |
| 154230 | }, .{ |
| 154231 | .required_features = .{ .x87, .cmov, null, null }, |
| 154232 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 154233 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 154234 | .patterns = &.{ |
| 154235 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154236 | }, |
| 154237 | .extra_temps = .{ |
| 154238 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154239 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 154240 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 154241 | .unused, |
| 154242 | .unused, |
| 154243 | .unused, |
| 154244 | .unused, |
| 154245 | .unused, |
| 154246 | .unused, |
| 154247 | .unused, |
| 154248 | .unused, |
| 154249 | }, |
| 154250 | .dst_temps = .{ .mem, .unused }, |
| 154251 | .clobbers = .{ .eflags = true }, |
| 154252 | .each = .{ .once = &.{ |
| 154253 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 154254 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| 154255 | .{ .@"0:", .f_, .ld, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| 154256 | .{ ._, .f_, .ucomi, .tmp2t, .tmp1t, ._, ._ }, |
| 154257 | .{ ._, .f_b, .cmov, .tmp2t, .tmp1t, ._, ._ }, |
| 154258 | .{ ._, .f_p, .st, .tmp1t, ._, ._, ._ }, |
| 154259 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 154260 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154261 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 154262 | } }, |
| 154263 | }, .{ |
| 154264 | .required_features = .{ .sahf, .x87, null, null }, |
| 154265 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 154266 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 154267 | .patterns = &.{ |
| 154268 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154269 | }, |
| 154270 | .extra_temps = .{ |
| 154271 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154272 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 154273 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 154274 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 154275 | .unused, |
| 154276 | .unused, |
| 154277 | .unused, |
| 154278 | .unused, |
| 154279 | .unused, |
| 154280 | .unused, |
| 154281 | .unused, |
| 154282 | }, |
| 154283 | .dst_temps = .{ .mem, .unused }, |
| 154284 | .clobbers = .{ .eflags = true }, |
| 154285 | .each = .{ .once = &.{ |
| 154286 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 154287 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| 154288 | .{ .@"0:", .f_, .ld, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| 154289 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| 154290 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 154291 | .{ ._, ._, .sahf, ._, ._, ._, ._ }, |
| 154292 | .{ ._, ._b, .j, .@"1f", ._, ._, ._ }, |
| 154293 | .{ ._, .f_, .st, .tmp1t, ._, ._, ._ }, |
| 154294 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 154295 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 154296 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154297 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 154298 | } }, |
| 154299 | }, .{ |
| 154300 | .required_features = .{ .x87, null, null, null }, |
| 154301 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 154302 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 154303 | .patterns = &.{ |
| 154304 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154305 | }, |
| 154306 | .extra_temps = .{ |
| 154307 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154308 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 154309 | .{ .type = .f64, .kind = .{ .reg = .st6 } }, |
| 154310 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 154311 | .unused, |
| 154312 | .unused, |
| 154313 | .unused, |
| 154314 | .unused, |
| 154315 | .unused, |
| 154316 | .unused, |
| 154317 | .unused, |
| 154318 | }, |
| 154319 | .dst_temps = .{ .mem, .unused }, |
| 154320 | .clobbers = .{ .eflags = true }, |
| 154321 | .each = .{ .once = &.{ |
| 154322 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 154323 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| 154324 | .{ .@"0:", .f_, .ld, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| 154325 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| 154326 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 154327 | .{ ._, ._, .@"test", .tmp3h, .si(0b0_000_001), ._, ._ }, |
| 154328 | .{ ._, ._nz, .j, .@"1f", ._, ._, ._ }, |
| 154329 | .{ ._, .f_, .st, .tmp1t, ._, ._, ._ }, |
| 154330 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 154331 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 154332 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154333 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 154334 | } }, |
| 154335 | }, .{ |
| 154336 | .required_features = .{ .x87, .cmov, null, null }, |
| 154337 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 154338 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 154339 | .patterns = &.{ |
| 154340 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154341 | }, |
| 154342 | .extra_temps = .{ |
| 154343 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154344 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 154345 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 154346 | .unused, |
| 154347 | .unused, |
| 154348 | .unused, |
| 154349 | .unused, |
| 154350 | .unused, |
| 154351 | .unused, |
| 154352 | .unused, |
| 154353 | .unused, |
| 154354 | }, |
| 154355 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 154356 | .clobbers = .{ .eflags = true }, |
| 154357 | .each = .{ .once = &.{ |
| 154358 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 154359 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| 154360 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| 154361 | .{ ._, .f_, .ucomi, .tmp2t, .tmp1t, ._, ._ }, |
| 154362 | .{ ._, .f_b, .cmov, .tmp2t, .tmp1t, ._, ._ }, |
| 154363 | .{ ._, .f_p, .st, .tmp1t, ._, ._, ._ }, |
| 154364 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 154365 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154366 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 154367 | } }, |
| 154368 | }, .{ |
| 154369 | .required_features = .{ .sahf, .x87, null, null }, |
| 154370 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 154371 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 154372 | .patterns = &.{ |
| 154373 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154374 | }, |
| 154375 | .extra_temps = .{ |
| 154376 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154377 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 154378 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 154379 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 154380 | .unused, |
| 154381 | .unused, |
| 154382 | .unused, |
| 154383 | .unused, |
| 154384 | .unused, |
| 154385 | .unused, |
| 154386 | .unused, |
| 154387 | }, |
| 154388 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 154389 | .clobbers = .{ .eflags = true }, |
| 154390 | .each = .{ .once = &.{ |
| 154391 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 154392 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| 154393 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| 154394 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| 154395 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 154396 | .{ ._, ._, .sahf, ._, ._, ._, ._ }, |
| 154397 | .{ ._, ._b, .j, .@"1f", ._, ._, ._ }, |
| 154398 | .{ ._, .f_, .st, .tmp1t, ._, ._, ._ }, |
| 154399 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 154400 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 154401 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154402 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 154403 | } }, |
| 154404 | }, .{ |
| 154405 | .required_features = .{ .x87, null, null, null }, |
| 154406 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 154407 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 154408 | .patterns = &.{ |
| 154409 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154410 | }, |
| 154411 | .extra_temps = .{ |
| 154412 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154413 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 154414 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 154415 | .{ .type = .u16, .kind = .{ .reg = .ax } }, |
| 154416 | .unused, |
| 154417 | .unused, |
| 154418 | .unused, |
| 154419 | .unused, |
| 154420 | .unused, |
| 154421 | .unused, |
| 154422 | .unused, |
| 154423 | }, |
| 154424 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 154425 | .clobbers = .{ .eflags = true }, |
| 154426 | .each = .{ .once = &.{ |
| 154427 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 154428 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| 154429 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| 154430 | .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ }, |
| 154431 | .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ }, |
| 154432 | .{ ._, ._, .@"test", .tmp3h, .si(0b0_000_001), ._, ._ }, |
| 154433 | .{ ._, ._nz, .j, .@"1f", ._, ._, ._ }, |
| 154434 | .{ ._, .f_, .st, .tmp1t, ._, ._, ._ }, |
| 154435 | .{ .@"1:", .f_p, .st, .tmp2t, ._, ._, ._ }, |
| 154436 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 154437 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154438 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 154439 | } }, |
| 154440 | }, .{ |
| 154441 | .required_features = .{ .avx, null, null, null }, |
| 154442 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 154443 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 154444 | .patterns = &.{ |
| 154445 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154446 | }, |
| 154447 | .call_frame = .{ .alignment = .@"16" }, |
| 154448 | .extra_temps = .{ |
| 154449 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154450 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 154451 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } }, |
| 154452 | .unused, |
| 154453 | .unused, |
| 154454 | .unused, |
| 154455 | .unused, |
| 154456 | .unused, |
| 154457 | .unused, |
| 154458 | .unused, |
| 154459 | .unused, |
| 154460 | }, |
| 154461 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 154462 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 154463 | .each = .{ .once = &.{ |
| 154464 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 154465 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 154466 | .{ .@"0:", .v_dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 154467 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 154468 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 154469 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154470 | } }, |
| 154471 | }, .{ |
| 154472 | .required_features = .{ .sse2, null, null, null }, |
| 154473 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 154474 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 154475 | .patterns = &.{ |
| 154476 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154477 | }, |
| 154478 | .call_frame = .{ .alignment = .@"16" }, |
| 154479 | .extra_temps = .{ |
| 154480 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154481 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 154482 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } }, |
| 154483 | .unused, |
| 154484 | .unused, |
| 154485 | .unused, |
| 154486 | .unused, |
| 154487 | .unused, |
| 154488 | .unused, |
| 154489 | .unused, |
| 154490 | .unused, |
| 154491 | }, |
| 154492 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 154493 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 154494 | .each = .{ .once = &.{ |
| 154495 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 154496 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 154497 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 154498 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 154499 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 154500 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154501 | } }, |
| 154502 | }, .{ |
| 154503 | .required_features = .{ .sse, null, null, null }, |
| 154504 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 154505 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 154506 | .patterns = &.{ |
| 154507 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154508 | }, |
| 154509 | .call_frame = .{ .alignment = .@"16" }, |
| 154510 | .extra_temps = .{ |
| 154511 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 154512 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 154513 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } }, |
| 154514 | .unused, |
| 154515 | .unused, |
| 154516 | .unused, |
| 154517 | .unused, |
| 154518 | .unused, |
| 154519 | .unused, |
| 154520 | .unused, |
| 154521 | .unused, |
| 154522 | }, |
| 154523 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 154524 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 154525 | .each = .{ .once = &.{ |
| 154526 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 154527 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 154528 | .{ .@"0:", ._ps, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 154529 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 154530 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 154531 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 154532 | } }, |
| 154533 | } }, |
| 154534 | .Add => comptime &.{ .{ |
| 154535 | .required_features = .{ .f16c, .fast_hops, null, null }, |
| 154536 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154537 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 154538 | .patterns = &.{ |
| 154539 | .{ .src = .{ .mem, .none, .none } }, |
| 154540 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154541 | }, |
| 154542 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154543 | .each = .{ .once = &.{ |
| 154544 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 154545 | .{ ._, .vh_ps, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 154546 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154547 | } }, |
| 154548 | }, .{ |
| 154549 | .required_features = .{ .f16c, null, null, null }, |
| 154550 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154551 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 154552 | .patterns = &.{ |
| 154553 | .{ .src = .{ .mem, .none, .none } }, |
| 154554 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154555 | }, |
| 154556 | .extra_temps = .{ |
| 154557 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 154558 | .unused, |
| 154559 | .unused, |
| 154560 | .unused, |
| 154561 | .unused, |
| 154562 | .unused, |
| 154563 | .unused, |
| 154564 | .unused, |
| 154565 | .unused, |
| 154566 | .unused, |
| 154567 | .unused, |
| 154568 | }, |
| 154569 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154570 | .each = .{ .once = &.{ |
| 154571 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 154572 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 154573 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154574 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154575 | } }, |
| 154576 | }, .{ |
| 154577 | .required_features = .{ .f16c, .fast_hops, null, null }, |
| 154578 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154579 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 154580 | .patterns = &.{ |
| 154581 | .{ .src = .{ .mem, .none, .none } }, |
| 154582 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154583 | }, |
| 154584 | .extra_temps = .{ |
| 154585 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 154586 | .unused, |
| 154587 | .unused, |
| 154588 | .unused, |
| 154589 | .unused, |
| 154590 | .unused, |
| 154591 | .unused, |
| 154592 | .unused, |
| 154593 | .unused, |
| 154594 | .unused, |
| 154595 | .unused, |
| 154596 | }, |
| 154597 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154598 | .each = .{ .once = &.{ |
| 154599 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 154600 | .{ ._, .vh_ps, .add, .tmp0x, .dst0x, .dst0x, ._ }, |
| 154601 | .{ ._, .v_ps, .shuf, .dst0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 154602 | .{ ._, .v_ss, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 154603 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154604 | } }, |
| 154605 | }, .{ |
| 154606 | .required_features = .{ .f16c, null, null, null }, |
| 154607 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154608 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 154609 | .patterns = &.{ |
| 154610 | .{ .src = .{ .mem, .none, .none } }, |
| 154611 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154612 | }, |
| 154613 | .extra_temps = .{ |
| 154614 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 154615 | .unused, |
| 154616 | .unused, |
| 154617 | .unused, |
| 154618 | .unused, |
| 154619 | .unused, |
| 154620 | .unused, |
| 154621 | .unused, |
| 154622 | .unused, |
| 154623 | .unused, |
| 154624 | .unused, |
| 154625 | }, |
| 154626 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154627 | .each = .{ .once = &.{ |
| 154628 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 154629 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 154630 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154631 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 154632 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154633 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154634 | } }, |
| 154635 | }, .{ |
| 154636 | .required_features = .{ .f16c, .fast_hops, null, null }, |
| 154637 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154638 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 154639 | .patterns = &.{ |
| 154640 | .{ .src = .{ .mem, .none, .none } }, |
| 154641 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154642 | }, |
| 154643 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154644 | .each = .{ .once = &.{ |
| 154645 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 154646 | .{ ._, .vh_ps, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 154647 | .{ ._, .vh_ps, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 154648 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154649 | } }, |
| 154650 | }, .{ |
| 154651 | .required_features = .{ .f16c, null, null, null }, |
| 154652 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154653 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 154654 | .patterns = &.{ |
| 154655 | .{ .src = .{ .mem, .none, .none } }, |
| 154656 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154657 | }, |
| 154658 | .extra_temps = .{ |
| 154659 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 154660 | .unused, |
| 154661 | .unused, |
| 154662 | .unused, |
| 154663 | .unused, |
| 154664 | .unused, |
| 154665 | .unused, |
| 154666 | .unused, |
| 154667 | .unused, |
| 154668 | .unused, |
| 154669 | .unused, |
| 154670 | }, |
| 154671 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154672 | .each = .{ .once = &.{ |
| 154673 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 154674 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 154675 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154676 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 154677 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154678 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154679 | } }, |
| 154680 | }, .{ |
| 154681 | .required_features = .{ .f16c, .fast_hops, null, null }, |
| 154682 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154683 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 154684 | .patterns = &.{ |
| 154685 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154686 | }, |
| 154687 | .extra_temps = .{ |
| 154688 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 154689 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 154690 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 154691 | .unused, |
| 154692 | .unused, |
| 154693 | .unused, |
| 154694 | .unused, |
| 154695 | .unused, |
| 154696 | .unused, |
| 154697 | .unused, |
| 154698 | .unused, |
| 154699 | }, |
| 154700 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154701 | .each = .{ .once = &.{ |
| 154702 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 154703 | .{ ._, .v_ps, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 154704 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 154705 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 154706 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 154707 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 154708 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 154709 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154710 | } }, |
| 154711 | }, .{ |
| 154712 | .required_features = .{ .f16c, null, null, null }, |
| 154713 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154714 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 154715 | .patterns = &.{ |
| 154716 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154717 | }, |
| 154718 | .extra_temps = .{ |
| 154719 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 154720 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 154721 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 154722 | .unused, |
| 154723 | .unused, |
| 154724 | .unused, |
| 154725 | .unused, |
| 154726 | .unused, |
| 154727 | .unused, |
| 154728 | .unused, |
| 154729 | .unused, |
| 154730 | }, |
| 154731 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154732 | .each = .{ .once = &.{ |
| 154733 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 154734 | .{ ._, .v_ps, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 154735 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 154736 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 154737 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 154738 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 154739 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 154740 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 154741 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 154742 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154743 | } }, |
| 154744 | }, .{ |
| 154745 | .required_features = .{ .f16c, .fast_hops, null, null }, |
| 154746 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154747 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 154748 | .patterns = &.{ |
| 154749 | .{ .src = .{ .mem, .none, .none } }, |
| 154750 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154751 | }, |
| 154752 | .extra_temps = .{ |
| 154753 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 154754 | .unused, |
| 154755 | .unused, |
| 154756 | .unused, |
| 154757 | .unused, |
| 154758 | .unused, |
| 154759 | .unused, |
| 154760 | .unused, |
| 154761 | .unused, |
| 154762 | .unused, |
| 154763 | .unused, |
| 154764 | }, |
| 154765 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154766 | .each = .{ .once = &.{ |
| 154767 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| 154768 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 154769 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 154770 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 154771 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154772 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154773 | } }, |
| 154774 | }, .{ |
| 154775 | .required_features = .{ .f16c, null, null, null }, |
| 154776 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154777 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 154778 | .patterns = &.{ |
| 154779 | .{ .src = .{ .mem, .none, .none } }, |
| 154780 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154781 | }, |
| 154782 | .extra_temps = .{ |
| 154783 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 154784 | .unused, |
| 154785 | .unused, |
| 154786 | .unused, |
| 154787 | .unused, |
| 154788 | .unused, |
| 154789 | .unused, |
| 154790 | .unused, |
| 154791 | .unused, |
| 154792 | .unused, |
| 154793 | .unused, |
| 154794 | }, |
| 154795 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154796 | .each = .{ .once = &.{ |
| 154797 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| 154798 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 154799 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154800 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 154801 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154802 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 154803 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154804 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154805 | } }, |
| 154806 | }, .{ |
| 154807 | .required_features = .{ .f16c, .fast_hops, null, null }, |
| 154808 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154809 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 154810 | .patterns = &.{ |
| 154811 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154812 | }, |
| 154813 | .extra_temps = .{ |
| 154814 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 154815 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 154816 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 154817 | .unused, |
| 154818 | .unused, |
| 154819 | .unused, |
| 154820 | .unused, |
| 154821 | .unused, |
| 154822 | .unused, |
| 154823 | .unused, |
| 154824 | .unused, |
| 154825 | }, |
| 154826 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154827 | .each = .{ .once = &.{ |
| 154828 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 154829 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 154830 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 154831 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 154832 | .{ ._, .v_ps, .cvtph2, .tmp2y, .tmp2x, ._, ._ }, |
| 154833 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 154834 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 154835 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 154836 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 154837 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 154838 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154839 | } }, |
| 154840 | }, .{ |
| 154841 | .required_features = .{ .f16c, null, null, null }, |
| 154842 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154843 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 154844 | .patterns = &.{ |
| 154845 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154846 | }, |
| 154847 | .extra_temps = .{ |
| 154848 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 154849 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 154850 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 154851 | .unused, |
| 154852 | .unused, |
| 154853 | .unused, |
| 154854 | .unused, |
| 154855 | .unused, |
| 154856 | .unused, |
| 154857 | .unused, |
| 154858 | .unused, |
| 154859 | }, |
| 154860 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154861 | .each = .{ .once = &.{ |
| 154862 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 154863 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 154864 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 154865 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 154866 | .{ ._, .v_ps, .cvtph2, .tmp2y, .tmp2x, ._, ._ }, |
| 154867 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 154868 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 154869 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 154870 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 154871 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 154872 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 154873 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 154874 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154875 | } }, |
| 154876 | }, .{ |
| 154877 | .required_features = .{ .f16c, .fast_hops, null, null }, |
| 154878 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154879 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 154880 | .patterns = &.{ |
| 154881 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154882 | }, |
| 154883 | .extra_temps = .{ |
| 154884 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 154885 | .unused, |
| 154886 | .unused, |
| 154887 | .unused, |
| 154888 | .unused, |
| 154889 | .unused, |
| 154890 | .unused, |
| 154891 | .unused, |
| 154892 | .unused, |
| 154893 | .unused, |
| 154894 | .unused, |
| 154895 | }, |
| 154896 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154897 | .each = .{ .once = &.{ |
| 154898 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 154899 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| 154900 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| 154901 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp0y, ._ }, |
| 154902 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 154903 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 154904 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 154905 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154906 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154907 | } }, |
| 154908 | }, .{ |
| 154909 | .required_features = .{ .f16c, null, null, null }, |
| 154910 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154911 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 154912 | .patterns = &.{ |
| 154913 | .{ .src = .{ .to_sse, .none, .none } }, |
| 154914 | }, |
| 154915 | .extra_temps = .{ |
| 154916 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 154917 | .unused, |
| 154918 | .unused, |
| 154919 | .unused, |
| 154920 | .unused, |
| 154921 | .unused, |
| 154922 | .unused, |
| 154923 | .unused, |
| 154924 | .unused, |
| 154925 | .unused, |
| 154926 | .unused, |
| 154927 | }, |
| 154928 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 154929 | .each = .{ .once = &.{ |
| 154930 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 154931 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| 154932 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| 154933 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp0y, ._ }, |
| 154934 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 154935 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154936 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 154937 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154938 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 154939 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 154940 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154941 | } }, |
| 154942 | }, .{ |
| 154943 | .required_features = .{ .avx512f, null, null, null }, |
| 154944 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154945 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 154946 | .patterns = &.{ |
| 154947 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154948 | }, |
| 154949 | .extra_temps = .{ |
| 154950 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 154951 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 154952 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 154953 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 154954 | .unused, |
| 154955 | .unused, |
| 154956 | .unused, |
| 154957 | .unused, |
| 154958 | .unused, |
| 154959 | .unused, |
| 154960 | .unused, |
| 154961 | }, |
| 154962 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 154963 | .each = .{ .once = &.{ |
| 154964 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 154965 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 154966 | .{ ._, .v_ps, .mova, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 154967 | .{ ._, .v_ps, .@"and", .tmp2y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 154968 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 154969 | .{ ._, .v_f128, .extract, .tmp3x, .tmp2y, .ui(1), ._ }, |
| 154970 | .{ ._, .v_ps, .cvtph2, .tmp2y, .tmp2x, ._, ._ }, |
| 154971 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 154972 | .{ ._, .v_ps, .add, .tmp2y, .tmp2y, .tmp3y, ._ }, |
| 154973 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 154974 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 154975 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 154976 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp3y, ._ }, |
| 154977 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 154978 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 154979 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 154980 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 154981 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 154982 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 154983 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 154984 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 154985 | } }, |
| 154986 | }, .{ |
| 154987 | .required_features = .{ .avx512f, null, null, null }, |
| 154988 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 154989 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 154990 | .patterns = &.{ |
| 154991 | .{ .src = .{ .to_mem, .none, .none } }, |
| 154992 | }, |
| 154993 | .extra_temps = .{ |
| 154994 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 154995 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 154996 | .unused, |
| 154997 | .unused, |
| 154998 | .unused, |
| 154999 | .unused, |
| 155000 | .unused, |
| 155001 | .unused, |
| 155002 | .unused, |
| 155003 | .unused, |
| 155004 | .unused, |
| 155005 | }, |
| 155006 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155007 | .each = .{ .once = &.{ |
| 155008 | .{ ._, .v_ps, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 155009 | .{ ._, .v_ps, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 155010 | .{ ._, .v_f128, .extract, .tmp1x, .tmp0y, .ui(1), ._ }, |
| 155011 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| 155012 | .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ }, |
| 155013 | .{ ._, .v_ps, .add, .tmp0y, .tmp0y, .tmp1y, ._ }, |
| 155014 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 155015 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 155016 | .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ }, |
| 155017 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp1y, ._ }, |
| 155018 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp0y, ._ }, |
| 155019 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 155020 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 155021 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 155022 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 155023 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 155024 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 155025 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 155026 | } }, |
| 155027 | }, .{ |
| 155028 | .required_features = .{ .f16c, .fast_hops, null, null }, |
| 155029 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 155030 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 155031 | .patterns = &.{ |
| 155032 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155033 | }, |
| 155034 | .extra_temps = .{ |
| 155035 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155036 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 155037 | .unused, |
| 155038 | .unused, |
| 155039 | .unused, |
| 155040 | .unused, |
| 155041 | .unused, |
| 155042 | .unused, |
| 155043 | .unused, |
| 155044 | .unused, |
| 155045 | .unused, |
| 155046 | }, |
| 155047 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155048 | .clobbers = .{ .eflags = true }, |
| 155049 | .each = .{ .once = &.{ |
| 155050 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 155051 | .{ ._, .v_ps, .cvtph2, .dst0y, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 155052 | .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| 155053 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp1y, ._ }, |
| 155054 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 155055 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155056 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 155057 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 155058 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 155059 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 155060 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 155061 | } }, |
| 155062 | }, .{ |
| 155063 | .required_features = .{ .f16c, null, null, null }, |
| 155064 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 155065 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 155066 | .patterns = &.{ |
| 155067 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155068 | }, |
| 155069 | .extra_temps = .{ |
| 155070 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155071 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 155072 | .unused, |
| 155073 | .unused, |
| 155074 | .unused, |
| 155075 | .unused, |
| 155076 | .unused, |
| 155077 | .unused, |
| 155078 | .unused, |
| 155079 | .unused, |
| 155080 | .unused, |
| 155081 | }, |
| 155082 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155083 | .clobbers = .{ .eflags = true }, |
| 155084 | .each = .{ .once = &.{ |
| 155085 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 155086 | .{ ._, .v_ps, .cvtph2, .dst0y, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 155087 | .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| 155088 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp1y, ._ }, |
| 155089 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 155090 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155091 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 155092 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 155093 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 155094 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 155095 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 155096 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 155097 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 155098 | } }, |
| 155099 | }, .{ |
| 155100 | .required_features = .{ .avx512f, null, null, null }, |
| 155101 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 155102 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 155103 | .patterns = &.{ |
| 155104 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155105 | }, |
| 155106 | .extra_temps = .{ |
| 155107 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155108 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 155109 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 155110 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 155111 | .unused, |
| 155112 | .unused, |
| 155113 | .unused, |
| 155114 | .unused, |
| 155115 | .unused, |
| 155116 | .unused, |
| 155117 | .unused, |
| 155118 | }, |
| 155119 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155120 | .clobbers = .{ .eflags = true }, |
| 155121 | .each = .{ .once = &.{ |
| 155122 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 155123 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 155124 | .{ ._, .v_ps, .mova, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 155125 | .{ ._, ._, .mov, .tmp0d, .sia(-80, .src0, .add_size), ._, ._ }, |
| 155126 | .{ ._, .v_ps, .@"and", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 155127 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 155128 | .{ ._, .v_f128, .extract, .tmp3x, .tmp2y, .ui(1), ._ }, |
| 155129 | .{ ._, .v_ps, .cvtph2, .tmp2y, .tmp2x, ._, ._ }, |
| 155130 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 155131 | .{ ._, .v_ps, .add, .tmp2y, .tmp2y, .tmp3y, ._ }, |
| 155132 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 155133 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 155134 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 155135 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp3y, ._ }, |
| 155136 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 155137 | .{ .@"0:", .v_ps, .cvtph2, .tmp2y, .memi(.src0x, .tmp0), ._, ._ }, |
| 155138 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 155139 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 155140 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155141 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 155142 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155143 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 155144 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155145 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 155146 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155147 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 155148 | } }, |
| 155149 | }, .{ |
| 155150 | .required_features = .{ .f16c, .fast_hops, null, null }, |
| 155151 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 155152 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 155153 | .patterns = &.{ |
| 155154 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155155 | }, |
| 155156 | .extra_temps = .{ |
| 155157 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155158 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 155159 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 155160 | .unused, |
| 155161 | .unused, |
| 155162 | .unused, |
| 155163 | .unused, |
| 155164 | .unused, |
| 155165 | .unused, |
| 155166 | .unused, |
| 155167 | .unused, |
| 155168 | }, |
| 155169 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155170 | .clobbers = .{ .eflags = true }, |
| 155171 | .each = .{ .once = &.{ |
| 155172 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 155173 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 155174 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 155175 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 155176 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 155177 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 155178 | .{ ._, .v_ps, .cvtph2, .tmp2y, .tmp2x, ._, ._ }, |
| 155179 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 155180 | .{ .@"0:", .v_ps, .cvtph2, .tmp2y, .memi(.src0x, .tmp0), ._, ._ }, |
| 155181 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 155182 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 155183 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155184 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 155185 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 155186 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 155187 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155188 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 155189 | } }, |
| 155190 | }, .{ |
| 155191 | .required_features = .{ .f16c, null, null, null }, |
| 155192 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 155193 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 155194 | .patterns = &.{ |
| 155195 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155196 | }, |
| 155197 | .extra_temps = .{ |
| 155198 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155199 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 155200 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 155201 | .unused, |
| 155202 | .unused, |
| 155203 | .unused, |
| 155204 | .unused, |
| 155205 | .unused, |
| 155206 | .unused, |
| 155207 | .unused, |
| 155208 | .unused, |
| 155209 | }, |
| 155210 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155211 | .clobbers = .{ .eflags = true }, |
| 155212 | .each = .{ .once = &.{ |
| 155213 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 155214 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 155215 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 155216 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 155217 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 155218 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 155219 | .{ ._, .v_ps, .cvtph2, .tmp2y, .tmp2x, ._, ._ }, |
| 155220 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 155221 | .{ .@"0:", .v_ps, .cvtph2, .tmp2y, .memi(.src0x, .tmp0), ._, ._ }, |
| 155222 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 155223 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 155224 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155225 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 155226 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155227 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 155228 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155229 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 155230 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155231 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 155232 | } }, |
| 155233 | }, .{ |
| 155234 | .required_features = .{ .avx, null, null, null }, |
| 155235 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 155236 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 155237 | .patterns = &.{ |
| 155238 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155239 | }, |
| 155240 | .call_frame = .{ .alignment = .@"16" }, |
| 155241 | .extra_temps = .{ |
| 155242 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155243 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 155244 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addhf3" } } }, |
| 155245 | .unused, |
| 155246 | .unused, |
| 155247 | .unused, |
| 155248 | .unused, |
| 155249 | .unused, |
| 155250 | .unused, |
| 155251 | .unused, |
| 155252 | .unused, |
| 155253 | }, |
| 155254 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 155255 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 155256 | .each = .{ .once = &.{ |
| 155257 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .dst0x, ._ }, |
| 155258 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 155259 | .{ ._, .vp_w, .insr, .dst0x, .dst0x, .memad(.src0w, .add_unaligned_size, -2), .ui(0) }, |
| 155260 | .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| 155261 | .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memi(.src0w, .tmp0), .ui(0) }, |
| 155262 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 155263 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 155264 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155265 | } }, |
| 155266 | }, .{ |
| 155267 | .required_features = .{ .sse2, null, null, null }, |
| 155268 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 155269 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 155270 | .patterns = &.{ |
| 155271 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155272 | }, |
| 155273 | .call_frame = .{ .alignment = .@"16" }, |
| 155274 | .extra_temps = .{ |
| 155275 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155276 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 155277 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addhf3" } } }, |
| 155278 | .unused, |
| 155279 | .unused, |
| 155280 | .unused, |
| 155281 | .unused, |
| 155282 | .unused, |
| 155283 | .unused, |
| 155284 | .unused, |
| 155285 | .unused, |
| 155286 | }, |
| 155287 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 155288 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 155289 | .each = .{ .once = &.{ |
| 155290 | .{ ._, .p_, .xor, .dst0x, .dst0x, ._, ._ }, |
| 155291 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 155292 | .{ ._, .p_w, .insr, .dst0x, .memad(.src0w, .add_unaligned_size, -2), .ui(0), ._ }, |
| 155293 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 155294 | .{ ._, .p_w, .insr, .tmp1x, .memi(.src0w, .tmp0), .ui(0), ._ }, |
| 155295 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 155296 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 155297 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155298 | } }, |
| 155299 | }, .{ |
| 155300 | .required_features = .{ .sse, null, null, null }, |
| 155301 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 155302 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 155303 | .patterns = &.{ |
| 155304 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155305 | }, |
| 155306 | .call_frame = .{ .alignment = .@"16" }, |
| 155307 | .extra_temps = .{ |
| 155308 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155309 | .{ .type = .f16, .kind = .{ .reg = .ax } }, |
| 155310 | .{ .type = .f32, .kind = .mem }, |
| 155311 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 155312 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addhf3" } } }, |
| 155313 | .unused, |
| 155314 | .unused, |
| 155315 | .unused, |
| 155316 | .unused, |
| 155317 | .unused, |
| 155318 | .unused, |
| 155319 | }, |
| 155320 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 155321 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 155322 | .each = .{ .once = &.{ |
| 155323 | .{ ._, ._ps, .xor, .dst0x, .dst0x, ._, ._ }, |
| 155324 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 155325 | .{ ._, ._, .movzx, .tmp1d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 155326 | .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ }, |
| 155327 | .{ ._, ._ss, .mov, .dst0x, .mem(.tmp2d), ._, ._ }, |
| 155328 | .{ .@"0:", ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 155329 | .{ ._, ._ss, .mov, .tmp3x, .memi(.src0d, .tmp0), ._, ._ }, |
| 155330 | .{ ._, ._, .call, .tmp4d, ._, ._, ._ }, |
| 155331 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 155332 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155333 | } }, |
| 155334 | }, .{ |
| 155335 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 155336 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155337 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 155338 | .patterns = &.{ |
| 155339 | .{ .src = .{ .to_sse, .none, .none } }, |
| 155340 | }, |
| 155341 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 155342 | .each = .{ .once = &.{ |
| 155343 | .{ ._, .vh_ps, .add, .dst0x, .src0x, .src0x, ._ }, |
| 155344 | } }, |
| 155345 | }, .{ |
| 155346 | .required_features = .{ .avx, null, null, null }, |
| 155347 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155348 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 155349 | .patterns = &.{ |
| 155350 | .{ .src = .{ .to_sse, .none, .none } }, |
| 155351 | }, |
| 155352 | .extra_temps = .{ |
| 155353 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155354 | .unused, |
| 155355 | .unused, |
| 155356 | .unused, |
| 155357 | .unused, |
| 155358 | .unused, |
| 155359 | .unused, |
| 155360 | .unused, |
| 155361 | .unused, |
| 155362 | .unused, |
| 155363 | .unused, |
| 155364 | }, |
| 155365 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 155366 | .each = .{ .once = &.{ |
| 155367 | .{ ._, .v_ps, .shuf, .tmp0x, .src0x, .src0x, .ui(0b01) }, |
| 155368 | .{ ._, .v_ss, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 155369 | } }, |
| 155370 | }, .{ |
| 155371 | .required_features = .{ .sse3, .fast_hops, null, null }, |
| 155372 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155373 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 155374 | .patterns = &.{ |
| 155375 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 155376 | }, |
| 155377 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 155378 | .each = .{ .once = &.{ |
| 155379 | .{ ._, .h_ps, .add, .dst0x, .src0x, ._, ._ }, |
| 155380 | } }, |
| 155381 | }, .{ |
| 155382 | .required_features = .{ .sse, null, null, null }, |
| 155383 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155384 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 155385 | .patterns = &.{ |
| 155386 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 155387 | }, |
| 155388 | .extra_temps = .{ |
| 155389 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155390 | .unused, |
| 155391 | .unused, |
| 155392 | .unused, |
| 155393 | .unused, |
| 155394 | .unused, |
| 155395 | .unused, |
| 155396 | .unused, |
| 155397 | .unused, |
| 155398 | .unused, |
| 155399 | .unused, |
| 155400 | }, |
| 155401 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 155402 | .each = .{ .once = &.{ |
| 155403 | .{ ._, ._ps, .mova, .tmp0x, .src0x, ._, ._ }, |
| 155404 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 155405 | .{ ._, ._ss, .add, .dst0x, .tmp0x, ._, ._ }, |
| 155406 | } }, |
| 155407 | }, .{ |
| 155408 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 155409 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155410 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 155411 | .patterns = &.{ |
| 155412 | .{ .src = .{ .to_sse, .none, .none } }, |
| 155413 | }, |
| 155414 | .extra_temps = .{ |
| 155415 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155416 | .unused, |
| 155417 | .unused, |
| 155418 | .unused, |
| 155419 | .unused, |
| 155420 | .unused, |
| 155421 | .unused, |
| 155422 | .unused, |
| 155423 | .unused, |
| 155424 | .unused, |
| 155425 | .unused, |
| 155426 | }, |
| 155427 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 155428 | .each = .{ .once = &.{ |
| 155429 | .{ ._, .vh_ps, .add, .tmp0x, .src0x, .src0x, ._ }, |
| 155430 | .{ ._, .v_ps, .movhl, .dst0x, .src0x, .src0x, ._ }, |
| 155431 | .{ ._, .v_ss, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 155432 | } }, |
| 155433 | }, .{ |
| 155434 | .required_features = .{ .avx, null, null, null }, |
| 155435 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155436 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 155437 | .patterns = &.{ |
| 155438 | .{ .src = .{ .to_sse, .none, .none } }, |
| 155439 | }, |
| 155440 | .extra_temps = .{ |
| 155441 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155442 | .unused, |
| 155443 | .unused, |
| 155444 | .unused, |
| 155445 | .unused, |
| 155446 | .unused, |
| 155447 | .unused, |
| 155448 | .unused, |
| 155449 | .unused, |
| 155450 | .unused, |
| 155451 | .unused, |
| 155452 | }, |
| 155453 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 155454 | .each = .{ .once = &.{ |
| 155455 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 155456 | .{ ._, .v_ss, .add, .tmp0x, .src0x, .tmp0x, ._ }, |
| 155457 | .{ ._, .v_ps, .shuf, .dst0x, .src0x, .src0x, .ui(0b01) }, |
| 155458 | .{ ._, .v_ss, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 155459 | } }, |
| 155460 | }, .{ |
| 155461 | .required_features = .{ .sse3, .fast_hops, null, null }, |
| 155462 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155463 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 155464 | .patterns = &.{ |
| 155465 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 155466 | }, |
| 155467 | .extra_temps = .{ |
| 155468 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155469 | .unused, |
| 155470 | .unused, |
| 155471 | .unused, |
| 155472 | .unused, |
| 155473 | .unused, |
| 155474 | .unused, |
| 155475 | .unused, |
| 155476 | .unused, |
| 155477 | .unused, |
| 155478 | .unused, |
| 155479 | }, |
| 155480 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 155481 | .each = .{ .once = &.{ |
| 155482 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 155483 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 155484 | .{ ._, .h_ps, .add, .dst0x, .src0x, ._, ._ }, |
| 155485 | .{ ._, ._ss, .add, .dst0x, .tmp0x, ._, ._ }, |
| 155486 | } }, |
| 155487 | }, .{ |
| 155488 | .required_features = .{ .sse, null, null, null }, |
| 155489 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155490 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 155491 | .patterns = &.{ |
| 155492 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 155493 | }, |
| 155494 | .extra_temps = .{ |
| 155495 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155496 | .unused, |
| 155497 | .unused, |
| 155498 | .unused, |
| 155499 | .unused, |
| 155500 | .unused, |
| 155501 | .unused, |
| 155502 | .unused, |
| 155503 | .unused, |
| 155504 | .unused, |
| 155505 | .unused, |
| 155506 | }, |
| 155507 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 155508 | .each = .{ .once = &.{ |
| 155509 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 155510 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 155511 | .{ ._, ._ss, .add, .tmp0x, .src0x, ._, ._ }, |
| 155512 | .{ ._, ._ps, .shuf, .dst0x, .src0x, .ui(0b01), ._ }, |
| 155513 | .{ ._, ._ss, .add, .dst0x, .tmp0x, ._, ._ }, |
| 155514 | } }, |
| 155515 | }, .{ |
| 155516 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 155517 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155518 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 155519 | .patterns = &.{ |
| 155520 | .{ .src = .{ .to_sse, .none, .none } }, |
| 155521 | }, |
| 155522 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 155523 | .each = .{ .once = &.{ |
| 155524 | .{ ._, .vh_ps, .add, .dst0x, .src0x, .src0x, ._ }, |
| 155525 | .{ ._, .vh_ps, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 155526 | } }, |
| 155527 | }, .{ |
| 155528 | .required_features = .{ .avx, null, null, null }, |
| 155529 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155530 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 155531 | .patterns = &.{ |
| 155532 | .{ .src = .{ .to_sse, .none, .none } }, |
| 155533 | }, |
| 155534 | .extra_temps = .{ |
| 155535 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155536 | .unused, |
| 155537 | .unused, |
| 155538 | .unused, |
| 155539 | .unused, |
| 155540 | .unused, |
| 155541 | .unused, |
| 155542 | .unused, |
| 155543 | .unused, |
| 155544 | .unused, |
| 155545 | .unused, |
| 155546 | }, |
| 155547 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 155548 | .each = .{ .once = &.{ |
| 155549 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 155550 | .{ ._, .v_ps, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 155551 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 155552 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 155553 | } }, |
| 155554 | }, .{ |
| 155555 | .required_features = .{ .sse3, .fast_hops, null, null }, |
| 155556 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155557 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 155558 | .patterns = &.{ |
| 155559 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 155560 | }, |
| 155561 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 155562 | .each = .{ .once = &.{ |
| 155563 | .{ ._, .h_ps, .add, .dst0x, .src0x, ._, ._ }, |
| 155564 | .{ ._, .h_ps, .add, .dst0x, .dst0x, ._, ._ }, |
| 155565 | } }, |
| 155566 | }, .{ |
| 155567 | .required_features = .{ .sse, null, null, null }, |
| 155568 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155569 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 155570 | .patterns = &.{ |
| 155571 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 155572 | }, |
| 155573 | .extra_temps = .{ |
| 155574 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155575 | .unused, |
| 155576 | .unused, |
| 155577 | .unused, |
| 155578 | .unused, |
| 155579 | .unused, |
| 155580 | .unused, |
| 155581 | .unused, |
| 155582 | .unused, |
| 155583 | .unused, |
| 155584 | .unused, |
| 155585 | }, |
| 155586 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 155587 | .each = .{ .once = &.{ |
| 155588 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 155589 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 155590 | .{ ._, ._ps, .add, .dst0x, .tmp0x, ._, ._ }, |
| 155591 | .{ ._, ._ps, .mova, .tmp0x, .dst0x, ._, ._ }, |
| 155592 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 155593 | .{ ._, ._ss, .add, .dst0x, .tmp0x, ._, ._ }, |
| 155594 | } }, |
| 155595 | }, .{ |
| 155596 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 155597 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155598 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 155599 | .patterns = &.{ |
| 155600 | .{ .src = .{ .to_sse, .none, .none } }, |
| 155601 | }, |
| 155602 | .extra_temps = .{ |
| 155603 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 155604 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 155605 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155606 | .unused, |
| 155607 | .unused, |
| 155608 | .unused, |
| 155609 | .unused, |
| 155610 | .unused, |
| 155611 | .unused, |
| 155612 | .unused, |
| 155613 | .unused, |
| 155614 | }, |
| 155615 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 155616 | .each = .{ .once = &.{ |
| 155617 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 155618 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 155619 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 155620 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 155621 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 155622 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155623 | } }, |
| 155624 | }, .{ |
| 155625 | .required_features = .{ .avx, null, null, null }, |
| 155626 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155627 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 155628 | .patterns = &.{ |
| 155629 | .{ .src = .{ .to_sse, .none, .none } }, |
| 155630 | }, |
| 155631 | .extra_temps = .{ |
| 155632 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 155633 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 155634 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155635 | .unused, |
| 155636 | .unused, |
| 155637 | .unused, |
| 155638 | .unused, |
| 155639 | .unused, |
| 155640 | .unused, |
| 155641 | .unused, |
| 155642 | .unused, |
| 155643 | }, |
| 155644 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 155645 | .each = .{ .once = &.{ |
| 155646 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 155647 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 155648 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 155649 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155650 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 155651 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155652 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 155653 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155654 | } }, |
| 155655 | }, .{ |
| 155656 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 155657 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155658 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 155659 | .patterns = &.{ |
| 155660 | .{ .src = .{ .to_sse, .none, .none } }, |
| 155661 | }, |
| 155662 | .extra_temps = .{ |
| 155663 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155664 | .unused, |
| 155665 | .unused, |
| 155666 | .unused, |
| 155667 | .unused, |
| 155668 | .unused, |
| 155669 | .unused, |
| 155670 | .unused, |
| 155671 | .unused, |
| 155672 | .unused, |
| 155673 | .unused, |
| 155674 | }, |
| 155675 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 155676 | .each = .{ .once = &.{ |
| 155677 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 155678 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 155679 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 155680 | .{ ._, .v_ss, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 155681 | } }, |
| 155682 | }, .{ |
| 155683 | .required_features = .{ .avx, null, null, null }, |
| 155684 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155685 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 155686 | .patterns = &.{ |
| 155687 | .{ .src = .{ .to_sse, .none, .none } }, |
| 155688 | }, |
| 155689 | .extra_temps = .{ |
| 155690 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155691 | .unused, |
| 155692 | .unused, |
| 155693 | .unused, |
| 155694 | .unused, |
| 155695 | .unused, |
| 155696 | .unused, |
| 155697 | .unused, |
| 155698 | .unused, |
| 155699 | .unused, |
| 155700 | .unused, |
| 155701 | }, |
| 155702 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 155703 | .each = .{ .once = &.{ |
| 155704 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 155705 | .{ ._, .v_ps, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 155706 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 155707 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 155708 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 155709 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 155710 | } }, |
| 155711 | }, .{ |
| 155712 | .required_features = .{ .avx512f, null, null, null }, |
| 155713 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155714 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 155715 | .patterns = &.{ |
| 155716 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155717 | }, |
| 155718 | .extra_temps = .{ |
| 155719 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 155720 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 155721 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 155722 | .unused, |
| 155723 | .unused, |
| 155724 | .unused, |
| 155725 | .unused, |
| 155726 | .unused, |
| 155727 | .unused, |
| 155728 | .unused, |
| 155729 | .unused, |
| 155730 | }, |
| 155731 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155732 | .each = .{ .once = &.{ |
| 155733 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 155734 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 155735 | .{ ._, .v_ps, .mova, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 155736 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 155737 | .{ ._, .v_ps, .@"and", .tmp2y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 155738 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 155739 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 155740 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155741 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 155742 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155743 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 155744 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155745 | } }, |
| 155746 | }, .{ |
| 155747 | .required_features = .{ .avx512f, null, null, null }, |
| 155748 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155749 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 155750 | .patterns = &.{ |
| 155751 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155752 | }, |
| 155753 | .extra_temps = .{ |
| 155754 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155755 | .unused, |
| 155756 | .unused, |
| 155757 | .unused, |
| 155758 | .unused, |
| 155759 | .unused, |
| 155760 | .unused, |
| 155761 | .unused, |
| 155762 | .unused, |
| 155763 | .unused, |
| 155764 | .unused, |
| 155765 | }, |
| 155766 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155767 | .each = .{ .once = &.{ |
| 155768 | .{ ._, .v_ps, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 155769 | .{ ._, .v_ps, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 155770 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp0y, ._ }, |
| 155771 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 155772 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 155773 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 155774 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 155775 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 155776 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 155777 | } }, |
| 155778 | }, .{ |
| 155779 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 155780 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155781 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 155782 | .patterns = &.{ |
| 155783 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155784 | }, |
| 155785 | .extra_temps = .{ |
| 155786 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155787 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155788 | .unused, |
| 155789 | .unused, |
| 155790 | .unused, |
| 155791 | .unused, |
| 155792 | .unused, |
| 155793 | .unused, |
| 155794 | .unused, |
| 155795 | .unused, |
| 155796 | .unused, |
| 155797 | }, |
| 155798 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155799 | .clobbers = .{ .eflags = true }, |
| 155800 | .each = .{ .once = &.{ |
| 155801 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 155802 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 155803 | .{ .@"0:", .v_ps, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 155804 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 155805 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155806 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 155807 | .{ ._, .vh_ps, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 155808 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 155809 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 155810 | } }, |
| 155811 | }, .{ |
| 155812 | .required_features = .{ .avx, null, null, null }, |
| 155813 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155814 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 155815 | .patterns = &.{ |
| 155816 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155817 | }, |
| 155818 | .extra_temps = .{ |
| 155819 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155820 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155821 | .unused, |
| 155822 | .unused, |
| 155823 | .unused, |
| 155824 | .unused, |
| 155825 | .unused, |
| 155826 | .unused, |
| 155827 | .unused, |
| 155828 | .unused, |
| 155829 | .unused, |
| 155830 | }, |
| 155831 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155832 | .clobbers = .{ .eflags = true }, |
| 155833 | .each = .{ .once = &.{ |
| 155834 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 155835 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 155836 | .{ .@"0:", .v_ps, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 155837 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 155838 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155839 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 155840 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 155841 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 155842 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 155843 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 155844 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 155845 | } }, |
| 155846 | }, .{ |
| 155847 | .required_features = .{ .sse3, .fast_hops, null, null }, |
| 155848 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155849 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 155850 | .patterns = &.{ |
| 155851 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155852 | }, |
| 155853 | .extra_temps = .{ |
| 155854 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155855 | .unused, |
| 155856 | .unused, |
| 155857 | .unused, |
| 155858 | .unused, |
| 155859 | .unused, |
| 155860 | .unused, |
| 155861 | .unused, |
| 155862 | .unused, |
| 155863 | .unused, |
| 155864 | .unused, |
| 155865 | }, |
| 155866 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155867 | .clobbers = .{ .eflags = true }, |
| 155868 | .each = .{ .once = &.{ |
| 155869 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 155870 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 155871 | .{ .@"0:", ._ps, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 155872 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 155873 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155874 | .{ ._, .h_ps, .add, .dst0x, .dst0x, ._, ._ }, |
| 155875 | .{ ._, .h_ps, .add, .dst0x, .dst0x, ._, ._ }, |
| 155876 | } }, |
| 155877 | }, .{ |
| 155878 | .required_features = .{ .sse, null, null, null }, |
| 155879 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155880 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 155881 | .patterns = &.{ |
| 155882 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155883 | }, |
| 155884 | .extra_temps = .{ |
| 155885 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155886 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155887 | .unused, |
| 155888 | .unused, |
| 155889 | .unused, |
| 155890 | .unused, |
| 155891 | .unused, |
| 155892 | .unused, |
| 155893 | .unused, |
| 155894 | .unused, |
| 155895 | .unused, |
| 155896 | }, |
| 155897 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155898 | .clobbers = .{ .eflags = true }, |
| 155899 | .each = .{ .once = &.{ |
| 155900 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 155901 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 155902 | .{ .@"0:", ._ps, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 155903 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 155904 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155905 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 155906 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| 155907 | .{ ._, ._ps, .add, .dst0x, .tmp1x, ._, ._ }, |
| 155908 | .{ ._, ._ps, .mova, .tmp1x, .dst0x, ._, ._ }, |
| 155909 | .{ ._, ._ps, .shuf, .tmp1x, .tmp1x, .ui(0b01), ._ }, |
| 155910 | .{ ._, ._ss, .add, .dst0x, .tmp1x, ._, ._ }, |
| 155911 | } }, |
| 155912 | }, .{ |
| 155913 | .required_features = .{ .avx512f, null, null, null }, |
| 155914 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155915 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 155916 | .patterns = &.{ |
| 155917 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155918 | }, |
| 155919 | .extra_temps = .{ |
| 155920 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155921 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 155922 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 155923 | .unused, |
| 155924 | .unused, |
| 155925 | .unused, |
| 155926 | .unused, |
| 155927 | .unused, |
| 155928 | .unused, |
| 155929 | .unused, |
| 155930 | .unused, |
| 155931 | }, |
| 155932 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155933 | .clobbers = .{ .eflags = true }, |
| 155934 | .each = .{ .once = &.{ |
| 155935 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 155936 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 155937 | .{ ._, .v_ps, .mova, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 155938 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 155939 | .{ ._, .v_ps, .@"and", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 155940 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 155941 | .{ .@"0:", .v_ps, .add, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 155942 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 155943 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 155944 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155945 | .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 155946 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 155947 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155948 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 155949 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155950 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 155951 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155952 | } }, |
| 155953 | }, .{ |
| 155954 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 155955 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155956 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 155957 | .patterns = &.{ |
| 155958 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155959 | }, |
| 155960 | .extra_temps = .{ |
| 155961 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155962 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 155963 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155964 | .unused, |
| 155965 | .unused, |
| 155966 | .unused, |
| 155967 | .unused, |
| 155968 | .unused, |
| 155969 | .unused, |
| 155970 | .unused, |
| 155971 | .unused, |
| 155972 | }, |
| 155973 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 155974 | .clobbers = .{ .eflags = true }, |
| 155975 | .each = .{ .once = &.{ |
| 155976 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 155977 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 155978 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 155979 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 155980 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 155981 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 155982 | .{ .@"0:", .v_ps, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 155983 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 155984 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 155985 | .{ ._, .vh_ps, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 155986 | .{ ._, .vh_ps, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 155987 | } }, |
| 155988 | }, .{ |
| 155989 | .required_features = .{ .avx, null, null, null }, |
| 155990 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 155991 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 155992 | .patterns = &.{ |
| 155993 | .{ .src = .{ .to_mem, .none, .none } }, |
| 155994 | }, |
| 155995 | .extra_temps = .{ |
| 155996 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 155997 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 155998 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 155999 | .unused, |
| 156000 | .unused, |
| 156001 | .unused, |
| 156002 | .unused, |
| 156003 | .unused, |
| 156004 | .unused, |
| 156005 | .unused, |
| 156006 | .unused, |
| 156007 | }, |
| 156008 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156009 | .clobbers = .{ .eflags = true }, |
| 156010 | .each = .{ .once = &.{ |
| 156011 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 156012 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 156013 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 156014 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 156015 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 156016 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 156017 | .{ .@"0:", .v_ps, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 156018 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156019 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156020 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 156021 | .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 156022 | .{ ._, .v_ps, .shuf, .tmp2x, .dst0x, .dst0x, .ui(0b01) }, |
| 156023 | .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 156024 | } }, |
| 156025 | }, .{ |
| 156026 | .required_features = .{ .sse3, .fast_hops, null, null }, |
| 156027 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 156028 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 156029 | .patterns = &.{ |
| 156030 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156031 | }, |
| 156032 | .extra_temps = .{ |
| 156033 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156034 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 156035 | .unused, |
| 156036 | .unused, |
| 156037 | .unused, |
| 156038 | .unused, |
| 156039 | .unused, |
| 156040 | .unused, |
| 156041 | .unused, |
| 156042 | .unused, |
| 156043 | .unused, |
| 156044 | }, |
| 156045 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156046 | .clobbers = .{ .eflags = true }, |
| 156047 | .each = .{ .once = &.{ |
| 156048 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 156049 | .{ ._, ._ps, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 156050 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 156051 | .{ ._, ._ps, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 156052 | .{ .@"0:", ._ps, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 156053 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156054 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156055 | .{ ._, .h_ps, .add, .dst0x, .dst0x, ._, ._ }, |
| 156056 | .{ ._, .h_ps, .add, .dst0x, .dst0x, ._, ._ }, |
| 156057 | } }, |
| 156058 | }, .{ |
| 156059 | .required_features = .{ .sse, null, null, null }, |
| 156060 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 156061 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 156062 | .patterns = &.{ |
| 156063 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156064 | }, |
| 156065 | .extra_temps = .{ |
| 156066 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156067 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 156068 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 156069 | .unused, |
| 156070 | .unused, |
| 156071 | .unused, |
| 156072 | .unused, |
| 156073 | .unused, |
| 156074 | .unused, |
| 156075 | .unused, |
| 156076 | .unused, |
| 156077 | }, |
| 156078 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156079 | .clobbers = .{ .eflags = true }, |
| 156080 | .each = .{ .once = &.{ |
| 156081 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 156082 | .{ ._, ._ps, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 156083 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 156084 | .{ ._, ._ps, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 156085 | .{ .@"0:", ._ps, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 156086 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156087 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156088 | .{ ._, ._ps, .xor, .tmp2x, .tmp2x, ._, ._ }, |
| 156089 | .{ ._, ._ps, .movhl, .tmp2x, .dst0x, ._, ._ }, |
| 156090 | .{ ._, ._ps, .add, .dst0x, .tmp2x, ._, ._ }, |
| 156091 | .{ ._, ._ps, .mova, .tmp2x, .dst0x, ._, ._ }, |
| 156092 | .{ ._, ._ps, .shuf, .tmp2x, .tmp2x, .ui(0b01), ._ }, |
| 156093 | .{ ._, ._ss, .add, .dst0x, .tmp2x, ._, ._ }, |
| 156094 | } }, |
| 156095 | }, .{ |
| 156096 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 156097 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156098 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 156099 | .patterns = &.{ |
| 156100 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156101 | }, |
| 156102 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 156103 | .each = .{ .once = &.{ |
| 156104 | .{ ._, .vh_pd, .add, .dst0x, .src0x, .src0x, ._ }, |
| 156105 | } }, |
| 156106 | }, .{ |
| 156107 | .required_features = .{ .avx, null, null, null }, |
| 156108 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156109 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 156110 | .patterns = &.{ |
| 156111 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156112 | }, |
| 156113 | .extra_temps = .{ |
| 156114 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 156115 | .unused, |
| 156116 | .unused, |
| 156117 | .unused, |
| 156118 | .unused, |
| 156119 | .unused, |
| 156120 | .unused, |
| 156121 | .unused, |
| 156122 | .unused, |
| 156123 | .unused, |
| 156124 | .unused, |
| 156125 | }, |
| 156126 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 156127 | .each = .{ .once = &.{ |
| 156128 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 156129 | .{ ._, .v_sd, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 156130 | } }, |
| 156131 | }, .{ |
| 156132 | .required_features = .{ .sse3, .fast_hops, null, null }, |
| 156133 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156134 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 156135 | .patterns = &.{ |
| 156136 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 156137 | }, |
| 156138 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 156139 | .each = .{ .once = &.{ |
| 156140 | .{ ._, .h_pd, .add, .dst0x, .src0x, ._, ._ }, |
| 156141 | } }, |
| 156142 | }, .{ |
| 156143 | .required_features = .{ .sse2, null, null, null }, |
| 156144 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156145 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 156146 | .patterns = &.{ |
| 156147 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 156148 | }, |
| 156149 | .extra_temps = .{ |
| 156150 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 156151 | .unused, |
| 156152 | .unused, |
| 156153 | .unused, |
| 156154 | .unused, |
| 156155 | .unused, |
| 156156 | .unused, |
| 156157 | .unused, |
| 156158 | .unused, |
| 156159 | .unused, |
| 156160 | .unused, |
| 156161 | }, |
| 156162 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 156163 | .each = .{ .once = &.{ |
| 156164 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 156165 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 156166 | .{ ._, ._sd, .add, .dst0x, .tmp0x, ._, ._ }, |
| 156167 | } }, |
| 156168 | }, .{ |
| 156169 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 156170 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156171 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 156172 | .patterns = &.{ |
| 156173 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156174 | }, |
| 156175 | .extra_temps = .{ |
| 156176 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 156177 | .unused, |
| 156178 | .unused, |
| 156179 | .unused, |
| 156180 | .unused, |
| 156181 | .unused, |
| 156182 | .unused, |
| 156183 | .unused, |
| 156184 | .unused, |
| 156185 | .unused, |
| 156186 | .unused, |
| 156187 | }, |
| 156188 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 156189 | .each = .{ .once = &.{ |
| 156190 | .{ ._, .vh_pd, .add, .tmp0x, .src0x, .src0x, ._ }, |
| 156191 | .{ ._, .v_f128, .extract, .dst0x, .src0y, .ui(1), ._ }, |
| 156192 | .{ ._, .v_sd, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 156193 | } }, |
| 156194 | }, .{ |
| 156195 | .required_features = .{ .avx, null, null, null }, |
| 156196 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156197 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 156198 | .patterns = &.{ |
| 156199 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156200 | }, |
| 156201 | .extra_temps = .{ |
| 156202 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 156203 | .unused, |
| 156204 | .unused, |
| 156205 | .unused, |
| 156206 | .unused, |
| 156207 | .unused, |
| 156208 | .unused, |
| 156209 | .unused, |
| 156210 | .unused, |
| 156211 | .unused, |
| 156212 | .unused, |
| 156213 | }, |
| 156214 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 156215 | .each = .{ .once = &.{ |
| 156216 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 156217 | .{ ._, .v_sd, .add, .tmp0x, .src0x, .tmp0x, ._ }, |
| 156218 | .{ ._, .v_ps, .movhl, .dst0x, .src0x, .src0x, ._ }, |
| 156219 | .{ ._, .v_sd, .add, .dst0x, .tmp0x, .dst0x, ._ }, |
| 156220 | } }, |
| 156221 | }, .{ |
| 156222 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 156223 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156224 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 156225 | .patterns = &.{ |
| 156226 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156227 | }, |
| 156228 | .extra_temps = .{ |
| 156229 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 156230 | .unused, |
| 156231 | .unused, |
| 156232 | .unused, |
| 156233 | .unused, |
| 156234 | .unused, |
| 156235 | .unused, |
| 156236 | .unused, |
| 156237 | .unused, |
| 156238 | .unused, |
| 156239 | .unused, |
| 156240 | }, |
| 156241 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 156242 | .each = .{ .once = &.{ |
| 156243 | .{ ._, .vh_pd, .add, .dst0y, .src0y, .src0y, ._ }, |
| 156244 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 156245 | .{ ._, .v_sd, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 156246 | } }, |
| 156247 | }, .{ |
| 156248 | .required_features = .{ .avx, null, null, null }, |
| 156249 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156250 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 156251 | .patterns = &.{ |
| 156252 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156253 | }, |
| 156254 | .extra_temps = .{ |
| 156255 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 156256 | .unused, |
| 156257 | .unused, |
| 156258 | .unused, |
| 156259 | .unused, |
| 156260 | .unused, |
| 156261 | .unused, |
| 156262 | .unused, |
| 156263 | .unused, |
| 156264 | .unused, |
| 156265 | .unused, |
| 156266 | }, |
| 156267 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 156268 | .each = .{ .once = &.{ |
| 156269 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 156270 | .{ ._, .v_pd, .add, .dst0x, .src0x, .tmp0x, ._ }, |
| 156271 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 156272 | .{ ._, .v_sd, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 156273 | } }, |
| 156274 | }, .{ |
| 156275 | .required_features = .{ .avx512f, null, null, null }, |
| 156276 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156277 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 156278 | .patterns = &.{ |
| 156279 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156280 | }, |
| 156281 | .extra_temps = .{ |
| 156282 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 156283 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 156284 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 156285 | .unused, |
| 156286 | .unused, |
| 156287 | .unused, |
| 156288 | .unused, |
| 156289 | .unused, |
| 156290 | .unused, |
| 156291 | .unused, |
| 156292 | .unused, |
| 156293 | }, |
| 156294 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156295 | .each = .{ .once = &.{ |
| 156296 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 156297 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 156298 | .{ ._, .v_pd, .mova, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 156299 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 156300 | .{ ._, .v_pd, .@"and", .tmp2y, .tmp2y, .memd(.src0y, 32), ._ }, |
| 156301 | .{ ._, .v_pd, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 156302 | .{ ._, .v_i128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 156303 | .{ ._, .v_pd, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 156304 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 156305 | .{ ._, .v_sd, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 156306 | } }, |
| 156307 | }, .{ |
| 156308 | .required_features = .{ .avx512f, null, null, null }, |
| 156309 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156310 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 156311 | .patterns = &.{ |
| 156312 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156313 | }, |
| 156314 | .extra_temps = .{ |
| 156315 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 156316 | .unused, |
| 156317 | .unused, |
| 156318 | .unused, |
| 156319 | .unused, |
| 156320 | .unused, |
| 156321 | .unused, |
| 156322 | .unused, |
| 156323 | .unused, |
| 156324 | .unused, |
| 156325 | .unused, |
| 156326 | }, |
| 156327 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156328 | .each = .{ .once = &.{ |
| 156329 | .{ ._, .v_pd, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 156330 | .{ ._, .v_pd, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 156331 | .{ ._, .v_pd, .add, .dst0y, .dst0y, .tmp0y, ._ }, |
| 156332 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 156333 | .{ ._, .v_pd, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 156334 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 156335 | .{ ._, .v_sd, .add, .dst0x, .dst0x, .tmp0x, ._ }, |
| 156336 | } }, |
| 156337 | }, .{ |
| 156338 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 156339 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156340 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 156341 | .patterns = &.{ |
| 156342 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156343 | }, |
| 156344 | .extra_temps = .{ |
| 156345 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156346 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 156347 | .unused, |
| 156348 | .unused, |
| 156349 | .unused, |
| 156350 | .unused, |
| 156351 | .unused, |
| 156352 | .unused, |
| 156353 | .unused, |
| 156354 | .unused, |
| 156355 | .unused, |
| 156356 | }, |
| 156357 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156358 | .clobbers = .{ .eflags = true }, |
| 156359 | .each = .{ .once = &.{ |
| 156360 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 156361 | .{ ._, .v_pd, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 156362 | .{ .@"0:", .v_pd, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 156363 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 156364 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156365 | .{ ._, .vh_pd, .add, .dst0y, .dst0y, .dst0y, ._ }, |
| 156366 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 156367 | .{ ._, .v_sd, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 156368 | } }, |
| 156369 | }, .{ |
| 156370 | .required_features = .{ .avx, null, null, null }, |
| 156371 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156372 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 156373 | .patterns = &.{ |
| 156374 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156375 | }, |
| 156376 | .extra_temps = .{ |
| 156377 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156378 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 156379 | .unused, |
| 156380 | .unused, |
| 156381 | .unused, |
| 156382 | .unused, |
| 156383 | .unused, |
| 156384 | .unused, |
| 156385 | .unused, |
| 156386 | .unused, |
| 156387 | .unused, |
| 156388 | }, |
| 156389 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156390 | .clobbers = .{ .eflags = true }, |
| 156391 | .each = .{ .once = &.{ |
| 156392 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 156393 | .{ ._, .v_pd, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 156394 | .{ .@"0:", .v_pd, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 156395 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 156396 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156397 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 156398 | .{ ._, .v_pd, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 156399 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 156400 | .{ ._, .v_sd, .add, .dst0x, .dst0x, .tmp1x, ._ }, |
| 156401 | } }, |
| 156402 | }, .{ |
| 156403 | .required_features = .{ .sse3, .fast_hops, null, null }, |
| 156404 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156405 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 156406 | .patterns = &.{ |
| 156407 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156408 | }, |
| 156409 | .extra_temps = .{ |
| 156410 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156411 | .unused, |
| 156412 | .unused, |
| 156413 | .unused, |
| 156414 | .unused, |
| 156415 | .unused, |
| 156416 | .unused, |
| 156417 | .unused, |
| 156418 | .unused, |
| 156419 | .unused, |
| 156420 | .unused, |
| 156421 | }, |
| 156422 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156423 | .clobbers = .{ .eflags = true }, |
| 156424 | .each = .{ .once = &.{ |
| 156425 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 156426 | .{ ._, ._pd, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 156427 | .{ .@"0:", ._pd, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 156428 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156429 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156430 | .{ ._, .h_pd, .add, .dst0x, .dst0x, ._, ._ }, |
| 156431 | } }, |
| 156432 | }, .{ |
| 156433 | .required_features = .{ .sse2, null, null, null }, |
| 156434 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156435 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 156436 | .patterns = &.{ |
| 156437 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156438 | }, |
| 156439 | .extra_temps = .{ |
| 156440 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156441 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 156442 | .unused, |
| 156443 | .unused, |
| 156444 | .unused, |
| 156445 | .unused, |
| 156446 | .unused, |
| 156447 | .unused, |
| 156448 | .unused, |
| 156449 | .unused, |
| 156450 | .unused, |
| 156451 | }, |
| 156452 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156453 | .clobbers = .{ .eflags = true }, |
| 156454 | .each = .{ .once = &.{ |
| 156455 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 156456 | .{ ._, ._pd, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 156457 | .{ .@"0:", ._pd, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 156458 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156459 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156460 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 156461 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| 156462 | .{ ._, ._sd, .add, .dst0x, .tmp1x, ._, ._ }, |
| 156463 | } }, |
| 156464 | }, .{ |
| 156465 | .required_features = .{ .avx512f, null, null, null }, |
| 156466 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156467 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 156468 | .patterns = &.{ |
| 156469 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156470 | }, |
| 156471 | .extra_temps = .{ |
| 156472 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156473 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 156474 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| 156475 | .unused, |
| 156476 | .unused, |
| 156477 | .unused, |
| 156478 | .unused, |
| 156479 | .unused, |
| 156480 | .unused, |
| 156481 | .unused, |
| 156482 | .unused, |
| 156483 | }, |
| 156484 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156485 | .clobbers = .{ .eflags = true }, |
| 156486 | .each = .{ .once = &.{ |
| 156487 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 156488 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 156489 | .{ ._, .v_pd, .mova, .tmp2y, .lead(.tmp0y, 32), ._, ._ }, |
| 156490 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 156491 | .{ ._, .v_pd, .@"and", .tmp2y, .tmp2y, .memad(.src0y, .add_size, -32), ._ }, |
| 156492 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 156493 | .{ .@"0:", .v_pd, .add, .tmp2y, .tmp2y, .memid(.src0y, .tmp0, 32), ._ }, |
| 156494 | .{ ._, .v_pd, .add, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 156495 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 156496 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156497 | .{ ._, .v_pd, .add, .dst0y, .dst0y, .tmp2y, ._ }, |
| 156498 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 156499 | .{ ._, .v_pd, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 156500 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 156501 | .{ ._, .v_sd, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 156502 | } }, |
| 156503 | }, .{ |
| 156504 | .required_features = .{ .avx, .fast_hops, null, null }, |
| 156505 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156506 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 156507 | .patterns = &.{ |
| 156508 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156509 | }, |
| 156510 | .extra_temps = .{ |
| 156511 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156512 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 156513 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 156514 | .unused, |
| 156515 | .unused, |
| 156516 | .unused, |
| 156517 | .unused, |
| 156518 | .unused, |
| 156519 | .unused, |
| 156520 | .unused, |
| 156521 | .unused, |
| 156522 | }, |
| 156523 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156524 | .clobbers = .{ .eflags = true }, |
| 156525 | .each = .{ .once = &.{ |
| 156526 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 156527 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 156528 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 156529 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 156530 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 156531 | .{ ._, .v_pd, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 156532 | .{ .@"0:", .v_pd, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 156533 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156534 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156535 | .{ ._, .vh_pd, .add, .dst0x, .dst0x, .dst0x, ._ }, |
| 156536 | } }, |
| 156537 | }, .{ |
| 156538 | .required_features = .{ .avx, null, null, null }, |
| 156539 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156540 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 156541 | .patterns = &.{ |
| 156542 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156543 | }, |
| 156544 | .extra_temps = .{ |
| 156545 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156546 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 156547 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 156548 | .unused, |
| 156549 | .unused, |
| 156550 | .unused, |
| 156551 | .unused, |
| 156552 | .unused, |
| 156553 | .unused, |
| 156554 | .unused, |
| 156555 | .unused, |
| 156556 | }, |
| 156557 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156558 | .clobbers = .{ .eflags = true }, |
| 156559 | .each = .{ .once = &.{ |
| 156560 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 156561 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 156562 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 156563 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 156564 | .{ ._, .v_f128, .extract, .tmp2x, .dst0y, .ui(1), ._ }, |
| 156565 | .{ ._, .v_pd, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 156566 | .{ .@"0:", .v_pd, .add, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 156567 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156568 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156569 | .{ ._, .v_ps, .movhl, .tmp2x, .dst0x, .dst0x, ._ }, |
| 156570 | .{ ._, .v_sd, .add, .dst0x, .dst0x, .tmp2x, ._ }, |
| 156571 | } }, |
| 156572 | }, .{ |
| 156573 | .required_features = .{ .sse3, .fast_hops, null, null }, |
| 156574 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156575 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 156576 | .patterns = &.{ |
| 156577 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156578 | }, |
| 156579 | .extra_temps = .{ |
| 156580 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156581 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 156582 | .unused, |
| 156583 | .unused, |
| 156584 | .unused, |
| 156585 | .unused, |
| 156586 | .unused, |
| 156587 | .unused, |
| 156588 | .unused, |
| 156589 | .unused, |
| 156590 | .unused, |
| 156591 | }, |
| 156592 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156593 | .clobbers = .{ .eflags = true }, |
| 156594 | .each = .{ .once = &.{ |
| 156595 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 156596 | .{ ._, ._pd, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 156597 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 156598 | .{ ._, ._pd, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 156599 | .{ .@"0:", ._pd, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 156600 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156601 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156602 | .{ ._, .h_pd, .add, .dst0x, .dst0x, ._, ._ }, |
| 156603 | } }, |
| 156604 | }, .{ |
| 156605 | .required_features = .{ .sse2, null, null, null }, |
| 156606 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156607 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 156608 | .patterns = &.{ |
| 156609 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156610 | }, |
| 156611 | .extra_temps = .{ |
| 156612 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156613 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 156614 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 156615 | .unused, |
| 156616 | .unused, |
| 156617 | .unused, |
| 156618 | .unused, |
| 156619 | .unused, |
| 156620 | .unused, |
| 156621 | .unused, |
| 156622 | .unused, |
| 156623 | }, |
| 156624 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 156625 | .clobbers = .{ .eflags = true }, |
| 156626 | .each = .{ .once = &.{ |
| 156627 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 156628 | .{ ._, ._pd, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 156629 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 156630 | .{ ._, ._pd, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 156631 | .{ .@"0:", ._pd, .add, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 156632 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156633 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156634 | .{ ._, ._ps, .xor, .tmp2x, .tmp2x, ._, ._ }, |
| 156635 | .{ ._, ._ps, .movhl, .tmp2x, .dst0x, ._, ._ }, |
| 156636 | .{ ._, ._sd, .add, .dst0x, .tmp2x, ._, ._ }, |
| 156637 | } }, |
| 156638 | }, .{ |
| 156639 | .required_features = .{ .x87, null, null, null }, |
| 156640 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 156641 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 156642 | .patterns = &.{ |
| 156643 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156644 | }, |
| 156645 | .extra_temps = .{ |
| 156646 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156647 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 156648 | .unused, |
| 156649 | .unused, |
| 156650 | .unused, |
| 156651 | .unused, |
| 156652 | .unused, |
| 156653 | .unused, |
| 156654 | .unused, |
| 156655 | .unused, |
| 156656 | .unused, |
| 156657 | }, |
| 156658 | .dst_temps = .{ .mem, .unused }, |
| 156659 | .clobbers = .{ .eflags = true }, |
| 156660 | .each = .{ .once = &.{ |
| 156661 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 156662 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| 156663 | .{ .@"0:", .f_, .add, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| 156664 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 156665 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156666 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 156667 | } }, |
| 156668 | }, .{ |
| 156669 | .required_features = .{ .x87, null, null, null }, |
| 156670 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 156671 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 156672 | .patterns = &.{ |
| 156673 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156674 | }, |
| 156675 | .extra_temps = .{ |
| 156676 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156677 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 156678 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 156679 | .unused, |
| 156680 | .unused, |
| 156681 | .unused, |
| 156682 | .unused, |
| 156683 | .unused, |
| 156684 | .unused, |
| 156685 | .unused, |
| 156686 | .unused, |
| 156687 | }, |
| 156688 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 156689 | .clobbers = .{ .eflags = true }, |
| 156690 | .each = .{ .once = &.{ |
| 156691 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 156692 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| 156693 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| 156694 | .{ ._, .f_p, .add, ._, ._, ._, ._ }, |
| 156695 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156696 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156697 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 156698 | } }, |
| 156699 | }, .{ |
| 156700 | .required_features = .{ .avx, null, null, null }, |
| 156701 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 156702 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 156703 | .patterns = &.{ |
| 156704 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156705 | }, |
| 156706 | .call_frame = .{ .alignment = .@"16" }, |
| 156707 | .extra_temps = .{ |
| 156708 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156709 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 156710 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addtf3" } } }, |
| 156711 | .unused, |
| 156712 | .unused, |
| 156713 | .unused, |
| 156714 | .unused, |
| 156715 | .unused, |
| 156716 | .unused, |
| 156717 | .unused, |
| 156718 | .unused, |
| 156719 | }, |
| 156720 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 156721 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 156722 | .each = .{ .once = &.{ |
| 156723 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 156724 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 156725 | .{ .@"0:", .v_dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 156726 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 156727 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156728 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156729 | } }, |
| 156730 | }, .{ |
| 156731 | .required_features = .{ .sse2, null, null, null }, |
| 156732 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 156733 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 156734 | .patterns = &.{ |
| 156735 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156736 | }, |
| 156737 | .call_frame = .{ .alignment = .@"16" }, |
| 156738 | .extra_temps = .{ |
| 156739 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156740 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 156741 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addtf3" } } }, |
| 156742 | .unused, |
| 156743 | .unused, |
| 156744 | .unused, |
| 156745 | .unused, |
| 156746 | .unused, |
| 156747 | .unused, |
| 156748 | .unused, |
| 156749 | .unused, |
| 156750 | }, |
| 156751 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 156752 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 156753 | .each = .{ .once = &.{ |
| 156754 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 156755 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 156756 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 156757 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 156758 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156759 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156760 | } }, |
| 156761 | }, .{ |
| 156762 | .required_features = .{ .sse, null, null, null }, |
| 156763 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 156764 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 156765 | .patterns = &.{ |
| 156766 | .{ .src = .{ .to_mem, .none, .none } }, |
| 156767 | }, |
| 156768 | .call_frame = .{ .alignment = .@"16" }, |
| 156769 | .extra_temps = .{ |
| 156770 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 156771 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 156772 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addtf3" } } }, |
| 156773 | .unused, |
| 156774 | .unused, |
| 156775 | .unused, |
| 156776 | .unused, |
| 156777 | .unused, |
| 156778 | .unused, |
| 156779 | .unused, |
| 156780 | .unused, |
| 156781 | }, |
| 156782 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 156783 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 156784 | .each = .{ .once = &.{ |
| 156785 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 156786 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 156787 | .{ .@"0:", ._ps, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 156788 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 156789 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 156790 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 156791 | } }, |
| 156792 | } }, |
| 156793 | .Mul => comptime &.{ .{ |
| 156794 | .required_features = .{ .f16c, null, null, null }, |
| 156795 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 156796 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .dword, .is = .word } }, .any, .any }, |
| 156797 | .patterns = &.{ |
| 156798 | .{ .src = .{ .mem, .none, .none } }, |
| 156799 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156800 | }, |
| 156801 | .extra_temps = .{ |
| 156802 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 156803 | .unused, |
| 156804 | .unused, |
| 156805 | .unused, |
| 156806 | .unused, |
| 156807 | .unused, |
| 156808 | .unused, |
| 156809 | .unused, |
| 156810 | .unused, |
| 156811 | .unused, |
| 156812 | .unused, |
| 156813 | }, |
| 156814 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 156815 | .each = .{ .once = &.{ |
| 156816 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 156817 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 156818 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 156819 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 156820 | } }, |
| 156821 | }, .{ |
| 156822 | .required_features = .{ .f16c, null, null, null }, |
| 156823 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 156824 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 156825 | .patterns = &.{ |
| 156826 | .{ .src = .{ .mem, .none, .none } }, |
| 156827 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156828 | }, |
| 156829 | .extra_temps = .{ |
| 156830 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 156831 | .unused, |
| 156832 | .unused, |
| 156833 | .unused, |
| 156834 | .unused, |
| 156835 | .unused, |
| 156836 | .unused, |
| 156837 | .unused, |
| 156838 | .unused, |
| 156839 | .unused, |
| 156840 | .unused, |
| 156841 | }, |
| 156842 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 156843 | .each = .{ .once = &.{ |
| 156844 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 156845 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 156846 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 156847 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 156848 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 156849 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 156850 | } }, |
| 156851 | }, .{ |
| 156852 | .required_features = .{ .f16c, null, null, null }, |
| 156853 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 156854 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .word } }, .any, .any }, |
| 156855 | .patterns = &.{ |
| 156856 | .{ .src = .{ .mem, .none, .none } }, |
| 156857 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156858 | }, |
| 156859 | .extra_temps = .{ |
| 156860 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 156861 | .unused, |
| 156862 | .unused, |
| 156863 | .unused, |
| 156864 | .unused, |
| 156865 | .unused, |
| 156866 | .unused, |
| 156867 | .unused, |
| 156868 | .unused, |
| 156869 | .unused, |
| 156870 | .unused, |
| 156871 | }, |
| 156872 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 156873 | .each = .{ .once = &.{ |
| 156874 | .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ }, |
| 156875 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 156876 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 156877 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 156878 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 156879 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 156880 | } }, |
| 156881 | }, .{ |
| 156882 | .required_features = .{ .f16c, null, null, null }, |
| 156883 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 156884 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 156885 | .patterns = &.{ |
| 156886 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156887 | }, |
| 156888 | .extra_temps = .{ |
| 156889 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 156890 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 156891 | .{ .type = .vector_8_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 156892 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 156893 | .unused, |
| 156894 | .unused, |
| 156895 | .unused, |
| 156896 | .unused, |
| 156897 | .unused, |
| 156898 | .unused, |
| 156899 | .unused, |
| 156900 | }, |
| 156901 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 156902 | .each = .{ .once = &.{ |
| 156903 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 156904 | .{ ._, .v_ps, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 156905 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 156906 | .{ ._, .v_ps, .@"or", .dst0x, .src0x, .lea(.tmp0x), ._ }, |
| 156907 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 156908 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 156909 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 156910 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 156911 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 156912 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 156913 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 156914 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 156915 | } }, |
| 156916 | }, .{ |
| 156917 | .required_features = .{ .f16c, null, null, null }, |
| 156918 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 156919 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 156920 | .patterns = &.{ |
| 156921 | .{ .src = .{ .mem, .none, .none } }, |
| 156922 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156923 | }, |
| 156924 | .extra_temps = .{ |
| 156925 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 156926 | .unused, |
| 156927 | .unused, |
| 156928 | .unused, |
| 156929 | .unused, |
| 156930 | .unused, |
| 156931 | .unused, |
| 156932 | .unused, |
| 156933 | .unused, |
| 156934 | .unused, |
| 156935 | .unused, |
| 156936 | }, |
| 156937 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 156938 | .each = .{ .once = &.{ |
| 156939 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| 156940 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 156941 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 156942 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 156943 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 156944 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 156945 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 156946 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 156947 | } }, |
| 156948 | }, .{ |
| 156949 | .required_features = .{ .f16c, null, null, null }, |
| 156950 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 156951 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 156952 | .patterns = &.{ |
| 156953 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156954 | }, |
| 156955 | .extra_temps = .{ |
| 156956 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 156957 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 156958 | .{ .type = .vector_16_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 156959 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 156960 | .unused, |
| 156961 | .unused, |
| 156962 | .unused, |
| 156963 | .unused, |
| 156964 | .unused, |
| 156965 | .unused, |
| 156966 | .unused, |
| 156967 | }, |
| 156968 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 156969 | .each = .{ .once = &.{ |
| 156970 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 156971 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 156972 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 156973 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 156974 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 156975 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 156976 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 156977 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp3y, ._ }, |
| 156978 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 156979 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 156980 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 156981 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 156982 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 156983 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 156984 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 156985 | } }, |
| 156986 | }, .{ |
| 156987 | .required_features = .{ .f16c, null, null, null }, |
| 156988 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 156989 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 156990 | .patterns = &.{ |
| 156991 | .{ .src = .{ .to_sse, .none, .none } }, |
| 156992 | }, |
| 156993 | .extra_temps = .{ |
| 156994 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 156995 | .unused, |
| 156996 | .unused, |
| 156997 | .unused, |
| 156998 | .unused, |
| 156999 | .unused, |
| 157000 | .unused, |
| 157001 | .unused, |
| 157002 | .unused, |
| 157003 | .unused, |
| 157004 | .unused, |
| 157005 | }, |
| 157006 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 157007 | .each = .{ .once = &.{ |
| 157008 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 157009 | .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ }, |
| 157010 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| 157011 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp0y, ._ }, |
| 157012 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 157013 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157014 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 157015 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157016 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 157017 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157018 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 157019 | } }, |
| 157020 | }, .{ |
| 157021 | .required_features = .{ .avx512f, null, null, null }, |
| 157022 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 157023 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 157024 | .patterns = &.{ |
| 157025 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157026 | }, |
| 157027 | .extra_temps = .{ |
| 157028 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 157029 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 157030 | .{ .type = .vector_32_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 157031 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 157032 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 157033 | .unused, |
| 157034 | .unused, |
| 157035 | .unused, |
| 157036 | .unused, |
| 157037 | .unused, |
| 157038 | .unused, |
| 157039 | }, |
| 157040 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157041 | .each = .{ .once = &.{ |
| 157042 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 157043 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 157044 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 157045 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 157046 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 157047 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 157048 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 157049 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 157050 | .{ ._, .v_f128, .extract, .tmp4x, .tmp3y, .ui(1), ._ }, |
| 157051 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 157052 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 157053 | .{ ._, .v_ps, .mul, .tmp3y, .tmp3y, .tmp4y, ._ }, |
| 157054 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 157055 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 157056 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 157057 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp4y, ._ }, |
| 157058 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp3y, ._ }, |
| 157059 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 157060 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157061 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 157062 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157063 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 157064 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157065 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 157066 | } }, |
| 157067 | }, .{ |
| 157068 | .required_features = .{ .avx512f, null, null, null }, |
| 157069 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 157070 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 157071 | .patterns = &.{ |
| 157072 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157073 | }, |
| 157074 | .extra_temps = .{ |
| 157075 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 157076 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 157077 | .unused, |
| 157078 | .unused, |
| 157079 | .unused, |
| 157080 | .unused, |
| 157081 | .unused, |
| 157082 | .unused, |
| 157083 | .unused, |
| 157084 | .unused, |
| 157085 | .unused, |
| 157086 | }, |
| 157087 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157088 | .each = .{ .once = &.{ |
| 157089 | .{ ._, .v_ps, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 157090 | .{ ._, .v_ps, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 157091 | .{ ._, .v_f128, .extract, .tmp1x, .tmp0y, .ui(1), ._ }, |
| 157092 | .{ ._, .v_ps, .cvtph2, .tmp0y, .tmp0x, ._, ._ }, |
| 157093 | .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ }, |
| 157094 | .{ ._, .v_ps, .mul, .tmp0y, .tmp0y, .tmp1y, ._ }, |
| 157095 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 157096 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 157097 | .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ }, |
| 157098 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp1y, ._ }, |
| 157099 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp0y, ._ }, |
| 157100 | .{ ._, .v_f128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 157101 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157102 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 157103 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157104 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 157105 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157106 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 157107 | } }, |
| 157108 | }, .{ |
| 157109 | .required_features = .{ .f16c, null, null, null }, |
| 157110 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 157111 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any }, |
| 157112 | .patterns = &.{ |
| 157113 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157114 | }, |
| 157115 | .extra_temps = .{ |
| 157116 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 157117 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 157118 | .unused, |
| 157119 | .unused, |
| 157120 | .unused, |
| 157121 | .unused, |
| 157122 | .unused, |
| 157123 | .unused, |
| 157124 | .unused, |
| 157125 | .unused, |
| 157126 | .unused, |
| 157127 | }, |
| 157128 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157129 | .clobbers = .{ .eflags = true }, |
| 157130 | .each = .{ .once = &.{ |
| 157131 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 157132 | .{ ._, .v_ps, .cvtph2, .dst0y, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 157133 | .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| 157134 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp1y, ._ }, |
| 157135 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 157136 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 157137 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 157138 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 157139 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 157140 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 157141 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 157142 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 157143 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 157144 | } }, |
| 157145 | }, .{ |
| 157146 | .required_features = .{ .avx512f, null, null, null }, |
| 157147 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 157148 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .word } }, .any, .any }, |
| 157149 | .patterns = &.{ |
| 157150 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157151 | }, |
| 157152 | .extra_temps = .{ |
| 157153 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 157154 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 157155 | .{ .type = .vector_32_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 157156 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 157157 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 157158 | .unused, |
| 157159 | .unused, |
| 157160 | .unused, |
| 157161 | .unused, |
| 157162 | .unused, |
| 157163 | .unused, |
| 157164 | }, |
| 157165 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157166 | .clobbers = .{ .eflags = true }, |
| 157167 | .each = .{ .once = &.{ |
| 157168 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 157169 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 157170 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 157171 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 157172 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 157173 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 157174 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 157175 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 157176 | .{ ._, ._, .mov, .tmp0d, .sia(-80, .src0, .add_size), ._, ._ }, |
| 157177 | .{ ._, .v_f128, .extract, .tmp4x, .tmp3y, .ui(1), ._ }, |
| 157178 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 157179 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 157180 | .{ ._, .v_ps, .mul, .tmp3y, .tmp3y, .tmp4y, ._ }, |
| 157181 | .{ ._, .v_f128, .extract, .tmp4x, .dst0y, .ui(1), ._ }, |
| 157182 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 157183 | .{ ._, .v_ps, .cvtph2, .tmp4y, .tmp4x, ._, ._ }, |
| 157184 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp4y, ._ }, |
| 157185 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp3y, ._ }, |
| 157186 | .{ .@"0:", .v_ps, .cvtph2, .tmp3y, .memi(.src0x, .tmp0), ._, ._ }, |
| 157187 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp3y, ._ }, |
| 157188 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 157189 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 157190 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 157191 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157192 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 157193 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157194 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 157195 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157196 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 157197 | } }, |
| 157198 | }, .{ |
| 157199 | .required_features = .{ .f16c, null, null, null }, |
| 157200 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 157201 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .word } }, .any, .any }, |
| 157202 | .patterns = &.{ |
| 157203 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157204 | }, |
| 157205 | .extra_temps = .{ |
| 157206 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 157207 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 157208 | .{ .type = .vector_16_f16, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 157209 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 157210 | .unused, |
| 157211 | .unused, |
| 157212 | .unused, |
| 157213 | .unused, |
| 157214 | .unused, |
| 157215 | .unused, |
| 157216 | .unused, |
| 157217 | }, |
| 157218 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157219 | .clobbers = .{ .eflags = true }, |
| 157220 | .each = .{ .once = &.{ |
| 157221 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 157222 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 157223 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 157224 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 157225 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 157226 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 157227 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 157228 | .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ }, |
| 157229 | .{ ._, .v_ps, .cvtph2, .tmp3y, .tmp3x, ._, ._ }, |
| 157230 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp3y, ._ }, |
| 157231 | .{ .@"0:", .v_ps, .cvtph2, .tmp3y, .memi(.src0x, .tmp0), ._, ._ }, |
| 157232 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp3y, ._ }, |
| 157233 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 157234 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 157235 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 157236 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157237 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b11_10) }, |
| 157238 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157239 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 157240 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157241 | .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ }, |
| 157242 | } }, |
| 157243 | }, .{ |
| 157244 | .required_features = .{ .avx, null, null, null }, |
| 157245 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 157246 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 157247 | .patterns = &.{ |
| 157248 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157249 | }, |
| 157250 | .call_frame = .{ .alignment = .@"16" }, |
| 157251 | .extra_temps = .{ |
| 157252 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 157253 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 157254 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__mulhf3" } } }, |
| 157255 | .unused, |
| 157256 | .unused, |
| 157257 | .unused, |
| 157258 | .unused, |
| 157259 | .unused, |
| 157260 | .unused, |
| 157261 | .unused, |
| 157262 | .unused, |
| 157263 | }, |
| 157264 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 157265 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 157266 | .each = .{ .once = &.{ |
| 157267 | .{ ._, .vp_, .xor, .dst0x, .dst0x, .dst0x, ._ }, |
| 157268 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 157269 | .{ ._, .vp_w, .insr, .dst0x, .dst0x, .memad(.src0w, .add_unaligned_size, -2), .ui(0) }, |
| 157270 | .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| 157271 | .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memi(.src0w, .tmp0), .ui(0) }, |
| 157272 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 157273 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 157274 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 157275 | } }, |
| 157276 | }, .{ |
| 157277 | .required_features = .{ .sse2, null, null, null }, |
| 157278 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 157279 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 157280 | .patterns = &.{ |
| 157281 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157282 | }, |
| 157283 | .call_frame = .{ .alignment = .@"16" }, |
| 157284 | .extra_temps = .{ |
| 157285 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 157286 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 157287 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__mulhf3" } } }, |
| 157288 | .unused, |
| 157289 | .unused, |
| 157290 | .unused, |
| 157291 | .unused, |
| 157292 | .unused, |
| 157293 | .unused, |
| 157294 | .unused, |
| 157295 | .unused, |
| 157296 | }, |
| 157297 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 157298 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 157299 | .each = .{ .once = &.{ |
| 157300 | .{ ._, .p_, .xor, .dst0x, .dst0x, ._, ._ }, |
| 157301 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 157302 | .{ ._, .p_w, .insr, .dst0x, .memad(.src0w, .add_unaligned_size, -2), .ui(0), ._ }, |
| 157303 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 157304 | .{ ._, .p_w, .insr, .tmp1x, .memi(.src0w, .tmp0), .ui(0), ._ }, |
| 157305 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 157306 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 157307 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 157308 | } }, |
| 157309 | }, .{ |
| 157310 | .required_features = .{ .sse, null, null, null }, |
| 157311 | .dst_constraints = .{ .{ .float = .word }, .any }, |
| 157312 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any }, |
| 157313 | .patterns = &.{ |
| 157314 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157315 | }, |
| 157316 | .call_frame = .{ .alignment = .@"16" }, |
| 157317 | .extra_temps = .{ |
| 157318 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 157319 | .{ .type = .f16, .kind = .{ .reg = .ax } }, |
| 157320 | .{ .type = .f32, .kind = .mem }, |
| 157321 | .{ .type = .f16, .kind = .{ .reg = .xmm1 } }, |
| 157322 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__mulhf3" } } }, |
| 157323 | .unused, |
| 157324 | .unused, |
| 157325 | .unused, |
| 157326 | .unused, |
| 157327 | .unused, |
| 157328 | .unused, |
| 157329 | }, |
| 157330 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 157331 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 157332 | .each = .{ .once = &.{ |
| 157333 | .{ ._, ._ps, .xor, .dst0x, .dst0x, ._, ._ }, |
| 157334 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size), ._, ._ }, |
| 157335 | .{ ._, ._, .movzx, .tmp1d, .memad(.src0w, .add_unaligned_size, -2), ._, ._ }, |
| 157336 | .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ }, |
| 157337 | .{ ._, ._ss, .mov, .dst0x, .mem(.tmp2d), ._, ._ }, |
| 157338 | .{ .@"0:", ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 157339 | .{ ._, ._ss, .mov, .tmp3x, .memi(.src0d, .tmp0), ._, ._ }, |
| 157340 | .{ ._, ._, .call, .tmp4d, ._, ._, ._ }, |
| 157341 | .{ ._, ._, .sub, .tmp0d, .si(2), ._, ._ }, |
| 157342 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 157343 | } }, |
| 157344 | }, .{ |
| 157345 | .required_features = .{ .avx, null, null, null }, |
| 157346 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157347 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 157348 | .patterns = &.{ |
| 157349 | .{ .src = .{ .to_sse, .none, .none } }, |
| 157350 | }, |
| 157351 | .extra_temps = .{ |
| 157352 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157353 | .unused, |
| 157354 | .unused, |
| 157355 | .unused, |
| 157356 | .unused, |
| 157357 | .unused, |
| 157358 | .unused, |
| 157359 | .unused, |
| 157360 | .unused, |
| 157361 | .unused, |
| 157362 | .unused, |
| 157363 | }, |
| 157364 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 157365 | .each = .{ .once = &.{ |
| 157366 | .{ ._, .v_ps, .shuf, .tmp0x, .src0x, .src0x, .ui(0b01) }, |
| 157367 | .{ ._, .v_ss, .mul, .dst0x, .src0x, .tmp0x, ._ }, |
| 157368 | } }, |
| 157369 | }, .{ |
| 157370 | .required_features = .{ .sse, null, null, null }, |
| 157371 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157372 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any }, |
| 157373 | .patterns = &.{ |
| 157374 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 157375 | }, |
| 157376 | .extra_temps = .{ |
| 157377 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157378 | .unused, |
| 157379 | .unused, |
| 157380 | .unused, |
| 157381 | .unused, |
| 157382 | .unused, |
| 157383 | .unused, |
| 157384 | .unused, |
| 157385 | .unused, |
| 157386 | .unused, |
| 157387 | .unused, |
| 157388 | }, |
| 157389 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 157390 | .each = .{ .once = &.{ |
| 157391 | .{ ._, ._ps, .mova, .tmp0x, .src0x, ._, ._ }, |
| 157392 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 157393 | .{ ._, ._ss, .mul, .dst0x, .tmp0x, ._, ._ }, |
| 157394 | } }, |
| 157395 | }, .{ |
| 157396 | .required_features = .{ .avx, null, null, null }, |
| 157397 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157398 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 157399 | .patterns = &.{ |
| 157400 | .{ .src = .{ .to_sse, .none, .none } }, |
| 157401 | }, |
| 157402 | .extra_temps = .{ |
| 157403 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157404 | .unused, |
| 157405 | .unused, |
| 157406 | .unused, |
| 157407 | .unused, |
| 157408 | .unused, |
| 157409 | .unused, |
| 157410 | .unused, |
| 157411 | .unused, |
| 157412 | .unused, |
| 157413 | .unused, |
| 157414 | }, |
| 157415 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 157416 | .each = .{ .once = &.{ |
| 157417 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 157418 | .{ ._, .v_ss, .mul, .tmp0x, .src0x, .tmp0x, ._ }, |
| 157419 | .{ ._, .v_ps, .shuf, .dst0x, .src0x, .src0x, .ui(0b01) }, |
| 157420 | .{ ._, .v_ss, .mul, .dst0x, .tmp0x, .dst0x, ._ }, |
| 157421 | } }, |
| 157422 | }, .{ |
| 157423 | .required_features = .{ .sse, null, null, null }, |
| 157424 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157425 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 157426 | .patterns = &.{ |
| 157427 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 157428 | }, |
| 157429 | .extra_temps = .{ |
| 157430 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157431 | .unused, |
| 157432 | .unused, |
| 157433 | .unused, |
| 157434 | .unused, |
| 157435 | .unused, |
| 157436 | .unused, |
| 157437 | .unused, |
| 157438 | .unused, |
| 157439 | .unused, |
| 157440 | .unused, |
| 157441 | }, |
| 157442 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 157443 | .each = .{ .once = &.{ |
| 157444 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 157445 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 157446 | .{ ._, ._ss, .mul, .tmp0x, .src0x, ._, ._ }, |
| 157447 | .{ ._, ._ps, .shuf, .dst0x, .src0x, .ui(0b01), ._ }, |
| 157448 | .{ ._, ._ss, .mul, .dst0x, .tmp0x, ._, ._ }, |
| 157449 | } }, |
| 157450 | }, .{ |
| 157451 | .required_features = .{ .avx, null, null, null }, |
| 157452 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157453 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 157454 | .patterns = &.{ |
| 157455 | .{ .src = .{ .to_sse, .none, .none } }, |
| 157456 | }, |
| 157457 | .extra_temps = .{ |
| 157458 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157459 | .unused, |
| 157460 | .unused, |
| 157461 | .unused, |
| 157462 | .unused, |
| 157463 | .unused, |
| 157464 | .unused, |
| 157465 | .unused, |
| 157466 | .unused, |
| 157467 | .unused, |
| 157468 | .unused, |
| 157469 | }, |
| 157470 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 157471 | .each = .{ .once = &.{ |
| 157472 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 157473 | .{ ._, .v_ps, .mul, .dst0x, .src0x, .tmp0x, ._ }, |
| 157474 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 157475 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157476 | } }, |
| 157477 | }, .{ |
| 157478 | .required_features = .{ .sse, null, null, null }, |
| 157479 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157480 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 157481 | .patterns = &.{ |
| 157482 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 157483 | }, |
| 157484 | .extra_temps = .{ |
| 157485 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157486 | .unused, |
| 157487 | .unused, |
| 157488 | .unused, |
| 157489 | .unused, |
| 157490 | .unused, |
| 157491 | .unused, |
| 157492 | .unused, |
| 157493 | .unused, |
| 157494 | .unused, |
| 157495 | .unused, |
| 157496 | }, |
| 157497 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 157498 | .each = .{ .once = &.{ |
| 157499 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 157500 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 157501 | .{ ._, ._ps, .mul, .dst0x, .tmp0x, ._, ._ }, |
| 157502 | .{ ._, ._ps, .mova, .tmp0x, .dst0x, ._, ._ }, |
| 157503 | .{ ._, ._ps, .shuf, .tmp0x, .tmp0x, .ui(0b01), ._ }, |
| 157504 | .{ ._, ._ss, .mul, .dst0x, .tmp0x, ._, ._ }, |
| 157505 | } }, |
| 157506 | }, .{ |
| 157507 | .required_features = .{ .avx, null, null, null }, |
| 157508 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157509 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 157510 | .patterns = &.{ |
| 157511 | .{ .src = .{ .to_sse, .none, .none } }, |
| 157512 | }, |
| 157513 | .extra_temps = .{ |
| 157514 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 157515 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 157516 | .{ .type = .vector_8_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 157517 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157518 | .unused, |
| 157519 | .unused, |
| 157520 | .unused, |
| 157521 | .unused, |
| 157522 | .unused, |
| 157523 | .unused, |
| 157524 | .unused, |
| 157525 | }, |
| 157526 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 157527 | .each = .{ .once = &.{ |
| 157528 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 157529 | .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ }, |
| 157530 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 157531 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 157532 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 157533 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157534 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 157535 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157536 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 157537 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157538 | } }, |
| 157539 | }, .{ |
| 157540 | .required_features = .{ .avx, null, null, null }, |
| 157541 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157542 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 157543 | .patterns = &.{ |
| 157544 | .{ .src = .{ .to_sse, .none, .none } }, |
| 157545 | }, |
| 157546 | .extra_temps = .{ |
| 157547 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157548 | .unused, |
| 157549 | .unused, |
| 157550 | .unused, |
| 157551 | .unused, |
| 157552 | .unused, |
| 157553 | .unused, |
| 157554 | .unused, |
| 157555 | .unused, |
| 157556 | .unused, |
| 157557 | .unused, |
| 157558 | }, |
| 157559 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 157560 | .each = .{ .once = &.{ |
| 157561 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 157562 | .{ ._, .v_ps, .mul, .dst0x, .src0x, .tmp0x, ._ }, |
| 157563 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 157564 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157565 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 157566 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157567 | } }, |
| 157568 | }, .{ |
| 157569 | .required_features = .{ .avx512f, null, null, null }, |
| 157570 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157571 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 157572 | .patterns = &.{ |
| 157573 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157574 | }, |
| 157575 | .extra_temps = .{ |
| 157576 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 157577 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 157578 | .{ .type = .vector_16_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 157579 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 157580 | .unused, |
| 157581 | .unused, |
| 157582 | .unused, |
| 157583 | .unused, |
| 157584 | .unused, |
| 157585 | .unused, |
| 157586 | .unused, |
| 157587 | }, |
| 157588 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157589 | .each = .{ .once = &.{ |
| 157590 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 157591 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 157592 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 157593 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 157594 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 157595 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 157596 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 157597 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 157598 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp3y, ._ }, |
| 157599 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 157600 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157601 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 157602 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157603 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 157604 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157605 | } }, |
| 157606 | }, .{ |
| 157607 | .required_features = .{ .avx512f, null, null, null }, |
| 157608 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157609 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 157610 | .patterns = &.{ |
| 157611 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157612 | }, |
| 157613 | .extra_temps = .{ |
| 157614 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157615 | .unused, |
| 157616 | .unused, |
| 157617 | .unused, |
| 157618 | .unused, |
| 157619 | .unused, |
| 157620 | .unused, |
| 157621 | .unused, |
| 157622 | .unused, |
| 157623 | .unused, |
| 157624 | .unused, |
| 157625 | }, |
| 157626 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157627 | .each = .{ .once = &.{ |
| 157628 | .{ ._, .v_ps, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 157629 | .{ ._, .v_ps, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 157630 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp0y, ._ }, |
| 157631 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 157632 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157633 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 157634 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157635 | .{ ._, .v_ps, .shuf, .tmp0x, .dst0x, .dst0x, .ui(0b01) }, |
| 157636 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157637 | } }, |
| 157638 | }, .{ |
| 157639 | .required_features = .{ .avx, null, null, null }, |
| 157640 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157641 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 157642 | .patterns = &.{ |
| 157643 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157644 | }, |
| 157645 | .extra_temps = .{ |
| 157646 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 157647 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157648 | .unused, |
| 157649 | .unused, |
| 157650 | .unused, |
| 157651 | .unused, |
| 157652 | .unused, |
| 157653 | .unused, |
| 157654 | .unused, |
| 157655 | .unused, |
| 157656 | .unused, |
| 157657 | }, |
| 157658 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157659 | .clobbers = .{ .eflags = true }, |
| 157660 | .each = .{ .once = &.{ |
| 157661 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 157662 | .{ ._, .v_ps, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 157663 | .{ .@"0:", .v_ps, .mul, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 157664 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 157665 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 157666 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 157667 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 157668 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 157669 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 157670 | .{ ._, .v_ps, .shuf, .tmp1x, .dst0x, .dst0x, .ui(0b01) }, |
| 157671 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 157672 | } }, |
| 157673 | }, .{ |
| 157674 | .required_features = .{ .sse, null, null, null }, |
| 157675 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157676 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 157677 | .patterns = &.{ |
| 157678 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157679 | }, |
| 157680 | .extra_temps = .{ |
| 157681 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 157682 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157683 | .unused, |
| 157684 | .unused, |
| 157685 | .unused, |
| 157686 | .unused, |
| 157687 | .unused, |
| 157688 | .unused, |
| 157689 | .unused, |
| 157690 | .unused, |
| 157691 | .unused, |
| 157692 | }, |
| 157693 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157694 | .clobbers = .{ .eflags = true }, |
| 157695 | .each = .{ .once = &.{ |
| 157696 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 157697 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 157698 | .{ .@"0:", ._ps, .mul, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 157699 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 157700 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 157701 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 157702 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| 157703 | .{ ._, ._ps, .mul, .dst0x, .tmp1x, ._, ._ }, |
| 157704 | .{ ._, ._ps, .mova, .tmp1x, .dst0x, ._, ._ }, |
| 157705 | .{ ._, ._ps, .shuf, .tmp1x, .tmp1x, .ui(0b01), ._ }, |
| 157706 | .{ ._, ._ss, .mul, .dst0x, .tmp1x, ._, ._ }, |
| 157707 | } }, |
| 157708 | }, .{ |
| 157709 | .required_features = .{ .avx512f, null, null, null }, |
| 157710 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157711 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .dword } }, .any, .any }, |
| 157712 | .patterns = &.{ |
| 157713 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157714 | }, |
| 157715 | .extra_temps = .{ |
| 157716 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 157717 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 157718 | .{ .type = .vector_16_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 157719 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 157720 | .unused, |
| 157721 | .unused, |
| 157722 | .unused, |
| 157723 | .unused, |
| 157724 | .unused, |
| 157725 | .unused, |
| 157726 | .unused, |
| 157727 | }, |
| 157728 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157729 | .clobbers = .{ .eflags = true }, |
| 157730 | .each = .{ .once = &.{ |
| 157731 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 157732 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 157733 | .{ ._, .v_ps, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 157734 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 157735 | .{ ._, .v_ps, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 157736 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 157737 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 157738 | .{ ._, .v_ps, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 157739 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 157740 | .{ .@"0:", .v_ps, .mul, .tmp3y, .tmp3y, .memid(.src0y, .tmp0, 32), ._ }, |
| 157741 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 157742 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 157743 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 157744 | .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp3y, ._ }, |
| 157745 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 157746 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157747 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 157748 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157749 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 157750 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157751 | } }, |
| 157752 | }, .{ |
| 157753 | .required_features = .{ .avx, null, null, null }, |
| 157754 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157755 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any }, |
| 157756 | .patterns = &.{ |
| 157757 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157758 | }, |
| 157759 | .extra_temps = .{ |
| 157760 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 157761 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 157762 | .{ .type = .vector_8_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 157763 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157764 | .unused, |
| 157765 | .unused, |
| 157766 | .unused, |
| 157767 | .unused, |
| 157768 | .unused, |
| 157769 | .unused, |
| 157770 | .unused, |
| 157771 | }, |
| 157772 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157773 | .clobbers = .{ .eflags = true }, |
| 157774 | .each = .{ .once = &.{ |
| 157775 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 157776 | .{ ._, .v_ps, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 157777 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 157778 | .{ ._, .v_ps, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 157779 | .{ ._, .v_ps, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 157780 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 157781 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 157782 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157783 | .{ .@"0:", .v_ps, .mul, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 157784 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 157785 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 157786 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 157787 | .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157788 | .{ ._, .v_ps, .shuf, .tmp3x, .dst0x, .dst0x, .ui(0b01) }, |
| 157789 | .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157790 | } }, |
| 157791 | }, .{ |
| 157792 | .required_features = .{ .sse, null, null, null }, |
| 157793 | .dst_constraints = .{ .{ .float = .dword }, .any }, |
| 157794 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any }, |
| 157795 | .patterns = &.{ |
| 157796 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157797 | }, |
| 157798 | .extra_temps = .{ |
| 157799 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 157800 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 157801 | .{ .type = .vector_4_f32, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 157802 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157803 | .unused, |
| 157804 | .unused, |
| 157805 | .unused, |
| 157806 | .unused, |
| 157807 | .unused, |
| 157808 | .unused, |
| 157809 | .unused, |
| 157810 | }, |
| 157811 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157812 | .clobbers = .{ .eflags = true }, |
| 157813 | .each = .{ .once = &.{ |
| 157814 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 157815 | .{ ._, ._ps, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 157816 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 157817 | .{ ._, ._ps, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 157818 | .{ ._, ._ps, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 157819 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 157820 | .{ .@"0:", ._ps, .mul, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 157821 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 157822 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 157823 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 157824 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| 157825 | .{ ._, ._ps, .mul, .dst0x, .tmp3x, ._, ._ }, |
| 157826 | .{ ._, ._ps, .mova, .tmp3x, .dst0x, ._, ._ }, |
| 157827 | .{ ._, ._ps, .shuf, .tmp3x, .tmp3x, .ui(0b01), ._ }, |
| 157828 | .{ ._, ._ss, .mul, .dst0x, .tmp3x, ._, ._ }, |
| 157829 | } }, |
| 157830 | }, .{ |
| 157831 | .required_features = .{ .avx, null, null, null }, |
| 157832 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 157833 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 157834 | .patterns = &.{ |
| 157835 | .{ .src = .{ .to_sse, .none, .none } }, |
| 157836 | }, |
| 157837 | .extra_temps = .{ |
| 157838 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 157839 | .unused, |
| 157840 | .unused, |
| 157841 | .unused, |
| 157842 | .unused, |
| 157843 | .unused, |
| 157844 | .unused, |
| 157845 | .unused, |
| 157846 | .unused, |
| 157847 | .unused, |
| 157848 | .unused, |
| 157849 | }, |
| 157850 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 157851 | .each = .{ .once = &.{ |
| 157852 | .{ ._, .v_ps, .movhl, .tmp0x, .src0x, .src0x, ._ }, |
| 157853 | .{ ._, .v_sd, .mul, .dst0x, .src0x, .tmp0x, ._ }, |
| 157854 | } }, |
| 157855 | }, .{ |
| 157856 | .required_features = .{ .sse2, null, null, null }, |
| 157857 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 157858 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 157859 | .patterns = &.{ |
| 157860 | .{ .src = .{ .to_mut_sse, .none, .none } }, |
| 157861 | }, |
| 157862 | .extra_temps = .{ |
| 157863 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 157864 | .unused, |
| 157865 | .unused, |
| 157866 | .unused, |
| 157867 | .unused, |
| 157868 | .unused, |
| 157869 | .unused, |
| 157870 | .unused, |
| 157871 | .unused, |
| 157872 | .unused, |
| 157873 | .unused, |
| 157874 | }, |
| 157875 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 157876 | .each = .{ .once = &.{ |
| 157877 | .{ ._, ._ps, .xor, .tmp0x, .tmp0x, ._, ._ }, |
| 157878 | .{ ._, ._ps, .movhl, .tmp0x, .src0x, ._, ._ }, |
| 157879 | .{ ._, ._sd, .mul, .dst0x, .tmp0x, ._, ._ }, |
| 157880 | } }, |
| 157881 | }, .{ |
| 157882 | .required_features = .{ .avx, null, null, null }, |
| 157883 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 157884 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 157885 | .patterns = &.{ |
| 157886 | .{ .src = .{ .to_sse, .none, .none } }, |
| 157887 | }, |
| 157888 | .extra_temps = .{ |
| 157889 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 157890 | .unused, |
| 157891 | .unused, |
| 157892 | .unused, |
| 157893 | .unused, |
| 157894 | .unused, |
| 157895 | .unused, |
| 157896 | .unused, |
| 157897 | .unused, |
| 157898 | .unused, |
| 157899 | .unused, |
| 157900 | }, |
| 157901 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 157902 | .each = .{ .once = &.{ |
| 157903 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 157904 | .{ ._, .v_sd, .mul, .tmp0x, .src0x, .tmp0x, ._ }, |
| 157905 | .{ ._, .v_ps, .movhl, .dst0x, .src0x, .src0x, ._ }, |
| 157906 | .{ ._, .v_sd, .mul, .dst0x, .tmp0x, .dst0x, ._ }, |
| 157907 | } }, |
| 157908 | }, .{ |
| 157909 | .required_features = .{ .avx, null, null, null }, |
| 157910 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 157911 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 157912 | .patterns = &.{ |
| 157913 | .{ .src = .{ .to_sse, .none, .none } }, |
| 157914 | }, |
| 157915 | .extra_temps = .{ |
| 157916 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 157917 | .unused, |
| 157918 | .unused, |
| 157919 | .unused, |
| 157920 | .unused, |
| 157921 | .unused, |
| 157922 | .unused, |
| 157923 | .unused, |
| 157924 | .unused, |
| 157925 | .unused, |
| 157926 | .unused, |
| 157927 | }, |
| 157928 | .dst_temps = .{ .{ .mut_rc = .{ .ref = .src0, .rc = .sse } }, .unused }, |
| 157929 | .each = .{ .once = &.{ |
| 157930 | .{ ._, .v_f128, .extract, .tmp0x, .src0y, .ui(1), ._ }, |
| 157931 | .{ ._, .v_pd, .mul, .dst0x, .src0x, .tmp0x, ._ }, |
| 157932 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 157933 | .{ ._, .v_sd, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157934 | } }, |
| 157935 | }, .{ |
| 157936 | .required_features = .{ .avx512f, null, null, null }, |
| 157937 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 157938 | .src_constraints = .{ .{ .exclusive_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 157939 | .patterns = &.{ |
| 157940 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157941 | }, |
| 157942 | .extra_temps = .{ |
| 157943 | .{ .type = .usize, .kind = .{ .rc = .general_purpose } }, |
| 157944 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 157945 | .{ .type = .vector_8_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 157946 | .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } }, |
| 157947 | .unused, |
| 157948 | .unused, |
| 157949 | .unused, |
| 157950 | .unused, |
| 157951 | .unused, |
| 157952 | .unused, |
| 157953 | .unused, |
| 157954 | }, |
| 157955 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157956 | .each = .{ .once = &.{ |
| 157957 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 157958 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 157959 | .{ ._, .v_pd, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 157960 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 157961 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .mem(.src0y), ._ }, |
| 157962 | .{ ._, .v_pd, .@"and", .tmp3y, .tmp3y, .memd(.src0y, 32), ._ }, |
| 157963 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 157964 | .{ ._, .v_pd, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 157965 | .{ ._, .v_pd, .mul, .dst0y, .dst0y, .tmp3y, ._ }, |
| 157966 | .{ ._, .v_i128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 157967 | .{ ._, .v_pd, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157968 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 157969 | .{ ._, .v_sd, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 157970 | } }, |
| 157971 | }, .{ |
| 157972 | .required_features = .{ .avx512f, null, null, null }, |
| 157973 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 157974 | .src_constraints = .{ .{ .exact_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 157975 | .patterns = &.{ |
| 157976 | .{ .src = .{ .to_mem, .none, .none } }, |
| 157977 | }, |
| 157978 | .extra_temps = .{ |
| 157979 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 157980 | .unused, |
| 157981 | .unused, |
| 157982 | .unused, |
| 157983 | .unused, |
| 157984 | .unused, |
| 157985 | .unused, |
| 157986 | .unused, |
| 157987 | .unused, |
| 157988 | .unused, |
| 157989 | .unused, |
| 157990 | }, |
| 157991 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 157992 | .each = .{ .once = &.{ |
| 157993 | .{ ._, .v_pd, .mova, .dst0y, .mem(.src0y), ._, ._ }, |
| 157994 | .{ ._, .v_pd, .mova, .tmp0y, .memd(.src0y, 32), ._, ._ }, |
| 157995 | .{ ._, .v_pd, .mul, .dst0y, .dst0y, .tmp0y, ._ }, |
| 157996 | .{ ._, .v_i128, .extract, .tmp0x, .dst0y, .ui(1), ._ }, |
| 157997 | .{ ._, .v_pd, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 157998 | .{ ._, .v_ps, .movhl, .tmp0x, .dst0x, .dst0x, ._ }, |
| 157999 | .{ ._, .v_sd, .mul, .dst0x, .dst0x, .tmp0x, ._ }, |
| 158000 | } }, |
| 158001 | }, .{ |
| 158002 | .required_features = .{ .avx, null, null, null }, |
| 158003 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 158004 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 158005 | .patterns = &.{ |
| 158006 | .{ .src = .{ .to_mem, .none, .none } }, |
| 158007 | }, |
| 158008 | .extra_temps = .{ |
| 158009 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 158010 | .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } }, |
| 158011 | .unused, |
| 158012 | .unused, |
| 158013 | .unused, |
| 158014 | .unused, |
| 158015 | .unused, |
| 158016 | .unused, |
| 158017 | .unused, |
| 158018 | .unused, |
| 158019 | .unused, |
| 158020 | }, |
| 158021 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 158022 | .clobbers = .{ .eflags = true }, |
| 158023 | .each = .{ .once = &.{ |
| 158024 | .{ ._, ._, .mov, .tmp0d, .sia(-64, .src0, .add_unaligned_size), ._, ._ }, |
| 158025 | .{ ._, .v_pd, .mova, .dst0y, .memad(.src0y, .add_unaligned_size, -32), ._, ._ }, |
| 158026 | .{ .@"0:", .v_pd, .mul, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 158027 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| 158028 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 158029 | .{ ._, .v_f128, .extract, .tmp1x, .dst0y, .ui(1), ._ }, |
| 158030 | .{ ._, .v_pd, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 158031 | .{ ._, .v_ps, .movhl, .tmp1x, .dst0x, .dst0x, ._ }, |
| 158032 | .{ ._, .v_sd, .mul, .dst0x, .dst0x, .tmp1x, ._ }, |
| 158033 | } }, |
| 158034 | }, .{ |
| 158035 | .required_features = .{ .sse2, null, null, null }, |
| 158036 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 158037 | .src_constraints = .{ .{ .unaligned_multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 158038 | .patterns = &.{ |
| 158039 | .{ .src = .{ .to_mem, .none, .none } }, |
| 158040 | }, |
| 158041 | .extra_temps = .{ |
| 158042 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 158043 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 158044 | .unused, |
| 158045 | .unused, |
| 158046 | .unused, |
| 158047 | .unused, |
| 158048 | .unused, |
| 158049 | .unused, |
| 158050 | .unused, |
| 158051 | .unused, |
| 158052 | .unused, |
| 158053 | }, |
| 158054 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 158055 | .clobbers = .{ .eflags = true }, |
| 158056 | .each = .{ .once = &.{ |
| 158057 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 158058 | .{ ._, ._pd, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 158059 | .{ .@"0:", ._pd, .mul, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 158060 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 158061 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 158062 | .{ ._, ._ps, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 158063 | .{ ._, ._ps, .movhl, .tmp1x, .dst0x, ._, ._ }, |
| 158064 | .{ ._, ._sd, .mul, .dst0x, .tmp1x, ._, ._ }, |
| 158065 | } }, |
| 158066 | }, .{ |
| 158067 | .required_features = .{ .avx512f, null, null, null }, |
| 158068 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 158069 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } }, .any, .any }, |
| 158070 | .patterns = &.{ |
| 158071 | .{ .src = .{ .to_mem, .none, .none } }, |
| 158072 | }, |
| 158073 | .extra_temps = .{ |
| 158074 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 158075 | .{ .type = .vector_64_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 158076 | .{ .type = .vector_8_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 158077 | .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } }, |
| 158078 | .unused, |
| 158079 | .unused, |
| 158080 | .unused, |
| 158081 | .unused, |
| 158082 | .unused, |
| 158083 | .unused, |
| 158084 | .unused, |
| 158085 | }, |
| 158086 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 158087 | .clobbers = .{ .eflags = true }, |
| 158088 | .each = .{ .once = &.{ |
| 158089 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 158090 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 158091 | .{ ._, .v_pd, .mova, .tmp3y, .lead(.tmp0y, 32), ._, ._ }, |
| 158092 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 158093 | .{ ._, .v_pd, .@"and", .tmp3y, .tmp3y, .memad(.src0y, .add_size, -32), ._ }, |
| 158094 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -64), ._ }, |
| 158095 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 158096 | .{ ._, .v_pd, .@"or", .tmp3y, .tmp3y, .lead(.tmp0y, 32), ._ }, |
| 158097 | .{ ._, ._, .mov, .tmp0d, .sia(-128, .src0, .add_size), ._, ._ }, |
| 158098 | .{ .@"0:", .v_pd, .mul, .tmp3y, .tmp3y, .memid(.src0y, .tmp0, 32), ._ }, |
| 158099 | .{ ._, .v_pd, .mul, .dst0y, .dst0y, .memi(.src0y, .tmp0), ._ }, |
| 158100 | .{ ._, ._, .sub, .tmp0d, .si(64), ._, ._ }, |
| 158101 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 158102 | .{ ._, .v_pd, .mul, .dst0y, .dst0y, .tmp3y, ._ }, |
| 158103 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 158104 | .{ ._, .v_pd, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 158105 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 158106 | .{ ._, .v_sd, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 158107 | } }, |
| 158108 | }, .{ |
| 158109 | .required_features = .{ .avx, null, null, null }, |
| 158110 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 158111 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any }, |
| 158112 | .patterns = &.{ |
| 158113 | .{ .src = .{ .to_mem, .none, .none } }, |
| 158114 | }, |
| 158115 | .extra_temps = .{ |
| 158116 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 158117 | .{ .type = .vector_32_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 158118 | .{ .type = .vector_4_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 158119 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 158120 | .unused, |
| 158121 | .unused, |
| 158122 | .unused, |
| 158123 | .unused, |
| 158124 | .unused, |
| 158125 | .unused, |
| 158126 | .unused, |
| 158127 | }, |
| 158128 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 158129 | .clobbers = .{ .eflags = true }, |
| 158130 | .each = .{ .once = &.{ |
| 158131 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 158132 | .{ ._, .v_pd, .mova, .dst0y, .lea(.tmp0y), ._, ._ }, |
| 158133 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 158134 | .{ ._, .v_pd, .@"and", .dst0y, .dst0y, .memad(.src0y, .add_size, -32), ._ }, |
| 158135 | .{ ._, .v_pd, .@"or", .dst0y, .dst0y, .lea(.tmp0y), ._ }, |
| 158136 | .{ ._, ._, .mov, .tmp0d, .sia(-48, .src0, .add_size), ._, ._ }, |
| 158137 | .{ ._, .v_f128, .extract, .tmp3x, .dst0y, .ui(1), ._ }, |
| 158138 | .{ ._, .v_pd, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 158139 | .{ .@"0:", .v_pd, .mul, .dst0x, .dst0x, .memi(.src0x, .tmp0), ._ }, |
| 158140 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 158141 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 158142 | .{ ._, .v_ps, .movhl, .tmp3x, .dst0x, .dst0x, ._ }, |
| 158143 | .{ ._, .v_sd, .mul, .dst0x, .dst0x, .tmp3x, ._ }, |
| 158144 | } }, |
| 158145 | }, .{ |
| 158146 | .required_features = .{ .sse2, null, null, null }, |
| 158147 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 158148 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 158149 | .patterns = &.{ |
| 158150 | .{ .src = .{ .to_mem, .none, .none } }, |
| 158151 | }, |
| 158152 | .extra_temps = .{ |
| 158153 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 158154 | .{ .type = .vector_16_u8, .kind = .{ .pand_mask_mem = .{ .ref = .src0 } } }, |
| 158155 | .{ .type = .vector_2_f64, .kind = .{ .splat_float_mem = .{ .ref = .src0, .outside = 1.0 } } }, |
| 158156 | .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } }, |
| 158157 | .unused, |
| 158158 | .unused, |
| 158159 | .unused, |
| 158160 | .unused, |
| 158161 | .unused, |
| 158162 | .unused, |
| 158163 | .unused, |
| 158164 | }, |
| 158165 | .dst_temps = .{ .{ .rc = .sse }, .unused }, |
| 158166 | .clobbers = .{ .eflags = true }, |
| 158167 | .each = .{ .once = &.{ |
| 158168 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ }, |
| 158169 | .{ ._, ._pd, .mova, .dst0x, .lea(.tmp0x), ._, ._ }, |
| 158170 | .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ }, |
| 158171 | .{ ._, ._pd, .@"and", .dst0x, .memad(.src0x, .add_size, -16), ._, ._ }, |
| 158172 | .{ ._, ._pd, .@"or", .dst0x, .lea(.tmp0x), ._, ._ }, |
| 158173 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 158174 | .{ .@"0:", ._pd, .mul, .dst0x, .memi(.src0x, .tmp0), ._, ._ }, |
| 158175 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 158176 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 158177 | .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ }, |
| 158178 | .{ ._, ._ps, .movhl, .tmp3x, .dst0x, ._, ._ }, |
| 158179 | .{ ._, ._sd, .mul, .dst0x, .tmp3x, ._, ._ }, |
| 158180 | } }, |
| 158181 | }, .{ |
| 158182 | .required_features = .{ .x87, null, null, null }, |
| 158183 | .dst_constraints = .{ .{ .float = .qword }, .any }, |
| 158184 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any }, |
| 158185 | .patterns = &.{ |
| 158186 | .{ .src = .{ .to_mem, .none, .none } }, |
| 158187 | }, |
| 158188 | .extra_temps = .{ |
| 158189 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 158190 | .{ .type = .f64, .kind = .{ .reg = .st7 } }, |
| 158191 | .unused, |
| 158192 | .unused, |
| 158193 | .unused, |
| 158194 | .unused, |
| 158195 | .unused, |
| 158196 | .unused, |
| 158197 | .unused, |
| 158198 | .unused, |
| 158199 | .unused, |
| 158200 | }, |
| 158201 | .dst_temps = .{ .mem, .unused }, |
| 158202 | .clobbers = .{ .eflags = true }, |
| 158203 | .each = .{ .once = &.{ |
| 158204 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size), ._, ._ }, |
| 158205 | .{ ._, .f_, .ld, .memad(.src0q, .add_unaligned_size, -8), ._, ._, ._ }, |
| 158206 | .{ .@"0:", .f_, .mul, .memi(.src0q, .tmp0), ._, ._, ._ }, |
| 158207 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| 158208 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 158209 | .{ ._, .f_p, .st, .dst0q, ._, ._, ._ }, |
| 158210 | } }, |
| 158211 | }, .{ |
| 158212 | .required_features = .{ .x87, null, null, null }, |
| 158213 | .dst_constraints = .{ .{ .float = .tbyte }, .any }, |
| 158214 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any }, |
| 158215 | .patterns = &.{ |
| 158216 | .{ .src = .{ .to_mem, .none, .none } }, |
| 158217 | }, |
| 158218 | .extra_temps = .{ |
| 158219 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 158220 | .{ .type = .f80, .kind = .{ .reg = .st7 } }, |
| 158221 | .{ .type = .f80, .kind = .{ .reg = .st6 } }, |
| 158222 | .unused, |
| 158223 | .unused, |
| 158224 | .unused, |
| 158225 | .unused, |
| 158226 | .unused, |
| 158227 | .unused, |
| 158228 | .unused, |
| 158229 | .unused, |
| 158230 | }, |
| 158231 | .dst_temps = .{ .{ .rc = .x87 }, .unused }, |
| 158232 | .clobbers = .{ .eflags = true }, |
| 158233 | .each = .{ .once = &.{ |
| 158234 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 158235 | .{ ._, .f_, .ld, .memad(.src0t, .add_unaligned_size, -16), ._, ._, ._ }, |
| 158236 | .{ .@"0:", .f_, .ld, .memi(.src0t, .tmp0), ._, ._, ._ }, |
| 158237 | .{ ._, .f_p, .mul, ._, ._, ._, ._ }, |
| 158238 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 158239 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 158240 | .{ ._, .f_p, .st, .dst0t, ._, ._, ._ }, |
| 158241 | } }, |
| 158242 | }, .{ |
| 158243 | .required_features = .{ .avx, null, null, null }, |
| 158244 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 158245 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 158246 | .patterns = &.{ |
| 158247 | .{ .src = .{ .to_mem, .none, .none } }, |
| 158248 | }, |
| 158249 | .call_frame = .{ .alignment = .@"16" }, |
| 158250 | .extra_temps = .{ |
| 158251 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 158252 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 158253 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__multf3" } } }, |
| 158254 | .unused, |
| 158255 | .unused, |
| 158256 | .unused, |
| 158257 | .unused, |
| 158258 | .unused, |
| 158259 | .unused, |
| 158260 | .unused, |
| 158261 | .unused, |
| 158262 | }, |
| 158263 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 158264 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 158265 | .each = .{ .once = &.{ |
| 158266 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 158267 | .{ ._, .v_dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 158268 | .{ .@"0:", .v_dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 158269 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 158270 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 158271 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 158272 | } }, |
| 158273 | }, .{ |
| 158274 | .required_features = .{ .sse2, null, null, null }, |
| 158275 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 158276 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 158277 | .patterns = &.{ |
| 158278 | .{ .src = .{ .to_mem, .none, .none } }, |
| 158279 | }, |
| 158280 | .call_frame = .{ .alignment = .@"16" }, |
| 158281 | .extra_temps = .{ |
| 158282 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 158283 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 158284 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__multf3" } } }, |
| 158285 | .unused, |
| 158286 | .unused, |
| 158287 | .unused, |
| 158288 | .unused, |
| 158289 | .unused, |
| 158290 | .unused, |
| 158291 | .unused, |
| 158292 | .unused, |
| 158293 | }, |
| 158294 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 158295 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 158296 | .each = .{ .once = &.{ |
| 158297 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 158298 | .{ ._, ._dqa, .mov, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 158299 | .{ .@"0:", ._dqa, .mov, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 158300 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 158301 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 158302 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 158303 | } }, |
| 158304 | }, .{ |
| 158305 | .required_features = .{ .sse, null, null, null }, |
| 158306 | .dst_constraints = .{ .{ .float = .xword }, .any }, |
| 158307 | .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 158308 | .patterns = &.{ |
| 158309 | .{ .src = .{ .to_mem, .none, .none } }, |
| 158310 | }, |
| 158311 | .call_frame = .{ .alignment = .@"16" }, |
| 158312 | .extra_temps = .{ |
| 158313 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| 158314 | .{ .type = .f128, .kind = .{ .reg = .xmm1 } }, |
| 158315 | .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__multf3" } } }, |
| 158316 | .unused, |
| 158317 | .unused, |
| 158318 | .unused, |
| 158319 | .unused, |
| 158320 | .unused, |
| 158321 | .unused, |
| 158322 | .unused, |
| 158323 | .unused, |
| 158324 | }, |
| 158325 | .dst_temps = .{ .{ .reg = .xmm0 }, .unused }, |
| 158326 | .clobbers = .{ .eflags = true, .caller_preserved = .ccc }, |
| 158327 | .each = .{ .once = &.{ |
| 158328 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size), ._, ._ }, |
| 158329 | .{ ._, ._ps, .mova, .dst0x, .memad(.src0x, .add_unaligned_size, -16), ._, ._ }, |
| 158330 | .{ .@"0:", ._ps, .mova, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 158331 | .{ ._, ._, .call, .tmp2d, ._, ._, ._ }, |
| 158332 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| 158333 | .{ ._, ._nb, .j, .@"0b", ._, ._, ._ }, |
| 158334 | } }, |
| 158335 | } }, |
| 158336 | }) catch |err| switch (err) { |
| 158337 | error.SelectFailed => return cg.fail("failed to select {s}.{s} {} {}", .{ |
| 158338 | @tagName(air_tag), |
| 158339 | @tagName(reduce.operation), |
| 158340 | cg.typeOf(reduce.operand).fmt(pt), |
| 158341 | ops[0].tracking(cg), |
| 158342 | }), |
| 158343 | else => |e| return e, |
| 158344 | }; |
| 158345 | try res[0].finish(inst, &.{reduce.operand}, &ops, cg); |
| 158346 | }, |
| 116833 | 158347 | .splat => |air_tag| if (use_old) try cg.airSplat(inst) else fallback: { |
| 116834 | 158348 | const ty_op = air_datas[@intFromEnum(inst)].ty_op; |
| 116835 | 158349 | if (cg.typeOf(ty_op.operand).toIntern() == .bool_type) break :fallback try cg.airSplat(inst); |
| ... | ... | @@ -119166,15 +160680,15 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 119166 | 160680 | }, |
| 119167 | 160681 | .union_init => if (use_old) try cg.airUnionInit(inst) else { |
| 119168 | 160682 | const ty_pl = air_datas[@intFromEnum(inst)].ty_pl; |
| 119169 | | const extra = cg.air.extraData(Air.UnionInit, ty_pl.payload).data; |
| 160683 | const union_init = cg.air.extraData(Air.UnionInit, ty_pl.payload).data; |
| 119170 | 160684 | const union_ty = ty_pl.ty.toType(); |
| 119171 | | var ops = try cg.tempsFromOperands(inst, .{extra.init}); |
| 160685 | var ops = try cg.tempsFromOperands(inst, .{union_init.init}); |
| 119172 | 160686 | var res = try cg.tempAllocMem(union_ty); |
| 119173 | 160687 | const union_layout = union_ty.unionGetLayout(zcu); |
| 119174 | 160688 | if (union_layout.tag_size > 0) { |
| 119175 | 160689 | var tag_temp = try cg.tempFromValue(try pt.enumValueFieldIndex( |
| 119176 | 160690 | union_ty.unionTagTypeSafety(zcu).?, |
| 119177 | | extra.field_index, |
| 160691 | union_init.field_index, |
| 119178 | 160692 | )); |
| 119179 | 160693 | try res.write(&tag_temp, .{ |
| 119180 | 160694 | .disp = @intCast(union_layout.tagOffset()), |
| ... | ... | @@ -119184,7 +160698,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 119184 | 160698 | try res.write(&ops[0], .{ |
| 119185 | 160699 | .disp = @intCast(union_layout.payloadOffset()), |
| 119186 | 160700 | }, cg); |
| 119187 | | try res.finish(inst, &.{extra.init}, &ops, cg); |
| 160701 | try res.finish(inst, &.{union_init.init}, &ops, cg); |
| 119188 | 160702 | }, |
| 119189 | 160703 | .prefetch => { |
| 119190 | 160704 | const prefetch = air_datas[@intFromEnum(inst)].prefetch; |
| ... | ... | @@ -120381,14 +161895,14 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 120381 | 161895 | }, |
| 120382 | 161896 | .field_parent_ptr => if (use_old) try cg.airFieldParentPtr(inst) else { |
| 120383 | 161897 | const ty_pl = air_datas[@intFromEnum(inst)].ty_pl; |
| 120384 | | const extra = cg.air.extraData(Air.FieldParentPtr, ty_pl.payload).data; |
| 120385 | | var ops = try cg.tempsFromOperands(inst, .{extra.field_ptr}); |
| 161898 | const field_parent_ptr = cg.air.extraData(Air.FieldParentPtr, ty_pl.payload).data; |
| 161899 | var ops = try cg.tempsFromOperands(inst, .{field_parent_ptr.field_ptr}); |
| 120386 | 161900 | try ops[0].toOffset(-cg.fieldOffset( |
| 120387 | 161901 | ty_pl.ty.toType(), |
| 120388 | | cg.typeOf(extra.field_ptr), |
| 120389 | | extra.field_index, |
| 161902 | cg.typeOf(field_parent_ptr.field_ptr), |
| 161903 | field_parent_ptr.field_index, |
| 120390 | 161904 | ), cg); |
| 120391 | | try ops[0].finish(inst, &.{extra.field_ptr}, &ops, cg); |
| 161905 | try ops[0].finish(inst, &.{field_parent_ptr.field_ptr}, &ops, cg); |
| 120392 | 161906 | }, |
| 120393 | 161907 | .wasm_memory_size, .wasm_memory_grow => unreachable, |
| 120394 | 161908 | .cmp_lt_errors_len => |air_tag| if (use_old) try cg.airCmpLtErrorsLen(inst) else { |
| ... | ... | @@ -120514,9 +162028,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 120514 | 162028 | try res.finish(inst, &.{}, &.{}, cg); |
| 120515 | 162029 | }, |
| 120516 | 162030 | .vector_store_elem => { |
| 120517 | | const extra = air_datas[@intFromEnum(inst)].vector_store_elem; |
| 120518 | | const bin_op = cg.air.extraData(Air.Bin, extra.payload).data; |
| 120519 | | var ops = try cg.tempsFromOperands(inst, .{ extra.vector_ptr, bin_op.lhs, bin_op.rhs }); |
| 162031 | const vector_store_elem = air_datas[@intFromEnum(inst)].vector_store_elem; |
| 162032 | const bin_op = cg.air.extraData(Air.Bin, vector_store_elem.payload).data; |
| 162033 | var ops = try cg.tempsFromOperands(inst, .{ vector_store_elem.vector_ptr, bin_op.lhs, bin_op.rhs }); |
| 120520 | 162034 | cg.select(&.{}, &.{}, &ops, comptime &.{ .{ |
| 120521 | 162035 | .src_constraints = .{ .{ .ptr_bool_vec = .byte }, .any, .bool }, |
| 120522 | 162036 | .patterns = &.{ |
| ... | ... | @@ -120878,7 +162392,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 120878 | 162392 | } }, |
| 120879 | 162393 | } }) catch |err| switch (err) { |
| 120880 | 162394 | error.SelectFailed => { |
| 120881 | | const elem_size = cg.typeOf(extra.vector_ptr).childType(zcu).childType(zcu).abiSize(zcu); |
| 162395 | const elem_size = cg.typeOf(bin_op.rhs).abiSize(zcu); |
| 120882 | 162396 | while (try ops[0].toBase(false, cg) or |
| 120883 | 162397 | try ops[1].toRegClass(true, .general_purpose, cg)) |
| 120884 | 162398 | {} |
| ... | ... | @@ -125517,7 +167031,7 @@ fn genByteSwap( |
| 125517 | 167031 | return src_mcv; |
| 125518 | 167032 | }, |
| 125519 | 167033 | 3...8 => if (src_mcv.isRegister() and self.reuseOperand(inst, ty_op.operand, 0, src_mcv)) { |
| 125520 | | try self.genUnOpMir(.{ ._, .bswap }, src_ty, src_mcv); |
| 167034 | try self.genUnOpMir(.{ .b_, .swap }, src_ty, src_mcv); |
| 125521 | 167035 | return src_mcv; |
| 125522 | 167036 | }, |
| 125523 | 167037 | 9...16 => { |
| ... | ... | @@ -125528,7 +167042,7 @@ fn genByteSwap( |
| 125528 | 167042 | break :mat_src_mcv .{ .load_frame = .{ .index = frame_index } }; |
| 125529 | 167043 | }, |
| 125530 | 167044 | .register_pair => |src_regs| if (self.reuseOperand(inst, ty_op.operand, 0, src_mcv)) { |
| 125531 | | for (src_regs) |src_reg| try self.asmRegister(.{ ._, .bswap }, src_reg.to64()); |
| 167045 | for (src_regs) |src_reg| try self.asmRegister(.{ .b_, .swap }, src_reg.to64()); |
| 125532 | 167046 | return .{ .register_pair = .{ src_regs[1], src_regs[0] } }; |
| 125533 | 167047 | } else src_mcv, |
| 125534 | 167048 | else => src_mcv, |
| ... | ... | @@ -125542,18 +167056,18 @@ fn genByteSwap( |
| 125542 | 167056 | for (dst_regs, 0..) |dst_reg, limb_index| { |
| 125543 | 167057 | if (mat_src_mcv.isBase()) { |
| 125544 | 167058 | try self.asmRegisterMemory( |
| 125545 | | .{ ._, if (has_movbe) .movbe else .mov }, |
| 167059 | .{ if (has_movbe) ._be else ._, .mov }, |
| 125546 | 167060 | dst_reg.to64(), |
| 125547 | 167061 | try mat_src_mcv.address().offset(@intCast(limb_index * 8)).deref().mem(self, .{ .size = .qword }), |
| 125548 | 167062 | ); |
| 125549 | | if (!has_movbe) try self.asmRegister(.{ ._, .bswap }, dst_reg.to64()); |
| 167063 | if (!has_movbe) try self.asmRegister(.{ .b_, .swap }, dst_reg.to64()); |
| 125550 | 167064 | } else { |
| 125551 | 167065 | try self.asmRegisterRegister( |
| 125552 | 167066 | .{ ._, .mov }, |
| 125553 | 167067 | dst_reg.to64(), |
| 125554 | 167068 | mat_src_mcv.register_pair[limb_index].to64(), |
| 125555 | 167069 | ); |
| 125556 | | try self.asmRegister(.{ ._, .bswap }, dst_reg.to64()); |
| 167070 | try self.asmRegister(.{ .b_, .swap }, dst_reg.to64()); |
| 125557 | 167071 | } |
| 125558 | 167072 | } |
| 125559 | 167073 | return .{ .register_pair = .{ dst_regs[1], dst_regs[0] } }; |
| ... | ... | @@ -125572,7 +167086,7 @@ fn genByteSwap( |
| 125572 | 167086 | |
| 125573 | 167087 | const loop: Mir.Inst.Index = @intCast(self.mir_instructions.len); |
| 125574 | 167088 | try self.asmRegisterMemory( |
| 125575 | | .{ ._, if (has_movbe) .movbe else .mov }, |
| 167089 | .{ if (has_movbe) ._be else ._, .mov }, |
| 125576 | 167090 | temp_regs[2].to64(), |
| 125577 | 167091 | .{ |
| 125578 | 167092 | .base = .{ .frame = dst_mcv.load_frame.index }, |
| ... | ... | @@ -125585,7 +167099,7 @@ fn genByteSwap( |
| 125585 | 167099 | }, |
| 125586 | 167100 | ); |
| 125587 | 167101 | try self.asmRegisterMemory( |
| 125588 | | .{ ._, if (has_movbe) .movbe else .mov }, |
| 167102 | .{ if (has_movbe) ._be else ._, .mov }, |
| 125589 | 167103 | temp_regs[3].to64(), |
| 125590 | 167104 | .{ |
| 125591 | 167105 | .base = .{ .frame = dst_mcv.load_frame.index }, |
| ... | ... | @@ -125598,8 +167112,8 @@ fn genByteSwap( |
| 125598 | 167112 | }, |
| 125599 | 167113 | ); |
| 125600 | 167114 | if (!has_movbe) { |
| 125601 | | try self.asmRegister(.{ ._, .bswap }, temp_regs[2].to64()); |
| 125602 | | try self.asmRegister(.{ ._, .bswap }, temp_regs[3].to64()); |
| 167115 | try self.asmRegister(.{ .b_, .swap }, temp_regs[2].to64()); |
| 167116 | try self.asmRegister(.{ .b_, .swap }, temp_regs[3].to64()); |
| 125603 | 167117 | } |
| 125604 | 167118 | try self.asmMemoryRegister(.{ ._, .mov }, .{ |
| 125605 | 167119 | .base = .{ .frame = dst_mcv.load_frame.index }, |
| ... | ... | @@ -125644,9 +167158,9 @@ fn genByteSwap( |
| 125644 | 167158 | switch (abi_size) { |
| 125645 | 167159 | else => unreachable, |
| 125646 | 167160 | 2 => try self.genBinOpMir(.{ ._l, .ro }, src_ty, dst_mcv, .{ .immediate = 8 }), |
| 125647 | | 3...8 => try self.genUnOpMir(.{ ._, .bswap }, src_ty, dst_mcv), |
| 167161 | 3...8 => try self.genUnOpMir(.{ .b_, .swap }, src_ty, dst_mcv), |
| 125648 | 167162 | } |
| 125649 | | } else try self.genBinOpMir(.{ ._, .movbe }, src_ty, dst_mcv, src_mcv); |
| 167163 | } else try self.genBinOpMir(.{ ._be, .mov }, src_ty, dst_mcv, src_mcv); |
| 125650 | 167164 | return dst_mcv; |
| 125651 | 167165 | } |
| 125652 | 167166 | |
| ... | ... | @@ -127728,14 +169242,14 @@ fn genShiftBinOpMir( |
| 127728 | 169242 | info.double_tag, |
| 127729 | 169243 | lhs_regs[info.indices[1]], |
| 127730 | 169244 | lhs_regs[info.indices[0]], |
| 127731 | | registerAlias(shift_reg, 1), |
| 169245 | shift_reg.to8(), |
| 127732 | 169246 | ); |
| 127733 | 169247 | try self.asmRegisterRegister( |
| 127734 | 169248 | tag, |
| 127735 | 169249 | lhs_regs[info.indices[0]], |
| 127736 | | registerAlias(shift_reg, 1), |
| 169250 | shift_reg.to8(), |
| 127737 | 169251 | ); |
| 127738 | | try self.asmRegisterImmediate(.{ ._, .cmp }, registerAlias(shift_reg, 1), .u(64)); |
| 169252 | try self.asmRegisterImmediate(.{ ._, .cmp }, shift_reg.to8(), .u(64)); |
| 127739 | 169253 | try self.asmCmovccRegisterRegister( |
| 127740 | 169254 | .ae, |
| 127741 | 169255 | lhs_regs[info.indices[1]], |
| ... | ... | @@ -127888,12 +169402,12 @@ fn genShiftBinOpMir( |
| 127888 | 169402 | info.double_tag, |
| 127889 | 169403 | second_reg, |
| 127890 | 169404 | first_reg, |
| 127891 | | registerAlias(shift_reg, 1), |
| 169405 | shift_reg.to8(), |
| 127892 | 169406 | ); |
| 127893 | | try self.asmRegisterRegister(tag, first_reg, registerAlias(shift_reg, 1)); |
| 169407 | try self.asmRegisterRegister(tag, first_reg, shift_reg.to8()); |
| 127894 | 169408 | try self.asmRegisterImmediate( |
| 127895 | 169409 | .{ ._, .cmp }, |
| 127896 | | registerAlias(shift_reg, 1), |
| 169410 | shift_reg.to8(), |
| 127897 | 169411 | .u(64), |
| 127898 | 169412 | ); |
| 127899 | 169413 | try self.asmCmovccRegisterRegister(.ae, second_reg, first_reg); |
| ... | ... | @@ -127937,7 +169451,7 @@ fn genShiftBinOpMir( |
| 127937 | 169451 | .register => |shift_reg| return self.asmRegisterRegister( |
| 127938 | 169452 | tag, |
| 127939 | 169453 | registerAlias(lhs_reg, abi_size), |
| 127940 | | registerAlias(shift_reg, 1), |
| 169454 | shift_reg.to8(), |
| 127941 | 169455 | ), |
| 127942 | 169456 | else => {}, |
| 127943 | 169457 | }, |
| ... | ... | @@ -127975,7 +169489,7 @@ fn genShiftBinOpMir( |
| 127975 | 169489 | .register => |shift_reg| return self.asmMemoryRegister( |
| 127976 | 169490 | tag, |
| 127977 | 169491 | lhs_mem, |
| 127978 | | registerAlias(shift_reg, 1), |
| 169492 | shift_reg.to8(), |
| 127979 | 169493 | ), |
| 127980 | 169494 | else => {}, |
| 127981 | 169495 | } |
| ... | ... | @@ -132477,7 +173991,7 @@ fn lowerSwitchBr( |
| 132477 | 173991 | .base = .table, |
| 132478 | 173992 | .mod = .{ .rm = .{ |
| 132479 | 173993 | .size = .ptr, |
| 132480 | | .index = registerAlias(condition_index_reg, ptr_size), |
| 173994 | .index = condition_index_reg.toSize(.ptr, cg.target), |
| 132481 | 173995 | .scale = .fromFactor(@intCast(ptr_size)), |
| 132482 | 173996 | .disp = table_start * ptr_size, |
| 132483 | 173997 | } }, |
| ... | ... | @@ -132832,7 +174346,7 @@ fn airSwitchDispatch(self: *CodeGen, inst: Air.Inst.Index) !void { |
| 132832 | 174346 | .base = .table, |
| 132833 | 174347 | .mod = .{ .rm = .{ |
| 132834 | 174348 | .size = .ptr, |
| 132835 | | .index = registerAlias(condition_index_reg, ptr_size), |
| 174349 | .index = condition_index_reg.toSize(.ptr, self.target), |
| 132836 | 174350 | .scale = .fromFactor(@intCast(ptr_size)), |
| 132837 | 174351 | .disp = @intCast(table.start * ptr_size), |
| 132838 | 174352 | } }, |
| ... | ... | @@ -132948,14 +174462,14 @@ fn airRepeat(self: *CodeGen, inst: Air.Inst.Index) !void { |
| 132948 | 174462 | } |
| 132949 | 174463 | |
| 132950 | 174464 | fn airAsm(self: *CodeGen, inst: Air.Inst.Index) !void { |
| 174465 | @setEvalBranchQuota(1_100); |
| 132951 | 174466 | const pt = self.pt; |
| 132952 | 174467 | const zcu = pt.zcu; |
| 132953 | 174468 | const ty_pl = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_pl; |
| 132954 | 174469 | const extra = self.air.extraData(Air.Asm, ty_pl.payload); |
| 132955 | 174470 | const clobbers_len: u31 = @truncate(extra.data.flags); |
| 132956 | 174471 | var extra_i: usize = extra.end; |
| 132957 | | const outputs: []const Air.Inst.Ref = |
| 132958 | | @ptrCast(self.air.extra[extra_i..][0..extra.data.outputs_len]); |
| 174472 | const outputs: []const Air.Inst.Ref = @ptrCast(self.air.extra[extra_i..][0..extra.data.outputs_len]); |
| 132959 | 174473 | extra_i += outputs.len; |
| 132960 | 174474 | const inputs: []const Air.Inst.Ref = @ptrCast(self.air.extra[extra_i..][0..extra.data.inputs_len]); |
| 132961 | 174475 | extra_i += inputs.len; |
| ... | ... | @@ -133519,16 +175033,16 @@ fn airAsm(self: *CodeGen, inst: Air.Inst.Index) !void { |
| 133519 | 175033 | .{ ._, .pseudo } |
| 133520 | 175034 | else for (std.enums.values(Mir.Inst.Fixes)) |fixes| { |
| 133521 | 175035 | const fixes_name = @tagName(fixes); |
| 133522 | | const space_i = std.mem.indexOfScalar(u8, fixes_name, ' '); |
| 133523 | | const fixes_prefix = if (space_i) |i| |
| 133524 | | std.meta.stringToEnum(encoder.Instruction.Prefix, fixes_name[0..i]).? |
| 175036 | const space_index = std.mem.indexOfScalar(u8, fixes_name, ' '); |
| 175037 | const fixes_prefix = if (space_index) |index| |
| 175038 | std.meta.stringToEnum(encoder.Instruction.Prefix, fixes_name[0..index]).? |
| 133525 | 175039 | else |
| 133526 | 175040 | .none; |
| 133527 | 175041 | if (fixes_prefix != prefix) continue; |
| 133528 | | const pattern = fixes_name[if (space_i) |i| i + " ".len else 0..]; |
| 133529 | | const wildcard_i = std.mem.indexOfScalar(u8, pattern, '_').?; |
| 133530 | | const mnem_prefix = pattern[0..wildcard_i]; |
| 133531 | | const mnem_suffix = pattern[wildcard_i + "_".len ..]; |
| 175042 | const pattern = fixes_name[if (space_index) |index| index + " ".len else 0..]; |
| 175043 | const wildcard_index = std.mem.indexOfScalar(u8, pattern, '_').?; |
| 175044 | const mnem_prefix = pattern[0..wildcard_index]; |
| 175045 | const mnem_suffix = pattern[wildcard_index + "_".len ..]; |
| 133532 | 175046 | if (!std.mem.startsWith(u8, mnem_name, mnem_prefix)) continue; |
| 133533 | 175047 | if (!std.mem.endsWith(u8, mnem_name, mnem_suffix)) continue; |
| 133534 | 175048 | break .{ fixes, std.meta.stringToEnum( |
| ... | ... | @@ -133742,7 +175256,7 @@ const MoveStrategy = union(enum) { |
| 133742 | 175256 | .base = .{ .frame = tmp_frame_index }, |
| 133743 | 175257 | .mod = .{ .rm = .{ .size = .word } }, |
| 133744 | 175258 | }); |
| 133745 | | try cg.asmMemoryRegister(.{ ._, .mov }, dst_mem, tmp_reg.to16()); |
| 175259 | try cg.asmMemoryRegister(.{ ._, .mov }, dst_mem, tmp_reg.toSize(dst_mem.mod.rm.size, cg.target)); |
| 133746 | 175260 | }, |
| 133747 | 175261 | .load_store => |tag| try cg.asmMemoryRegister(tag, dst_mem, src_reg), |
| 133748 | 175262 | .load_store_x87 => if (cg.register_manager.isKnownRegFree(.st7)) { |
| ... | ... | @@ -134106,7 +175620,7 @@ fn genCopy(self: *CodeGen, ty: Type, dst_mcv: MCValue, src_mcv: MCValue, opts: C |
| 134106 | 175620 | } else if (self.hasFeature(.sse4_1)) { |
| 134107 | 175621 | try self.asmRegisterRegister(.{ ._q, .mov }, dst_regs[0].to64(), src_reg.to128()); |
| 134108 | 175622 | try self.asmRegisterRegisterImmediate(.{ .p_q, .extr }, dst_regs[1].to64(), src_reg.to128(), .u(1)); |
| 134109 | | } else { |
| 175623 | } else if (self.hasFeature(.sse2)) { |
| 134110 | 175624 | const tmp_reg = try self.register_manager.allocReg(null, abi.RegisterClass.sse); |
| 134111 | 175625 | const tmp_lock = self.register_manager.lockRegAssumeUnused(tmp_reg); |
| 134112 | 175626 | defer self.register_manager.unlockReg(tmp_lock); |
| ... | ... | @@ -134114,6 +175628,19 @@ fn genCopy(self: *CodeGen, ty: Type, dst_mcv: MCValue, src_mcv: MCValue, opts: C |
| 134114 | 175628 | try self.asmRegisterRegister(.{ ._q, .mov }, dst_regs[0].to64(), src_reg.to128()); |
| 134115 | 175629 | try self.asmRegisterRegister(.{ ._ps, .movhl }, tmp_reg.to128(), src_reg.to128()); |
| 134116 | 175630 | try self.asmRegisterRegister(.{ ._q, .mov }, dst_regs[1].to64(), tmp_reg.to128()); |
| 175631 | } else { |
| 175632 | const frame_index = try self.allocFrameIndex(.init(.{ |
| 175633 | .size = 16, |
| 175634 | .alignment = .@"16", |
| 175635 | })); |
| 175636 | try self.asmMemoryRegister(.{ ._ps, .mova }, .{ |
| 175637 | .base = .{ .frame = frame_index }, |
| 175638 | .mod = .{ .rm = .{ .size = .xword } }, |
| 175639 | }, src_reg.to128()); |
| 175640 | for (dst_regs, 0..) |dst_reg, dst_index| try self.asmRegisterMemory(.{ ._, .mov }, dst_reg.to64(), .{ |
| 175641 | .base = .{ .frame = frame_index }, |
| 175642 | .mod = .{ .rm = .{ .size = .qword, .disp = @intCast(8 * dst_index) } }, |
| 175643 | }); |
| 134117 | 175644 | } |
| 134118 | 175645 | return; |
| 134119 | 175646 | } else unreachable, |
| ... | ... | @@ -134357,7 +175884,7 @@ fn genSetReg( |
| 134357 | 175884 | }, |
| 134358 | 175885 | ), |
| 134359 | 175886 | .x87 => switch (src_reg.class()) { |
| 134360 | | .general_purpose, .gphi, .segment => unreachable, |
| 175887 | .general_purpose, .gphi, .segment, .mmx, .ip, .cr, .dr => unreachable, |
| 134361 | 175888 | .x87 => switch (src_reg) { |
| 134362 | 175889 | .st0 => try self.asmRegister(.{ .f_, .st }, dst_reg), |
| 134363 | 175890 | .st1, .st2, .st3, .st4, .st5, .st6 => switch (dst_reg) { |
| ... | ... | @@ -134382,7 +175909,25 @@ fn genSetReg( |
| 134382 | 175909 | }, |
| 134383 | 175910 | else => unreachable, |
| 134384 | 175911 | }, |
| 134385 | | .mmx, .sse, .ip, .cr, .dr => unreachable, |
| 175912 | .sse => if (abi_size <= 16) { |
| 175913 | const frame_index = try self.allocFrameIndex(.init(.{ |
| 175914 | .size = 16, |
| 175915 | .alignment = .@"16", |
| 175916 | })); |
| 175917 | try self.asmMemoryRegister(if (self.hasFeature(.avx)) |
| 175918 | .{ .v_dqa, .mov } |
| 175919 | else if (self.hasFeature(.sse2)) |
| 175920 | .{ ._dqa, .mov } |
| 175921 | else |
| 175922 | .{ ._ps, .mova }, .{ |
| 175923 | .base = .{ .frame = frame_index }, |
| 175924 | .mod = .{ .rm = .{ .size = .xword } }, |
| 175925 | }, src_reg.to128()); |
| 175926 | try MoveStrategy.read(.load_store_x87, self, dst_reg, .{ |
| 175927 | .base = .{ .frame = frame_index }, |
| 175928 | .mod = .{ .rm = .{ .size = .tbyte } }, |
| 175929 | }); |
| 175930 | } else unreachable, |
| 134386 | 175931 | }, |
| 134387 | 175932 | .mmx => unreachable, |
| 134388 | 175933 | .sse => switch (src_reg.class()) { |
| ... | ... | @@ -134424,7 +175969,7 @@ fn genSetReg( |
| 134424 | 175969 | .{ .register = try self.copyToTmpRegister(ty, src_mcv) }, |
| 134425 | 175970 | opts, |
| 134426 | 175971 | ), |
| 134427 | | .x87 => { |
| 175972 | .x87 => if (abi_size <= 16) { |
| 134428 | 175973 | const frame_index = try self.allocFrameIndex(.init(.{ |
| 134429 | 175974 | .size = 16, |
| 134430 | 175975 | .alignment = .@"16", |
| ... | ... | @@ -134442,7 +175987,7 @@ fn genSetReg( |
| 134442 | 175987 | .base = .{ .frame = frame_index }, |
| 134443 | 175988 | .mod = .{ .rm = .{ .size = .xword } }, |
| 134444 | 175989 | }); |
| 134445 | | }, |
| 175990 | } else unreachable, |
| 134446 | 175991 | .mmx, .ip, .cr, .dr => unreachable, |
| 134447 | 175992 | .sse => try self.asmRegisterRegister( |
| 134448 | 175993 | @as(?Mir.Inst.FixedTag, switch (ty.scalarType(zcu).zigTypeTag(zcu)) { |
| ... | ... | @@ -134506,7 +176051,7 @@ fn genSetReg( |
| 134506 | 176051 | } else if (self.hasFeature(.sse4_1)) { |
| 134507 | 176052 | try self.asmRegisterRegister(.{ ._q, .mov }, dst_reg.to128(), src_regs[0].to64()); |
| 134508 | 176053 | try self.asmRegisterRegisterImmediate(.{ .p_q, .insr }, dst_reg.to128(), src_regs[1].to64(), .u(1)); |
| 134509 | | } else { |
| 176054 | } else if (self.hasFeature(.sse2)) { |
| 134510 | 176055 | const tmp_reg = try self.register_manager.allocReg(null, abi.RegisterClass.sse); |
| 134511 | 176056 | const tmp_lock = self.register_manager.lockRegAssumeUnused(tmp_reg); |
| 134512 | 176057 | defer self.register_manager.unlockReg(tmp_lock); |
| ... | ... | @@ -134514,6 +176059,19 @@ fn genSetReg( |
| 134514 | 176059 | try self.asmRegisterRegister(.{ ._q, .mov }, dst_reg.to128(), src_regs[0].to64()); |
| 134515 | 176060 | try self.asmRegisterRegister(.{ ._q, .mov }, tmp_reg.to128(), src_regs[1].to64()); |
| 134516 | 176061 | try self.asmRegisterRegister(.{ ._ps, .movlh }, dst_reg.to128(), tmp_reg.to128()); |
| 176062 | } else { |
| 176063 | const frame_index = try self.allocFrameIndex(.init(.{ |
| 176064 | .size = 16, |
| 176065 | .alignment = .@"16", |
| 176066 | })); |
| 176067 | for (src_regs, 0..) |src_reg, src_index| try self.asmMemoryRegister(.{ ._, .mov }, .{ |
| 176068 | .base = .{ .frame = frame_index }, |
| 176069 | .mod = .{ .rm = .{ .size = .qword, .disp = @intCast(8 * src_index) } }, |
| 176070 | }, src_reg.to64()); |
| 176071 | try self.asmRegisterMemory(.{ ._ps, .mova }, dst_reg.to128(), .{ |
| 176072 | .base = .{ .frame = frame_index }, |
| 176073 | .mod = .{ .rm = .{ .size = .xword } }, |
| 176074 | }); |
| 134517 | 176075 | } |
| 134518 | 176076 | } else unreachable, |
| 134519 | 176077 | else => unreachable, |
| ... | ... | @@ -134821,11 +176379,18 @@ fn genSetMem( |
| 134821 | 176379 | }, |
| 134822 | 176380 | else => abi_size, |
| 134823 | 176381 | }; |
| 134824 | | const src_alias = registerAlias(src_reg, abi_size); |
| 134825 | | const src_size: u32 = @intCast(switch (src_alias.class()) { |
| 134826 | | .general_purpose, .gphi, .segment, .x87, .ip, .cr, .dr => @divExact(src_alias.bitSize(), 8), |
| 176382 | const src_alias = registerAlias(src_reg, @intCast(self.unalignedSize(ty))); |
| 176383 | const src_class = src_alias.class(); |
| 176384 | const src_size: u32 = switch (src_class) { |
| 176385 | .general_purpose, .gphi, .segment, .ip, .cr, .dr => @intCast(@divExact(src_alias.bitSize(), 8)), |
| 134827 | 176386 | .mmx, .sse => abi_size, |
| 134828 | | }); |
| 176387 | .x87 => switch (abi.classifySystemV(ty, zcu, self.target, .other)[0]) { |
| 176388 | else => unreachable, |
| 176389 | .float, .float_combine => 4, |
| 176390 | .sse => 8, |
| 176391 | .x87 => 10, |
| 176392 | }, |
| 176393 | }; |
| 134829 | 176394 | const src_align: InternPool.Alignment = .fromNonzeroByteUnits( |
| 134830 | 176395 | std.math.ceilPowerOfTwoAssert(u32, src_size), |
| 134831 | 176396 | ); |
| ... | ... | @@ -134835,7 +176400,7 @@ fn genSetMem( |
| 134835 | 176400 | .alignment = src_align, |
| 134836 | 176401 | })); |
| 134837 | 176402 | const frame_mcv: MCValue = .{ .load_frame = .{ .index = frame_index } }; |
| 134838 | | try (try self.moveStrategy(ty, src_alias.class(), true)).write( |
| 176403 | try (try self.moveStrategy(ty, src_class, true)).write( |
| 134839 | 176404 | self, |
| 134840 | 176405 | .{ .base = .{ .frame = frame_index }, .mod = .{ .rm = .{ |
| 134841 | 176406 | .size = .fromSize(src_size), |
| ... | ... | @@ -134844,7 +176409,7 @@ fn genSetMem( |
| 134844 | 176409 | ); |
| 134845 | 176410 | try self.genSetMem(base, disp, ty, frame_mcv, opts); |
| 134846 | 176411 | try self.freeValue(frame_mcv); |
| 134847 | | } else try (try self.moveStrategy(ty, src_alias.class(), switch (base) { |
| 176412 | } else try (try self.moveStrategy(ty, src_class, switch (base) { |
| 134848 | 176413 | .none => src_align.check(@as(u32, @bitCast(disp))), |
| 134849 | 176414 | .reg => |reg| switch (reg) { |
| 134850 | 176415 | .es, .cs, .ss, .ds => src_align.check(@as(u32, @bitCast(disp))), |
| ... | ... | @@ -136855,10 +178420,10 @@ fn airSelect(self: *CodeGen, inst: Air.Inst.Index) !void { |
| 136855 | 178420 | ) else try self.asmRegisterRegister( |
| 136856 | 178421 | .{ mir_tag[0], .andn }, |
| 136857 | 178422 | mask_alias, |
| 136858 | | if (other_mcv.isRegister()) |
| 178423 | registerAlias(if (other_mcv.isRegister()) |
| 136859 | 178424 | other_mcv.getReg().? |
| 136860 | 178425 | else |
| 136861 | | try self.copyToTmpRegister(ty, other_mcv), |
| 178426 | try self.copyToTmpRegister(ty, other_mcv), abi_size), |
| 136862 | 178427 | ); |
| 136863 | 178428 | try self.asmRegisterRegister(.{ mir_tag[0], .@"or" }, dst_alias, mask_alias); |
| 136864 | 178429 | } |
| ... | ... | @@ -136964,17 +178529,18 @@ fn airSelect(self: *CodeGen, inst: Air.Inst.Index) !void { |
| 136964 | 178529 | ); |
| 136965 | 178530 | } else return self.fail("TODO implement airSelect for {}", .{ty.fmt(pt)}); |
| 136966 | 178531 | const elem_bits: u16 = @intCast(elem_abi_size * 8); |
| 136967 | | const mask_elem_ty = try pt.intType(.unsigned, elem_bits); |
| 136968 | | const mask_ty = try pt.vectorType(.{ .len = vec_len, .child = mask_elem_ty.toIntern() }); |
| 136969 | 178532 | if (!pred_fits_in_elem) if (self.hasFeature(.ssse3)) { |
| 136970 | | var mask_elems: [32]InternPool.Index = undefined; |
| 136971 | | for (mask_elems[0..vec_len], 0..) |*elem, bit| elem.* = try pt.intern(.{ .int = .{ |
| 136972 | | .ty = mask_elem_ty.toIntern(), |
| 136973 | | .storage = .{ .u64 = bit / elem_bits }, |
| 136974 | | } }); |
| 178533 | const mask_len = elem_abi_size * vec_len; |
| 178534 | const mask_ty = try pt.vectorType(.{ |
| 178535 | .len = mask_len, |
| 178536 | .child = .u8_type, |
| 178537 | }); |
| 178538 | var mask_elems_buf: [32]u8 = undefined; |
| 178539 | const mask_elems = mask_elems_buf[0..mask_len]; |
| 178540 | for (mask_elems, 0..) |*elem, bit| elem.* = @intCast(bit / elem_bits); |
| 136975 | 178541 | const mask_mcv = try self.genTypedValue(.fromInterned(try pt.intern(.{ .aggregate = .{ |
| 136976 | 178542 | .ty = mask_ty.toIntern(), |
| 136977 | | .storage = .{ .elems = mask_elems[0..vec_len] }, |
| 178543 | .storage = .{ .bytes = try zcu.intern_pool.getOrPutString(zcu.gpa, pt.tid, mask_elems, .maybe_embedded_nulls) }, |
| 136978 | 178544 | } }))); |
| 136979 | 178545 | const mask_mem: Memory = .{ |
| 136980 | 178546 | .base = .{ .reg = try self.copyToTmpRegister(.usize, mask_mcv.address()) }, |
| ... | ... | @@ -136992,14 +178558,17 @@ fn airSelect(self: *CodeGen, inst: Air.Inst.Index) !void { |
| 136992 | 178558 | ); |
| 136993 | 178559 | } else return self.fail("TODO implement airSelect for {}", .{ty.fmt(pt)}); |
| 136994 | 178560 | { |
| 136995 | | var mask_elems: [32]InternPool.Index = undefined; |
| 136996 | | for (mask_elems[0..vec_len], 0..) |*elem, bit| elem.* = try pt.intern(.{ .int = .{ |
| 178561 | const mask_elem_ty = try pt.intType(.unsigned, elem_bits); |
| 178562 | const mask_ty = try pt.vectorType(.{ .len = vec_len, .child = mask_elem_ty.toIntern() }); |
| 178563 | var mask_elems_buf: [32]InternPool.Index = undefined; |
| 178564 | const mask_elems = mask_elems_buf[0..vec_len]; |
| 178565 | for (mask_elems, 0..) |*elem, bit| elem.* = try pt.intern(.{ .int = .{ |
| 136997 | 178566 | .ty = mask_elem_ty.toIntern(), |
| 136998 | | .storage = .{ .u64 = @as(u32, 1) << @intCast(bit & (elem_bits - 1)) }, |
| 178567 | .storage = .{ .u64 = @as(u64, 1) << @intCast(bit) }, |
| 136999 | 178568 | } }); |
| 137000 | 178569 | const mask_mcv = try self.genTypedValue(.fromInterned(try pt.intern(.{ .aggregate = .{ |
| 137001 | 178570 | .ty = mask_ty.toIntern(), |
| 137002 | | .storage = .{ .elems = mask_elems[0..vec_len] }, |
| 178571 | .storage = .{ .elems = mask_elems }, |
| 137003 | 178572 | } }))); |
| 137004 | 178573 | const mask_mem: Memory = .{ |
| 137005 | 178574 | .base = .{ .reg = try self.copyToTmpRegister(.usize, mask_mcv.address()) }, |
| ... | ... | @@ -137013,7 +178582,13 @@ fn airSelect(self: *CodeGen, inst: Air.Inst.Index) !void { |
| 137013 | 178582 | mask_mem, |
| 137014 | 178583 | ); |
| 137015 | 178584 | try self.asmRegisterRegisterMemory( |
| 137016 | | .{ .vp_d, .cmpeq }, |
| 178585 | .{ switch (elem_abi_size) { |
| 178586 | else => unreachable, |
| 178587 | 1 => .vp_b, |
| 178588 | 2 => .vp_w, |
| 178589 | 4 => .vp_d, |
| 178590 | 8 => .vp_q, |
| 178591 | }, .cmpeq }, |
| 137017 | 178592 | mask_alias, |
| 137018 | 178593 | mask_alias, |
| 137019 | 178594 | mask_mem, |
| ... | ... | @@ -137025,7 +178600,13 @@ fn airSelect(self: *CodeGen, inst: Air.Inst.Index) !void { |
| 137025 | 178600 | mask_mem, |
| 137026 | 178601 | ); |
| 137027 | 178602 | try self.asmRegisterMemory( |
| 137028 | | .{ .p_d, .cmpeq }, |
| 178603 | .{ switch (elem_abi_size) { |
| 178604 | else => unreachable, |
| 178605 | 1 => .p_b, |
| 178606 | 2 => .p_w, |
| 178607 | 4 => .p_d, |
| 178608 | 8 => if (has_blend) .p_q else unreachable, |
| 178609 | }, .cmpeq }, |
| 137029 | 178610 | mask_alias, |
| 137030 | 178611 | mask_mem, |
| 137031 | 178612 | ); |
| ... | ... | @@ -137144,10 +178725,10 @@ fn airSelect(self: *CodeGen, inst: Air.Inst.Index) !void { |
| 137144 | 178725 | ) else try self.asmRegisterRegister( |
| 137145 | 178726 | .{ mir_tag[0], .andn }, |
| 137146 | 178727 | mask_alias, |
| 137147 | | if (rhs_mcv.isRegister()) |
| 178728 | registerAlias(if (rhs_mcv.isRegister()) |
| 137148 | 178729 | rhs_mcv.getReg().? |
| 137149 | 178730 | else |
| 137150 | | try self.copyToTmpRegister(ty, rhs_mcv), |
| 178731 | try self.copyToTmpRegister(ty, rhs_mcv), abi_size), |
| 137151 | 178732 | ); |
| 137152 | 178733 | try self.asmRegisterRegister(.{ mir_tag[0], .@"or" }, dst_alias, mask_alias); |
| 137153 | 178734 | } |
| ... | ... | @@ -138779,8 +180360,8 @@ fn genTypedValue(self: *CodeGen, val: Value) InnerError!MCValue { |
| 138779 | 180360 | return self.genResult(try codegen.genTypedValue(self.bin_file, self.pt, self.src_loc, val, self.target.*)); |
| 138780 | 180361 | } |
| 138781 | 180362 | |
| 138782 | | fn lowerUav(self: *CodeGen, val: Value) InnerError!MCValue { |
| 138783 | | return self.genResult(try self.bin_file.lowerUav(self.pt, val.toIntern(), .none, self.src_loc)); |
| 180363 | fn lowerUav(self: *CodeGen, val: Value, alignment: InternPool.Alignment) InnerError!MCValue { |
| 180364 | return self.genResult(try self.bin_file.lowerUav(self.pt, val.toIntern(), alignment, self.src_loc)); |
| 138784 | 180365 | } |
| 138785 | 180366 | |
| 138786 | 180367 | const CallMCValues = struct { |
| ... | ... | @@ -139221,7 +180802,7 @@ fn registerAlias(reg: Register, size_bytes: u32) Register { |
| 139221 | 180802 | reg |
| 139222 | 180803 | else |
| 139223 | 180804 | unreachable, |
| 139224 | | .x87 => if (size_bytes >= 10 and size_bytes <= 16) |
| 180805 | .x87 => if (size_bytes >= 4 and size_bytes <= 16) |
| 139225 | 180806 | reg |
| 139226 | 180807 | else |
| 139227 | 180808 | unreachable, |
| ... | ... | @@ -139508,11 +181089,25 @@ fn promoteVarArg(self: *CodeGen, ty: Type) Type { |
| 139508 | 181089 | fn unalignedSize(cg: *CodeGen, ty: Type) u64 { |
| 139509 | 181090 | const zcu = cg.pt.zcu; |
| 139510 | 181091 | return switch (zcu.intern_pool.indexToKey(ty.toIntern())) { |
| 139511 | | .vector_type => |vector_type| Type.fromInterned(vector_type.child).abiSize(zcu) * vector_type.len, |
| 181092 | .vector_type => |vector_type| switch (vector_type.child) { |
| 181093 | .bool_type => ty.abiSize(zcu), |
| 181094 | else => Type.fromInterned(vector_type.child).abiSize(zcu) * vector_type.len, |
| 181095 | }, |
| 139512 | 181096 | else => ty.abiSize(zcu), |
| 139513 | 181097 | }; |
| 139514 | 181098 | } |
| 139515 | 181099 | |
| 181100 | fn nonBoolScalarBitSize(cg: *CodeGen, ty: Type) u32 { |
| 181101 | const zcu = cg.pt.zcu; |
| 181102 | return switch (zcu.intern_pool.indexToKey(ty.toIntern())) { |
| 181103 | .vector_type => |vector_type| switch (vector_type.child) { |
| 181104 | .bool_type => vector_type.len, |
| 181105 | else => @intCast(Type.fromInterned(vector_type.child).bitSize(zcu)), |
| 181106 | }, |
| 181107 | else => @intCast(ty.bitSize(zcu)), |
| 181108 | }; |
| 181109 | } |
| 181110 | |
| 139516 | 181111 | fn intInfo(cg: *CodeGen, ty: Type) ?std.builtin.Type.Int { |
| 139517 | 181112 | const zcu = cg.pt.zcu; |
| 139518 | 181113 | const ip = &zcu.intern_pool; |
| ... | ... | @@ -140286,7 +181881,7 @@ const Temp = struct { |
| 140286 | 181881 | else => |mcv| std.debug.panic("{s}: {}\n", .{ @src().fn_name, mcv }), |
| 140287 | 181882 | .register => |val_reg| try src.readReg(opts.disp, val_ty, registerAlias( |
| 140288 | 181883 | val_reg, |
| 140289 | | @intCast(val_ty.abiSize(cg.pt.zcu)), |
| 181884 | @intCast(cg.unalignedSize(val_ty)), |
| 140290 | 181885 | ), cg), |
| 140291 | 181886 | inline .register_pair, .register_triple, .register_quadruple => |val_regs| { |
| 140292 | 181887 | var disp = opts.disp; |
| ... | ... | @@ -140732,7 +182327,7 @@ const Temp = struct { |
| 140732 | 182327 | }, .{ |
| 140733 | 182328 | .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = 128 } }, .any, .any }, |
| 140734 | 182329 | .patterns = &.{ |
| 140735 | | .{ .src = .{ .mut_mem, .none, .none } }, |
| 182330 | .{ .src = .{ .to_mut_mem, .none, .none } }, |
| 140736 | 182331 | }, |
| 140737 | 182332 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 140738 | 182333 | .each = .{ .once = &.{} }, |
| ... | ... | @@ -140740,7 +182335,7 @@ const Temp = struct { |
| 140740 | 182335 | .required_features = .{ .@"64bit", null, null, null }, |
| 140741 | 182336 | .src_constraints = .{ .{ .exact_remainder_signed_int = .{ .of = .xword, .is = 64 } }, .any, .any }, |
| 140742 | 182337 | .patterns = &.{ |
| 140743 | | .{ .src = .{ .mut_mem, .none, .none } }, |
| 182338 | .{ .src = .{ .to_mut_mem, .none, .none } }, |
| 140744 | 182339 | }, |
| 140745 | 182340 | .extra_temps = .{ |
| 140746 | 182341 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| ... | ... | @@ -140766,7 +182361,7 @@ const Temp = struct { |
| 140766 | 182361 | .required_features = .{ .@"64bit", null, null, null }, |
| 140767 | 182362 | .src_constraints = .{ .{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = 64 } }, .any, .any }, |
| 140768 | 182363 | .patterns = &.{ |
| 140769 | | .{ .src = .{ .mut_mem, .none, .none } }, |
| 182364 | .{ .src = .{ .to_mut_mem, .none, .none } }, |
| 140770 | 182365 | }, |
| 140771 | 182366 | .dst_temps = .{ .{ .ref = .src0 }, .unused }, |
| 140772 | 182367 | .each = .{ .once = &.{ |
| ... | ... | @@ -140776,7 +182371,7 @@ const Temp = struct { |
| 140776 | 182371 | .required_features = .{ .@"64bit", null, null, null }, |
| 140777 | 182372 | .src_constraints = .{ .{ .remainder_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 140778 | 182373 | .patterns = &.{ |
| 140779 | | .{ .src = .{ .mut_mem, .none, .none } }, |
| 182374 | .{ .src = .{ .to_mut_mem, .none, .none } }, |
| 140780 | 182375 | }, |
| 140781 | 182376 | .extra_temps = .{ |
| 140782 | 182377 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| ... | ... | @@ -140805,7 +182400,7 @@ const Temp = struct { |
| 140805 | 182400 | .required_features = .{ .@"64bit", null, null, null }, |
| 140806 | 182401 | .src_constraints = .{ .{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 140807 | 182402 | .patterns = &.{ |
| 140808 | | .{ .src = .{ .mut_mem, .none, .none } }, |
| 182403 | .{ .src = .{ .to_mut_mem, .none, .none } }, |
| 140809 | 182404 | }, |
| 140810 | 182405 | .extra_temps = .{ |
| 140811 | 182406 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| ... | ... | @@ -140831,7 +182426,7 @@ const Temp = struct { |
| 140831 | 182426 | .required_features = .{ .@"64bit", null, null, null }, |
| 140832 | 182427 | .src_constraints = .{ .{ .remainder_signed_int = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 140833 | 182428 | .patterns = &.{ |
| 140834 | | .{ .src = .{ .mut_mem, .none, .none } }, |
| 182429 | .{ .src = .{ .to_mut_mem, .none, .none } }, |
| 140835 | 182430 | }, |
| 140836 | 182431 | .extra_temps = .{ |
| 140837 | 182432 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| ... | ... | @@ -140858,7 +182453,7 @@ const Temp = struct { |
| 140858 | 182453 | .required_features = .{ .@"64bit", null, null, null }, |
| 140859 | 182454 | .src_constraints = .{ .{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 140860 | 182455 | .patterns = &.{ |
| 140861 | | .{ .src = .{ .mut_mem, .none, .none } }, |
| 182456 | .{ .src = .{ .to_mut_mem, .none, .none } }, |
| 140862 | 182457 | }, |
| 140863 | 182458 | .extra_temps = .{ |
| 140864 | 182459 | .{ .type = .u64, .kind = .{ .rc = .general_purpose } }, |
| ... | ... | @@ -142870,7 +184465,7 @@ const Temp = struct { |
| 142870 | 184465 | .required_features = .{ .@"64bit", null, null, null }, |
| 142871 | 184466 | .src_constraints = .{ .{ .scalar_remainder_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 142872 | 184467 | .patterns = &.{ |
| 142873 | | .{ .src = .{ .mut_mem, .none, .none } }, |
| 184468 | .{ .src = .{ .to_mut_mem, .none, .none } }, |
| 142874 | 184469 | }, |
| 142875 | 184470 | .extra_temps = .{ |
| 142876 | 184471 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| ... | ... | @@ -142902,7 +184497,7 @@ const Temp = struct { |
| 142902 | 184497 | .required_features = .{ .@"64bit", null, null, null }, |
| 142903 | 184498 | .src_constraints = .{ .{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any }, |
| 142904 | 184499 | .patterns = &.{ |
| 142905 | | .{ .src = .{ .mut_mem, .none, .none } }, |
| 184500 | .{ .src = .{ .to_mut_mem, .none, .none } }, |
| 142906 | 184501 | }, |
| 142907 | 184502 | .extra_temps = .{ |
| 142908 | 184503 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| ... | ... | @@ -142931,7 +184526,7 @@ const Temp = struct { |
| 142931 | 184526 | .required_features = .{ .@"64bit", null, null, null }, |
| 142932 | 184527 | .src_constraints = .{ .{ .scalar_remainder_signed_int = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 142933 | 184528 | .patterns = &.{ |
| 142934 | | .{ .src = .{ .mut_mem, .none, .none } }, |
| 184529 | .{ .src = .{ .to_mut_mem, .none, .none } }, |
| 142935 | 184530 | }, |
| 142936 | 184531 | .extra_temps = .{ |
| 142937 | 184532 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| ... | ... | @@ -142961,7 +184556,7 @@ const Temp = struct { |
| 142961 | 184556 | .required_features = .{ .@"64bit", null, null, null }, |
| 142962 | 184557 | .src_constraints = .{ .{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }, .any, .any }, |
| 142963 | 184558 | .patterns = &.{ |
| 142964 | | .{ .src = .{ .mut_mem, .none, .none } }, |
| 184559 | .{ .src = .{ .to_mut_mem, .none, .none } }, |
| 142965 | 184560 | }, |
| 142966 | 184561 | .extra_temps = .{ |
| 142967 | 184562 | .{ .type = .u32, .kind = .{ .rc = .general_purpose } }, |
| ... | ... | @@ -144973,7 +186568,11 @@ fn tempFromValue(cg: *CodeGen, value: Value) InnerError!Temp { |
| 144973 | 186568 | } |
| 144974 | 186569 | |
| 144975 | 186570 | fn tempMemFromValue(cg: *CodeGen, value: Value) InnerError!Temp { |
| 144976 | | return cg.tempInit(value.typeOf(cg.pt.zcu), try cg.lowerUav(value)); |
| 186571 | return cg.tempMemFromAlignedValue(.none, value); |
| 186572 | } |
| 186573 | |
| 186574 | fn tempMemFromAlignedValue(cg: *CodeGen, alignment: InternPool.Alignment, value: Value) InnerError!Temp { |
| 186575 | return cg.tempInit(value.typeOf(cg.pt.zcu), try cg.lowerUav(value, alignment)); |
| 144977 | 186576 | } |
| 144978 | 186577 | |
| 144979 | 186578 | fn tempFromOperand(cg: *CodeGen, op_ref: Air.Inst.Ref, op_dies: bool) InnerError!Temp { |
| ... | ... | @@ -145229,8 +186828,11 @@ const Select = struct { |
| 145229 | 186828 | po2_any, |
| 145230 | 186829 | bool, |
| 145231 | 186830 | bool_vec: Memory.Size, |
| 145232 | | ptr_bool_vec: Memory.Size, |
| 186831 | exact_bool_vec: u16, |
| 145233 | 186832 | ptr_any_bool_vec, |
| 186833 | ptr_bool_vec: Memory.Size, |
| 186834 | remainder_bool_vec: OfIsSizes, |
| 186835 | exact_remainder_bool_vec: struct { of: Memory.Size, is: u16 }, |
| 145234 | 186836 | signed_int_vec: Memory.Size, |
| 145235 | 186837 | signed_int_or_full_vec: Memory.Size, |
| 145236 | 186838 | unsigned_int_vec: Memory.Size, |
| ... | ... | @@ -145245,12 +186847,21 @@ const Select = struct { |
| 145245 | 186847 | scalar_int: OfIsSizes, |
| 145246 | 186848 | scalar_signed_int: OfIsSizes, |
| 145247 | 186849 | scalar_unsigned_int: OfIsSizes, |
| 186850 | exclusive_scalar_int: OfIsSizes, |
| 186851 | exclusive_scalar_signed_int: OfIsSizes, |
| 186852 | exclusive_scalar_unsigned_int: OfIsSizes, |
| 186853 | exact_scalar_int: OfIsSizes, |
| 186854 | exact_scalar_signed_int: OfIsSizes, |
| 186855 | exact_scalar_unsigned_int: OfIsSizes, |
| 145248 | 186856 | scalar_signed_or_exclusive_int: OfIsSizes, |
| 145249 | 186857 | scalar_exact_int: struct { of: Memory.Size, is: u16 }, |
| 145250 | 186858 | scalar_exact_signed_int: struct { of: Memory.Size, is: u16 }, |
| 145251 | 186859 | scalar_exact_unsigned_int: struct { of: Memory.Size, is: u16 }, |
| 145252 | 186860 | multiple_scalar: OfIsSizes, |
| 145253 | 186861 | multiple_scalar_int: OfIsSizes, |
| 186862 | unaligned_multiple_scalar_int: OfIsSizes, |
| 186863 | unaligned_multiple_scalar_signed_int: OfIsSizes, |
| 186864 | unaligned_multiple_scalar_unsigned_int: OfIsSizes, |
| 145254 | 186865 | multiple_scalar_signed_int: OfIsSizes, |
| 145255 | 186866 | multiple_scalar_unsigned_int: OfIsSizes, |
| 145256 | 186867 | multiple_scalar_signed_or_exclusive_int: OfIsSizes, |
| ... | ... | @@ -145266,8 +186877,11 @@ const Select = struct { |
| 145266 | 186877 | float: Memory.Size, |
| 145267 | 186878 | scalar_any_float: Memory.Size, |
| 145268 | 186879 | scalar_float: OfIsSizes, |
| 186880 | exclusive_scalar_float: OfIsSizes, |
| 186881 | exact_scalar_float: OfIsSizes, |
| 145269 | 186882 | multiple_scalar_any_float: Memory.Size, |
| 145270 | 186883 | multiple_scalar_float: OfIsSizes, |
| 186884 | unaligned_multiple_scalar_float: OfIsSizes, |
| 145271 | 186885 | exact_int: u16, |
| 145272 | 186886 | exact_signed_int: u16, |
| 145273 | 186887 | exact_unsigned_int: u16, |
| ... | ... | @@ -145309,6 +186923,8 @@ const Select = struct { |
| 145309 | 186923 | .bool => ty.toIntern() == .bool_type, |
| 145310 | 186924 | .bool_vec => |size| ty.isVector(zcu) and ty.scalarType(zcu).toIntern() == .bool_type and |
| 145311 | 186925 | size.bitSize(cg.target) >= ty.vectorLen(zcu), |
| 186926 | .exact_bool_vec => |size| ty.isVector(zcu) and ty.scalarType(zcu).toIntern() == .bool_type and |
| 186927 | size == ty.vectorLen(zcu), |
| 145312 | 186928 | .ptr_any_bool_vec => switch (zcu.intern_pool.indexToKey(ty.childType(zcu).toIntern())) { |
| 145313 | 186929 | .vector_type => |vector_type| vector_type.child == .bool_type, |
| 145314 | 186930 | else => false, |
| ... | ... | @@ -145317,6 +186933,10 @@ const Select = struct { |
| 145317 | 186933 | .vector_type => |vector_type| vector_type.child == .bool_type and size.bitSize(cg.target) >= vector_type.len, |
| 145318 | 186934 | else => false, |
| 145319 | 186935 | }, |
| 186936 | .remainder_bool_vec => |of_is| ty.isVector(zcu) and ty.scalarType(zcu).toIntern() == .bool_type and |
| 186937 | of_is.is.bitSize(cg.target) >= (ty.vectorLen(zcu) - 1) % of_is.of.bitSize(cg.target) + 1, |
| 186938 | .exact_remainder_bool_vec => |of_is| ty.isVector(zcu) and ty.scalarType(zcu).toIntern() == .bool_type and |
| 186939 | of_is.is == (ty.vectorLen(zcu) - 1) % of_is.of.bitSize(cg.target) + 1, |
| 145320 | 186940 | .signed_int_vec => |size| ty.isVector(zcu) and @divExact(size.bitSize(cg.target), 8) >= ty.abiSize(zcu) and |
| 145321 | 186941 | if (cg.intInfo(ty.childType(zcu))) |int_info| int_info.signedness == .signed else false, |
| 145322 | 186942 | .signed_int_or_full_vec => |size| ty.isVector(zcu) and @divExact(size.bitSize(cg.target), 8) >= ty.abiSize(zcu) and |
| ... | ... | @@ -145362,6 +186982,22 @@ const Select = struct { |
| 145362 | 186982 | .scalar_unsigned_int => |of_is| @divExact(of_is.of.bitSize(cg.target), 8) >= cg.unalignedSize(ty) and |
| 145363 | 186983 | if (cg.intInfo(ty.scalarType(zcu))) |int_info| int_info.signedness == .unsigned and |
| 145364 | 186984 | of_is.is.bitSize(cg.target) >= int_info.bits else false, |
| 186985 | .exclusive_scalar_int => |of_is| @divExact(of_is.of.bitSize(cg.target), 8) > cg.unalignedSize(ty) and |
| 186986 | if (cg.intInfo(ty.scalarType(zcu))) |int_info| of_is.is.bitSize(cg.target) >= int_info.bits else false, |
| 186987 | .exclusive_scalar_signed_int => |of_is| @divExact(of_is.of.bitSize(cg.target), 8) > cg.unalignedSize(ty) and |
| 186988 | if (cg.intInfo(ty.scalarType(zcu))) |int_info| int_info.signedness == .signed and |
| 186989 | of_is.is.bitSize(cg.target) >= int_info.bits else false, |
| 186990 | .exclusive_scalar_unsigned_int => |of_is| @divExact(of_is.of.bitSize(cg.target), 8) > cg.unalignedSize(ty) and |
| 186991 | if (cg.intInfo(ty.scalarType(zcu))) |int_info| int_info.signedness == .unsigned and |
| 186992 | of_is.is.bitSize(cg.target) >= int_info.bits else false, |
| 186993 | .exact_scalar_int => |of_is| @divExact(of_is.of.bitSize(cg.target), 8) == cg.unalignedSize(ty) and |
| 186994 | if (cg.intInfo(ty.scalarType(zcu))) |int_info| of_is.is.bitSize(cg.target) >= int_info.bits else false, |
| 186995 | .exact_scalar_signed_int => |of_is| @divExact(of_is.of.bitSize(cg.target), 8) == cg.unalignedSize(ty) and |
| 186996 | if (cg.intInfo(ty.scalarType(zcu))) |int_info| int_info.signedness == .signed and |
| 186997 | of_is.is.bitSize(cg.target) >= int_info.bits else false, |
| 186998 | .exact_scalar_unsigned_int => |of_is| @divExact(of_is.of.bitSize(cg.target), 8) == cg.unalignedSize(ty) and |
| 186999 | if (cg.intInfo(ty.scalarType(zcu))) |int_info| int_info.signedness == .unsigned and |
| 187000 | of_is.is.bitSize(cg.target) >= int_info.bits else false, |
| 145365 | 187001 | .scalar_signed_or_exclusive_int => |of_is| @divExact(of_is.of.bitSize(cg.target), 8) >= cg.unalignedSize(ty) and |
| 145366 | 187002 | if (cg.intInfo(ty)) |int_info| switch (int_info.signedness) { |
| 145367 | 187003 | .signed => of_is.is.bitSize(cg.target) >= int_info.bits, |
| ... | ... | @@ -145384,6 +187020,14 @@ const Select = struct { |
| 145384 | 187020 | false, |
| 145385 | 187021 | .multiple_scalar_int => |of_is| ty.abiSize(zcu) % @divExact(of_is.of.bitSize(cg.target), 8) == 0 and |
| 145386 | 187022 | if (cg.intInfo(ty.scalarType(zcu))) |int_info| of_is.is.bitSize(cg.target) >= int_info.bits else false, |
| 187023 | .unaligned_multiple_scalar_int => |of_is| cg.unalignedSize(ty) % @divExact(of_is.of.bitSize(cg.target), 8) == 0 and |
| 187024 | if (cg.intInfo(ty.scalarType(zcu))) |int_info| of_is.is.bitSize(cg.target) >= int_info.bits else false, |
| 187025 | .unaligned_multiple_scalar_signed_int => |of_is| cg.unalignedSize(ty) % @divExact(of_is.of.bitSize(cg.target), 8) == 0 and |
| 187026 | if (cg.intInfo(ty.scalarType(zcu))) |int_info| int_info.signedness == .signed and |
| 187027 | of_is.is.bitSize(cg.target) >= int_info.bits else false, |
| 187028 | .unaligned_multiple_scalar_unsigned_int => |of_is| cg.unalignedSize(ty) % @divExact(of_is.of.bitSize(cg.target), 8) == 0 and |
| 187029 | if (cg.intInfo(ty.scalarType(zcu))) |int_info| int_info.signedness == .unsigned and |
| 187030 | of_is.is.bitSize(cg.target) >= int_info.bits else false, |
| 145387 | 187031 | .multiple_scalar_signed_int => |of_is| ty.abiSize(zcu) % @divExact(of_is.of.bitSize(cg.target), 8) == 0 and |
| 145388 | 187032 | if (cg.intInfo(ty.scalarType(zcu))) |int_info| int_info.signedness == .signed and |
| 145389 | 187033 | of_is.is.bitSize(cg.target) >= int_info.bits else false, |
| ... | ... | @@ -145424,10 +187068,16 @@ const Select = struct { |
| 145424 | 187068 | cg.floatBits(ty.scalarType(zcu)) != null, |
| 145425 | 187069 | .scalar_float => |of_is| @divExact(of_is.of.bitSize(cg.target), 8) >= cg.unalignedSize(ty) and |
| 145426 | 187070 | if (cg.floatBits(ty.scalarType(zcu))) |float_bits| of_is.is.bitSize(cg.target) == float_bits else false, |
| 187071 | .exclusive_scalar_float => |of_is| @divExact(of_is.of.bitSize(cg.target), 8) > cg.unalignedSize(ty) and |
| 187072 | if (cg.floatBits(ty.scalarType(zcu))) |float_bits| of_is.is.bitSize(cg.target) == float_bits else false, |
| 187073 | .exact_scalar_float => |of_is| @divExact(of_is.of.bitSize(cg.target), 8) == cg.unalignedSize(ty) and |
| 187074 | if (cg.floatBits(ty.scalarType(zcu))) |float_bits| of_is.is.bitSize(cg.target) == float_bits else false, |
| 145427 | 187075 | .multiple_scalar_any_float => |size| ty.abiSize(zcu) % @divExact(size.bitSize(cg.target), 8) == 0 and |
| 145428 | 187076 | cg.floatBits(ty.scalarType(zcu)) != null, |
| 145429 | 187077 | .multiple_scalar_float => |of_is| ty.abiSize(zcu) % @divExact(of_is.of.bitSize(cg.target), 8) == 0 and |
| 145430 | 187078 | if (cg.floatBits(ty.scalarType(zcu))) |float_bits| of_is.is.bitSize(cg.target) == float_bits else false, |
| 187079 | .unaligned_multiple_scalar_float => |of_is| cg.unalignedSize(ty) % @divExact(of_is.of.bitSize(cg.target), 8) == 0 and |
| 187080 | if (cg.floatBits(ty.scalarType(zcu))) |float_bits| of_is.is.bitSize(cg.target) == float_bits else false, |
| 145431 | 187081 | .exact_int => |bit_size| if (cg.intInfo(ty)) |int_info| bit_size == int_info.bits else false, |
| 145432 | 187082 | .exact_signed_int => |bit_size| if (cg.intInfo(ty)) |int_info| switch (int_info.signedness) { |
| 145433 | 187083 | .signed => bit_size == int_info.bits, |
| ... | ... | @@ -145554,6 +187204,25 @@ const Select = struct { |
| 145554 | 187204 | to_ymm, |
| 145555 | 187205 | mut_ymm, |
| 145556 | 187206 | to_mut_ymm, |
| 187207 | reg_mask: RegMaskSpec, |
| 187208 | all_reg_mask: RegMaskSpec, |
| 187209 | |
| 187210 | const RegMaskSpec = struct { |
| 187211 | size: Memory.Size, |
| 187212 | is: enum { |
| 187213 | any, |
| 187214 | uninverted, |
| 187215 | inverted, |
| 187216 | |
| 187217 | fn matches(is: @This(), inverted: bool) bool { |
| 187218 | return switch (is) { |
| 187219 | .any => true, |
| 187220 | .uninverted => !inverted, |
| 187221 | .inverted => inverted, |
| 187222 | }; |
| 187223 | } |
| 187224 | } = .any, |
| 187225 | }; |
| 145557 | 187226 | |
| 145558 | 187227 | fn matches(src: Src, temp: Temp, cg: *CodeGen) bool { |
| 145559 | 187228 | return switch (src) { |
| ... | ... | @@ -145668,12 +187337,24 @@ const Select = struct { |
| 145668 | 187337 | else => false, |
| 145669 | 187338 | }, |
| 145670 | 187339 | .to_ymm, .to_mut_ymm => temp.typeOf(cg).abiSize(cg.pt.zcu) == 32, |
| 187340 | .reg_mask => |mask_spec| switch (temp.tracking(cg).short) { |
| 187341 | .register_mask => |reg_mask| mask_spec.size.bitSize(cg.target) >= |
| 187342 | reg_mask.info.scalar.bitSize(cg.target) * temp.typeOf(cg).vectorLen(cg.pt.zcu) and |
| 187343 | mask_spec.is.matches(reg_mask.info.inverted), |
| 187344 | else => false, |
| 187345 | }, |
| 187346 | .all_reg_mask => |mask_spec| switch (temp.tracking(cg).short) { |
| 187347 | .register_mask => |reg_mask| mask_spec.size.bitSize(cg.target) == |
| 187348 | reg_mask.info.scalar.bitSize(cg.target) * temp.typeOf(cg).vectorLen(cg.pt.zcu) and |
| 187349 | reg_mask.info.kind == .all and mask_spec.is.matches(reg_mask.info.inverted), |
| 187350 | else => false, |
| 187351 | }, |
| 145671 | 187352 | }; |
| 145672 | 187353 | } |
| 145673 | 187354 | |
| 145674 | 187355 | fn convert(src: Src, temp: *Temp, cg: *CodeGen) InnerError!bool { |
| 145675 | 187356 | return switch (src) { |
| 145676 | | .none, .any, .imm, .imm8, .imm16, .imm32, .simm32 => false, |
| 187357 | .none, .any, .imm, .imm8, .imm16, .imm32, .simm32, .reg_mask, .all_reg_mask => false, |
| 145677 | 187358 | .mem, .to_mem => try temp.toBase(false, cg), |
| 145678 | 187359 | .mut_mem, .to_mut_mem => try temp.toBase(true, cg), |
| 145679 | 187360 | .to_reg => |reg| try temp.toReg(reg, cg), |
| ... | ... | @@ -145707,6 +187388,7 @@ const Select = struct { |
| 145707 | 187388 | none, |
| 145708 | 187389 | undef, |
| 145709 | 187390 | cc: Condition, |
| 187391 | ptest_cc: struct { ref: Select.Operand.Ref, not: bool = false, all: u1 }, |
| 145710 | 187392 | imm: i32, |
| 145711 | 187393 | ref: Select.Operand.Ref, |
| 145712 | 187394 | reg: Register, |
| ... | ... | @@ -145736,9 +187418,12 @@ const Select = struct { |
| 145736 | 187418 | pshufb_splat_mem: struct { of: Memory.Size = .none, size: Memory.Size }, |
| 145737 | 187419 | pshufb_trunc_mem: struct { of: Memory.Size = .none, from: Memory.Size, to: Memory.Size }, |
| 145738 | 187420 | pand_trunc_mem: struct { from: Memory.Size, to: Memory.Size }, |
| 187421 | pand_mask_mem: struct { ref: Select.Operand.Ref, invert: bool = false }, |
| 187422 | ptest_mask_mem: Select.Operand.Ref, |
| 145739 | 187423 | pshufb_bswap_mem: struct { repeat: u4 = 1, size: Memory.Size, smear: u4 = 1 }, |
| 145740 | | forward_bits_mem, |
| 145741 | | reverse_bits_mem, |
| 187424 | bits_mem: enum { forward, reverse }, |
| 187425 | splat_int_mem: struct { ref: Select.Operand.Ref, inside: enum { umin, smin, smax } = .umin, outside: enum { smin, smax } }, |
| 187426 | splat_float_mem: struct { ref: Select.Operand.Ref, inside: enum { zero } = .zero, outside: f16 }, |
| 145742 | 187427 | frame: FrameIndex, |
| 145743 | 187428 | lazy_symbol: struct { kind: link.File.LazySymbol.Kind, ref: Select.Operand.Ref = .none }, |
| 145744 | 187429 | symbol: *const struct { lib: ?[]const u8 = null, name: []const u8 }, |
| ... | ... | @@ -145800,6 +187485,14 @@ const Select = struct { |
| 145800 | 187485 | .undef => .{ try cg.tempInit(spec.type, .undef), true }, |
| 145801 | 187486 | .imm => |imm| .{ try cg.tempInit(spec.type, .{ .immediate = @bitCast(@as(i64, imm)) }), true }, |
| 145802 | 187487 | .cc => |cc| .{ try cg.tempInit(spec.type, .{ .eflags = cc }), true }, |
| 187488 | .ptest_cc => |cc_spec| { |
| 187489 | const ccs: [2]Condition = .{ .z, .c }; |
| 187490 | const cc = ccs[cc_spec.all ^ @intFromBool(cc_spec.ref.valueOf(s).register_mask.info.inverted)]; |
| 187491 | return .{ try cg.tempInit(spec.type, .{ .eflags = switch (cc_spec.not) { |
| 187492 | false => cc, |
| 187493 | true => cc.negate(), |
| 187494 | } }), true }; |
| 187495 | }, |
| 145803 | 187496 | .ref => |ref| .{ ref.tempOf(s), false }, |
| 145804 | 187497 | .reg => |reg| .{ try cg.tempInit(spec.type, .{ .register = reg }), true }, |
| 145805 | 187498 | .reg_pair => |regs| .{ try cg.tempInit(spec.type, .{ .register_pair = regs }), true }, |
| ... | ... | @@ -145988,16 +187681,15 @@ const Select = struct { |
| 145988 | 187681 | } }))), true }, |
| 145989 | 187682 | .pshufb_splat_mem => |splat_spec| { |
| 145990 | 187683 | const zcu = pt.zcu; |
| 145991 | | assert(spec.type.isVector(zcu)); |
| 145992 | | assert(spec.type.childType(zcu).toIntern() == .u8_type); |
| 187684 | assert(spec.type.isVector(zcu) and spec.type.childType(zcu).toIntern() == .u8_type); |
| 145993 | 187685 | var elem_buf: [32]u8 = @splat(1 << 7); |
| 145994 | 187686 | const elems = elem_buf[0..spec.type.vectorLen(zcu)]; |
| 145995 | | const of_bytes: u32 = @intCast(switch (splat_spec.of) { |
| 187687 | const of_bytes: u6 = @intCast(switch (splat_spec.of) { |
| 145996 | 187688 | .none => elems.len, |
| 145997 | 187689 | else => |of| @divExact(of.bitSize(cg.target), 8), |
| 145998 | 187690 | }); |
| 145999 | | const size_bytes: u32 = @intCast(@divExact(splat_spec.size.bitSize(cg.target), 8)); |
| 146000 | | var index: u32 = 0; |
| 187691 | const size_bytes: u6 = @intCast(@divExact(splat_spec.size.bitSize(cg.target), 8)); |
| 187692 | var index: u6 = 0; |
| 146001 | 187693 | while (index < of_bytes) : (index += size_bytes) for (0..size_bytes) |byte_off| { |
| 146002 | 187694 | elems[index + byte_off] = @as(u4, @truncate(byte_off)); |
| 146003 | 187695 | }; |
| ... | ... | @@ -146008,18 +187700,17 @@ const Select = struct { |
| 146008 | 187700 | }, |
| 146009 | 187701 | .pshufb_trunc_mem => |trunc_spec| { |
| 146010 | 187702 | const zcu = pt.zcu; |
| 146011 | | assert(spec.type.isVector(zcu)); |
| 146012 | | assert(spec.type.childType(zcu).toIntern() == .u8_type); |
| 187703 | assert(spec.type.isVector(zcu) and spec.type.childType(zcu).toIntern() == .u8_type); |
| 146013 | 187704 | var elem_buf: [32]u8 = @splat(1 << 7); |
| 146014 | 187705 | const elems = elem_buf[0..spec.type.vectorLen(zcu)]; |
| 146015 | | const of_bytes: u32 = @intCast(switch (trunc_spec.of) { |
| 187706 | const of_bytes: u6 = @intCast(switch (trunc_spec.of) { |
| 146016 | 187707 | .none => elems.len, |
| 146017 | 187708 | else => |of| @divExact(of.bitSize(cg.target), 8), |
| 146018 | 187709 | }); |
| 146019 | | const from_bytes: u32 = @intCast(@divExact(trunc_spec.from.bitSize(cg.target), 8)); |
| 146020 | | const to_bytes: u32 = @intCast(@divExact(trunc_spec.to.bitSize(cg.target), 8)); |
| 146021 | | var from_index: u32 = 0; |
| 146022 | | var to_index: u32 = 0; |
| 187710 | const from_bytes: u5 = @intCast(@divExact(trunc_spec.from.bitSize(cg.target), 8)); |
| 187711 | const to_bytes: u5 = @intCast(@divExact(trunc_spec.to.bitSize(cg.target), 8)); |
| 187712 | var from_index: u6 = 0; |
| 187713 | var to_index: u6 = 0; |
| 146023 | 187714 | while (from_index < of_bytes) : ({ |
| 146024 | 187715 | from_index += from_bytes; |
| 146025 | 187716 | switch (from_index % 16) { |
| ... | ... | @@ -146036,27 +187727,69 @@ const Select = struct { |
| 146036 | 187727 | }, |
| 146037 | 187728 | .pand_trunc_mem => |trunc_spec| { |
| 146038 | 187729 | const zcu = pt.zcu; |
| 146039 | | assert(spec.type.isVector(zcu)); |
| 146040 | | assert(spec.type.childType(zcu).toIntern() == .u8_type); |
| 187730 | assert(spec.type.isVector(zcu) and spec.type.childType(zcu).toIntern() == .u8_type); |
| 146041 | 187731 | var elem_buf: [32]u8 = @splat(0); |
| 146042 | 187732 | const elems = elem_buf[0..spec.type.vectorLen(zcu)]; |
| 146043 | | const from_bytes: u32 = @intCast(@divExact(trunc_spec.from.bitSize(cg.target), 8)); |
| 146044 | | const to_bytes: u32 = @intCast(@divExact(trunc_spec.to.bitSize(cg.target), 8)); |
| 146045 | | var index: u32 = 0; |
| 187733 | const from_bytes: u6 = @intCast(@divExact(trunc_spec.from.bitSize(cg.target), 8)); |
| 187734 | const to_bytes: u6 = @intCast(@divExact(trunc_spec.to.bitSize(cg.target), 8)); |
| 187735 | var index: u6 = 0; |
| 146046 | 187736 | while (index < elems.len) : (index += from_bytes) @memset(elems[index..][0..to_bytes], std.math.maxInt(u8)); |
| 146047 | 187737 | return .{ try cg.tempMemFromValue(.fromInterned(try pt.intern(.{ .aggregate = .{ |
| 146048 | 187738 | .ty = spec.type.toIntern(), |
| 146049 | 187739 | .storage = .{ .bytes = try zcu.intern_pool.getOrPutString(zcu.gpa, pt.tid, elems, .maybe_embedded_nulls) }, |
| 146050 | 187740 | } }))), true }; |
| 146051 | 187741 | }, |
| 187742 | .pand_mask_mem => |mask_spec| { |
| 187743 | const zcu = pt.zcu; |
| 187744 | assert(spec.type.isVector(zcu) and spec.type.childType(zcu).toIntern() == .u8_type); |
| 187745 | const ref_ty = mask_spec.ref.typeOf(s); |
| 187746 | assert(ref_ty.isVector(zcu)); |
| 187747 | var elem_buf: [64]u8 = undefined; |
| 187748 | const elems = elem_buf[0..spec.type.vectorLen(zcu)]; |
| 187749 | const mask_len: usize = @intCast((cg.unalignedSize(ref_ty) - 1) % elems.len + 1); |
| 187750 | const invert_mask: u8 = switch (mask_spec.invert) { |
| 187751 | false => std.math.minInt(u8), |
| 187752 | true => std.math.maxInt(u8), |
| 187753 | }; |
| 187754 | @memset(elems[0..mask_len], ~invert_mask); |
| 187755 | @memset(elems[mask_len..], invert_mask); |
| 187756 | return .{ try cg.tempMemFromValue(.fromInterned(try pt.intern(.{ .aggregate = .{ |
| 187757 | .ty = spec.type.toIntern(), |
| 187758 | .storage = .{ .bytes = try zcu.intern_pool.getOrPutString(zcu.gpa, pt.tid, elems, .maybe_embedded_nulls) }, |
| 187759 | } }))), true }; |
| 187760 | }, |
| 187761 | .ptest_mask_mem => |mask_ref| { |
| 187762 | const zcu = pt.zcu; |
| 187763 | assert(spec.type.isVector(zcu) and spec.type.childType(zcu).toIntern() == .u8_type); |
| 187764 | const ref_ty = mask_ref.typeOf(s); |
| 187765 | assert(ref_ty.isVector(zcu) and ref_ty.childType(zcu).toIntern() == .bool_type); |
| 187766 | const mask_info = mask_ref.valueOf(s).register_mask.info; |
| 187767 | var elem_buf: [64]u8 = @splat(0); |
| 187768 | const elems = elem_buf[0..spec.type.vectorLen(zcu)]; |
| 187769 | const elem_bytes: u6 = @intCast(@divExact(mask_info.scalar.bitSize(cg.target), 8)); |
| 187770 | var index: u7 = 0; |
| 187771 | for (0..@intCast(ref_ty.vectorLen(zcu))) |_| { |
| 187772 | switch (mask_info.kind) { |
| 187773 | .sign => { |
| 187774 | @memset(elems[index..][0 .. elem_bytes - 1], std.math.minInt(u8)); |
| 187775 | elems[index + elem_bytes - 1] = @bitCast(@as(i8, std.math.minInt(i8))); |
| 187776 | }, |
| 187777 | .all => @memset(elems[index..][0..elem_bytes], std.math.maxInt(u8)), |
| 187778 | } |
| 187779 | index += elem_bytes; |
| 187780 | } |
| 187781 | return .{ try cg.tempMemFromValue(.fromInterned(try pt.intern(.{ .aggregate = .{ |
| 187782 | .ty = spec.type.toIntern(), |
| 187783 | .storage = .{ .bytes = try zcu.intern_pool.getOrPutString(zcu.gpa, pt.tid, elems, .maybe_embedded_nulls) }, |
| 187784 | } }))), true }; |
| 187785 | }, |
| 146052 | 187786 | .pshufb_bswap_mem => |bswap_spec| { |
| 146053 | 187787 | const zcu = pt.zcu; |
| 146054 | | assert(spec.type.isVector(zcu)); |
| 146055 | | assert(spec.type.childType(zcu).toIntern() == .u8_type); |
| 187788 | assert(spec.type.isVector(zcu) and spec.type.childType(zcu).toIntern() == .u8_type); |
| 146056 | 187789 | var elem_buf: [32]u8 = @splat(1 << 7); |
| 146057 | 187790 | const elems = elem_buf[0..spec.type.vectorLen(zcu)]; |
| 146058 | 187791 | const len: usize = @intCast(@divExact(bswap_spec.size.bitSize(cg.target), 8)); |
| 146059 | | var to_index: u32 = 0; |
| 187792 | var to_index: u6 = 0; |
| 146060 | 187793 | for (0..bswap_spec.repeat) |_| for (0..len) |from_index| { |
| 146061 | 187794 | @memset(elems[to_index..][0..bswap_spec.smear], @intCast(len - 1 - from_index)); |
| 146062 | 187795 | to_index += bswap_spec.smear; |
| ... | ... | @@ -146066,22 +187799,70 @@ const Select = struct { |
| 146066 | 187799 | .storage = .{ .bytes = try zcu.intern_pool.getOrPutString(zcu.gpa, pt.tid, elems, .maybe_embedded_nulls) }, |
| 146067 | 187800 | } }))), true }; |
| 146068 | 187801 | }, |
| 146069 | | .forward_bits_mem, .reverse_bits_mem => { |
| 187802 | .bits_mem => |direction| { |
| 146070 | 187803 | const zcu = pt.zcu; |
| 146071 | | assert(spec.type.isVector(zcu)); |
| 146072 | | assert(spec.type.childType(zcu).toIntern() == .u8_type); |
| 187804 | assert(spec.type.isVector(zcu) and spec.type.childType(zcu).toIntern() == .u8_type); |
| 146073 | 187805 | var bytes: [32]u8 = undefined; |
| 146074 | 187806 | const elems = bytes[0..spec.type.vectorLen(zcu)]; |
| 146075 | | for (elems, 0..) |*elem, index| elem.* = switch (spec.kind) { |
| 146076 | | else => unreachable, |
| 146077 | | .forward_bits_mem => @as(u8, 1 << 0) << @truncate(index), |
| 146078 | | .reverse_bits_mem => @as(u8, 1 << 7) >> @truncate(index), |
| 187807 | for (elems, 0..) |*elem, index| elem.* = switch (direction) { |
| 187808 | .forward => @as(u8, 1 << 0) << @truncate(index), |
| 187809 | .reverse => @as(u8, 1 << 7) >> @truncate(index), |
| 146079 | 187810 | }; |
| 146080 | 187811 | return .{ try cg.tempMemFromValue(.fromInterned(try pt.intern(.{ .aggregate = .{ |
| 146081 | 187812 | .ty = spec.type.toIntern(), |
| 146082 | 187813 | .storage = .{ .bytes = try zcu.intern_pool.getOrPutString(zcu.gpa, pt.tid, elems, .maybe_embedded_nulls) }, |
| 146083 | 187814 | } }))), true }; |
| 146084 | 187815 | }, |
| 187816 | .splat_int_mem => |splat_spec| { |
| 187817 | const zcu = pt.zcu; |
| 187818 | const elem_ty = spec.type.scalarType(zcu); |
| 187819 | const elem_bits = cg.intInfo(elem_ty).?.bits; |
| 187820 | const ref_ty = splat_spec.ref.typeOf(s); |
| 187821 | assert(ref_ty.isVector(zcu) and cg.intInfo(ref_ty.childType(zcu)).?.bits <= elem_bits); |
| 187822 | var elem_buf: [64]InternPool.Index = undefined; |
| 187823 | const elems = elem_buf[0..if (elem_ty.toIntern() == spec.type.toIntern()) 1 else spec.type.vectorLen(zcu)]; |
| 187824 | const inside_len = (ref_ty.vectorLen(zcu) - 1) % elems.len + 1; |
| 187825 | @memset(elems[0..inside_len], (try pt.intValue(elem_ty, @as(i64, switch (splat_spec.inside) { |
| 187826 | .umin => 0, |
| 187827 | .smin => std.math.minInt(i64), |
| 187828 | .smax => std.math.maxInt(i64), |
| 187829 | }) >> @intCast(64 - elem_bits))).toIntern()); |
| 187830 | @memset(elems[inside_len..], (try pt.intValue(elem_ty, @as(i64, switch (splat_spec.outside) { |
| 187831 | .smin => std.math.minInt(i64), |
| 187832 | .smax => std.math.maxInt(i64), |
| 187833 | }) >> @intCast(64 - elem_bits))).toIntern()); |
| 187834 | if (elems.len == 1) return .{ try cg.tempMemFromValue(.fromInterned(elems[0])), true }; |
| 187835 | const mem_size = cg.unalignedSize(spec.type); |
| 187836 | return .{ try cg.tempMemFromAlignedValue( |
| 187837 | if (mem_size < 16) .fromByteUnits(mem_size) else .none, |
| 187838 | .fromInterned(try pt.intern(.{ .aggregate = .{ |
| 187839 | .ty = if (mem_size < 16) |
| 187840 | (try pt.arrayType(.{ .len = elems.len, .child = elem_ty.toIntern() })).toIntern() |
| 187841 | else |
| 187842 | spec.type.toIntern(), |
| 187843 | .storage = .{ .elems = elems }, |
| 187844 | } })), |
| 187845 | ), true }; |
| 187846 | }, |
| 187847 | .splat_float_mem => |splat_spec| { |
| 187848 | const zcu = pt.zcu; |
| 187849 | assert(spec.type.isVector(zcu)); |
| 187850 | const elem_ty = spec.type.childType(zcu); |
| 187851 | assert(cg.floatBits(elem_ty) != null); |
| 187852 | const ref_ty = splat_spec.ref.typeOf(s); |
| 187853 | assert(ref_ty.isVector(zcu) and ref_ty.childType(zcu).toIntern() == elem_ty.toIntern()); |
| 187854 | var elem_buf: [@divExact(64, 2)]InternPool.Index = undefined; |
| 187855 | const elems = elem_buf[0..spec.type.vectorLen(zcu)]; |
| 187856 | const inside_len = (ref_ty.vectorLen(zcu) - 1) % elems.len + 1; |
| 187857 | @memset(elems[0..inside_len], (try pt.floatValue(elem_ty, @as(f16, switch (splat_spec.inside) { |
| 187858 | .zero => 0.0, |
| 187859 | }))).toIntern()); |
| 187860 | @memset(elems[inside_len..], (try pt.floatValue(elem_ty, splat_spec.outside)).toIntern()); |
| 187861 | return .{ try cg.tempMemFromValue(.fromInterned(try pt.intern(.{ .aggregate = .{ |
| 187862 | .ty = spec.type.toIntern(), |
| 187863 | .storage = .{ .elems = elems }, |
| 187864 | } }))), true }; |
| 187865 | }, |
| 146085 | 187866 | .frame => |frame_index| .{ try cg.tempInit(spec.type, .{ .load_frame = .{ .index = frame_index } }), true }, |
| 146086 | 187867 | .lazy_symbol => |lazy_symbol_spec| { |
| 146087 | 187868 | const ip = &pt.zcu.intern_pool; |
| ... | ... | @@ -146170,6 +187951,7 @@ const Select = struct { |
| 146170 | 187951 | unaligned_size, |
| 146171 | 187952 | unaligned_size_add_elem_size, |
| 146172 | 187953 | unaligned_size_sub_elem_size, |
| 187954 | unaligned_size_sub_2_elem_size, |
| 146173 | 187955 | bit_size, |
| 146174 | 187956 | src0_bit_size, |
| 146175 | 187957 | @"8_size_sub_bit_size", |
| ... | ... | @@ -146182,6 +187964,7 @@ const Select = struct { |
| 146182 | 187964 | src1, |
| 146183 | 187965 | src1_sub_bit_size, |
| 146184 | 187966 | log2_src0_elem_size, |
| 187967 | elem_mask, |
| 146185 | 187968 | smin, |
| 146186 | 187969 | smax, |
| 146187 | 187970 | umax, |
| ... | ... | @@ -146213,9 +187996,15 @@ const Select = struct { |
| 146213 | 187996 | const sub_unaligned_size: Adjust = .{ .sign = .neg, .lhs = .unaligned_size, .op = .mul, .rhs = .@"1" }; |
| 146214 | 187997 | const add_unaligned_size_add_elem_size: Adjust = .{ .sign = .pos, .lhs = .unaligned_size_add_elem_size, .op = .mul, .rhs = .@"1" }; |
| 146215 | 187998 | const add_unaligned_size_sub_elem_size: Adjust = .{ .sign = .pos, .lhs = .unaligned_size_sub_elem_size, .op = .mul, .rhs = .@"1" }; |
| 187999 | const add_unaligned_size_sub_2_elem_size: Adjust = .{ .sign = .pos, .lhs = .unaligned_size_sub_2_elem_size, .op = .mul, .rhs = .@"1" }; |
| 146216 | 188000 | const add_2_bit_size: Adjust = .{ .sign = .pos, .lhs = .bit_size, .op = .mul, .rhs = .@"2" }; |
| 146217 | 188001 | const add_bit_size: Adjust = .{ .sign = .pos, .lhs = .bit_size, .op = .mul, .rhs = .@"1" }; |
| 188002 | const add_bit_size_rem_8: Adjust = .{ .sign = .pos, .lhs = .bit_size, .op = .rem_8_mul, .rhs = .@"1" }; |
| 146218 | 188003 | const add_bit_size_rem_64: Adjust = .{ .sign = .pos, .lhs = .bit_size, .op = .rem_8_mul, .rhs = .@"8" }; |
| 188004 | const add_bit_size_div_8: Adjust = .{ .sign = .pos, .lhs = .bit_size, .op = .div, .rhs = .@"8" }; |
| 188005 | const add_bit_size_div_8_down_1: Adjust = .{ .sign = .pos, .lhs = .bit_size, .op = .div_8_down, .rhs = .@"1" }; |
| 188006 | const add_bit_size_div_8_down_2: Adjust = .{ .sign = .pos, .lhs = .bit_size, .op = .div_8_down, .rhs = .@"2" }; |
| 188007 | const add_bit_size_div_8_down_8: Adjust = .{ .sign = .pos, .lhs = .bit_size, .op = .div_8_down, .rhs = .@"8" }; |
| 146219 | 188008 | const sub_bit_size_rem_64: Adjust = .{ .sign = .neg, .lhs = .bit_size, .op = .rem_8_mul, .rhs = .@"8" }; |
| 146220 | 188009 | const sub_bit_size: Adjust = .{ .sign = .neg, .lhs = .bit_size, .op = .mul, .rhs = .@"1" }; |
| 146221 | 188010 | const add_src0_bit_size: Adjust = .{ .sign = .pos, .lhs = .src0_bit_size, .op = .mul, .rhs = .@"1" }; |
| ... | ... | @@ -146227,6 +188016,7 @@ const Select = struct { |
| 146227 | 188016 | const add_2_len: Adjust = .{ .sign = .pos, .lhs = .len, .op = .mul, .rhs = .@"2" }; |
| 146228 | 188017 | const add_len: Adjust = .{ .sign = .pos, .lhs = .len, .op = .mul, .rhs = .@"1" }; |
| 146229 | 188018 | const sub_len: Adjust = .{ .sign = .neg, .lhs = .len, .op = .mul, .rhs = .@"1" }; |
| 188019 | const add_elem_limbs: Adjust = .{ .sign = .pos, .lhs = .elem_limbs, .op = .mul, .rhs = .@"1" }; |
| 146230 | 188020 | const add_elem_size: Adjust = .{ .sign = .pos, .lhs = .elem_size, .op = .mul, .rhs = .@"1" }; |
| 146231 | 188021 | const add_elem_size_div_8: Adjust = .{ .sign = .pos, .lhs = .elem_size, .op = .div, .rhs = .@"8" }; |
| 146232 | 188022 | const sub_elem_size_div_8: Adjust = .{ .sign = .neg, .lhs = .elem_size, .op = .div, .rhs = .@"8" }; |
| ... | ... | @@ -146240,13 +188030,13 @@ const Select = struct { |
| 146240 | 188030 | const sub_src0_elem_size: Adjust = .{ .sign = .neg, .lhs = .src0_elem_size, .op = .mul, .rhs = .@"1" }; |
| 146241 | 188031 | const add_src0_elem_size_mul_src1: Adjust = .{ .sign = .pos, .lhs = .src0_elem_size_mul_src1, .op = .mul, .rhs = .@"1" }; |
| 146242 | 188032 | const sub_src0_elem_size_mul_src1: Adjust = .{ .sign = .neg, .lhs = .src0_elem_size_mul_src1, .op = .mul, .rhs = .@"1" }; |
| 188033 | const add_dst0_elem_size: Adjust = .{ .sign = .pos, .lhs = .dst0_elem_size, .op = .mul, .rhs = .@"1" }; |
| 146243 | 188034 | const add_src1_div_8_down_4: Adjust = .{ .sign = .pos, .lhs = .src1, .op = .div_8_down, .rhs = .@"4" }; |
| 146244 | 188035 | const add_src1_rem_32: Adjust = .{ .sign = .pos, .lhs = .src1, .op = .rem_8_mul, .rhs = .@"4" }; |
| 146245 | 188036 | const add_src1_rem_64: Adjust = .{ .sign = .pos, .lhs = .src1, .op = .rem_8_mul, .rhs = .@"8" }; |
| 146246 | 188037 | const add_src1_sub_bit_size: Adjust = .{ .sign = .pos, .lhs = .src1_sub_bit_size, .op = .mul, .rhs = .@"1" }; |
| 146247 | 188038 | const add_log2_src0_elem_size: Adjust = .{ .sign = .pos, .lhs = .log2_src0_elem_size, .op = .mul, .rhs = .@"1" }; |
| 146248 | | const add_dst0_elem_size: Adjust = .{ .sign = .pos, .lhs = .dst0_elem_size, .op = .mul, .rhs = .@"1" }; |
| 146249 | | const add_elem_limbs: Adjust = .{ .sign = .pos, .lhs = .elem_limbs, .op = .mul, .rhs = .@"1" }; |
| 188039 | const elem_mask: Adjust = .{ .sign = .pos, .lhs = .elem_mask, .op = .mul, .rhs = .@"1" }; |
| 146250 | 188040 | const add_smin: Adjust = .{ .sign = .pos, .lhs = .smin, .op = .mul, .rhs = .@"1" }; |
| 146251 | 188041 | const add_2_smin: Adjust = .{ .sign = .pos, .lhs = .smin, .op = .mul, .rhs = .@"2" }; |
| 146252 | 188042 | const sub_smin: Adjust = .{ .sign = .neg, .lhs = .smin, .op = .mul, .rhs = .@"1" }; |
| ... | ... | @@ -146736,6 +188526,9 @@ const Select = struct { |
| 146736 | 188526 | fn uia(imm: u32, base: Ref.Sized, adjust: Adjust) Select.Operand { |
| 146737 | 188527 | return .{ .flags = .{ .tag = .uimm, .adjust = adjust, .base = base }, .imm = @bitCast(imm) }; |
| 146738 | 188528 | } |
| 188529 | fn uas(base: Ref.Sized, scale: Memory.Scale, adjust: Adjust) Select.Operand { |
| 188530 | return .{ .flags = .{ .tag = .uimm, .adjust = adjust, .base = base, .index = .{ .scale = scale } } }; |
| 188531 | } |
| 146739 | 188532 | |
| 146740 | 188533 | fn rm(mode: bits.RoundMode) Select.Operand { |
| 146741 | 188534 | return .{ .flags = .{ .tag = .uimm }, .imm = @intCast(mode.imm().unsigned) }; |
| ... | ... | @@ -147004,8 +188797,12 @@ const Select = struct { |
| 147004 | 188797 | const ty = op.flags.base.ref.typeOf(s); |
| 147005 | 188798 | break :lhs @intCast(s.cg.unalignedSize(ty) - ty.elemType2(s.cg.pt.zcu).abiSize(s.cg.pt.zcu)); |
| 147006 | 188799 | }, |
| 147007 | | .bit_size => @intCast(op.flags.base.ref.typeOf(s).scalarType(s.cg.pt.zcu).bitSize(s.cg.pt.zcu)), |
| 147008 | | .src0_bit_size => @intCast(Select.Operand.Ref.src0.typeOf(s).scalarType(s.cg.pt.zcu).bitSize(s.cg.pt.zcu)), |
| 188800 | .unaligned_size_sub_2_elem_size => { |
| 188801 | const ty = op.flags.base.ref.typeOf(s); |
| 188802 | break :lhs @intCast(s.cg.unalignedSize(ty) - ty.elemType2(s.cg.pt.zcu).abiSize(s.cg.pt.zcu) * 2); |
| 188803 | }, |
| 188804 | .bit_size => @intCast(s.cg.nonBoolScalarBitSize(op.flags.base.ref.typeOf(s))), |
| 188805 | .src0_bit_size => @intCast(s.cg.nonBoolScalarBitSize(Select.Operand.Ref.src0.typeOf(s))), |
| 147009 | 188806 | .@"8_size_sub_bit_size" => { |
| 147010 | 188807 | const ty = op.flags.base.ref.typeOf(s); |
| 147011 | 188808 | break :lhs @intCast(8 * ty.abiSize(s.cg.pt.zcu) - ty.bitSize(s.cg.pt.zcu)); |
| ... | ... | @@ -147022,26 +188819,40 @@ const Select = struct { |
| 147022 | 188819 | Select.Operand.Ref.src1.valueOf(s).immediate), |
| 147023 | 188820 | .src1 => @intCast(Select.Operand.Ref.src1.valueOf(s).immediate), |
| 147024 | 188821 | .src1_sub_bit_size => @as(SignedImm, @intCast(Select.Operand.Ref.src1.valueOf(s).immediate)) - |
| 147025 | | @as(SignedImm, @intCast(op.flags.base.ref.typeOf(s).scalarType(s.cg.pt.zcu).bitSize(s.cg.pt.zcu))), |
| 188822 | @as(SignedImm, @intCast(s.cg.nonBoolScalarBitSize(op.flags.base.ref.typeOf(s)))), |
| 147026 | 188823 | .log2_src0_elem_size => @intCast(std.math.log2(Select.Operand.Ref.src0.typeOf(s).elemType2(s.cg.pt.zcu).abiSize(s.cg.pt.zcu))), |
| 147027 | | .smin => @as(SignedImm, std.math.minInt(SignedImm)) >> @truncate( |
| 147028 | | -%op.flags.base.ref.typeOf(s).scalarType(s.cg.pt.zcu).bitSize(s.cg.pt.zcu), |
| 147029 | | ), |
| 147030 | | .smax => @as(SignedImm, std.math.maxInt(SignedImm)) >> @truncate( |
| 147031 | | -%op.flags.base.ref.typeOf(s).scalarType(s.cg.pt.zcu).bitSize(s.cg.pt.zcu), |
| 147032 | | ), |
| 147033 | | .umax => @bitCast(@as(UnsignedImm, std.math.maxInt(UnsignedImm)) >> @truncate( |
| 147034 | | -%op.flags.base.ref.typeOf(s).scalarType(s.cg.pt.zcu).bitSize(s.cg.pt.zcu), |
| 147035 | | )), |
| 147036 | | .smax_shr_src1 => @as(SignedImm, std.math.maxInt(SignedImm)) >> @truncate( |
| 147037 | | Select.Operand.Ref.src1.valueOf(s).immediate -% op.flags.base.ref.typeOf(s).scalarType(s.cg.pt.zcu).bitSize(s.cg.pt.zcu), |
| 188824 | .elem_mask => @as(u8, std.math.maxInt(u8)) >> @intCast( |
| 188825 | 8 - ((s.cg.unalignedSize(op.flags.base.ref.typeOf(s)) - 1) % |
| 188826 | @divExact(op.flags.base.size.bitSize(s.cg.target), 8) + 1 >> |
| 188827 | op.flags.index.scale.toLog2()), |
| 147038 | 188828 | ), |
| 147039 | | .smin_shr_src1 => @as(SignedImm, std.math.minInt(SignedImm)) >> @truncate( |
| 147040 | | Select.Operand.Ref.src1.valueOf(s).immediate -% op.flags.base.ref.typeOf(s).scalarType(s.cg.pt.zcu).bitSize(s.cg.pt.zcu), |
| 147041 | | ), |
| 147042 | | .umax_shr_src1 => @bitCast(@as(UnsignedImm, std.math.maxInt(UnsignedImm)) >> @truncate( |
| 147043 | | Select.Operand.Ref.src1.valueOf(s).immediate -% op.flags.base.ref.typeOf(s).scalarType(s.cg.pt.zcu).bitSize(s.cg.pt.zcu), |
| 147044 | | )), |
| 188829 | inline .smin, .smax, .umax, .smin_shr_src1, .smax_shr_src1, .umax_shr_src1 => |adjust| switch (op.flags.base.size) { |
| 188830 | else => unreachable, |
| 188831 | inline .none, .byte, .word, .dword, .qword => |size| { |
| 188832 | const Imm = switch (adjust) { |
| 188833 | else => comptime unreachable, |
| 188834 | .smin, .smax, .smin_shr_src1, .smax_shr_src1 => SignedImm, |
| 188835 | .umax, .umax_shr_src1 => UnsignedImm, |
| 188836 | }; |
| 188837 | const RefImm = switch (size) { |
| 188838 | else => comptime unreachable, |
| 188839 | .none => Imm, |
| 188840 | .byte, .word, .dword, .qword => @Type(comptime .{ .int = .{ |
| 188841 | .signedness = @typeInfo(Imm).int.signedness, |
| 188842 | .bits = size.bitSize(undefined), |
| 188843 | } }), |
| 188844 | }; |
| 188845 | break :lhs @bitCast(@as(Imm, @intCast(@as(RefImm, switch (adjust) { |
| 188846 | else => comptime unreachable, |
| 188847 | .smin, .smin_shr_src1 => std.math.minInt, |
| 188848 | .smax, .umax, .smax_shr_src1, .umax_shr_src1 => std.math.maxInt, |
| 188849 | }(RefImm)) >> @truncate(switch (adjust) { |
| 188850 | else => comptime unreachable, |
| 188851 | .smin, .smax, .umax => 0, |
| 188852 | .smin_shr_src1, .smax_shr_src1, .umax_shr_src1 => Select.Operand.Ref.src1.valueOf(s).immediate, |
| 188853 | } -% s.cg.nonBoolScalarBitSize(op.flags.base.ref.typeOf(s)))))); |
| 188854 | }, |
| 188855 | }, |
| 147045 | 188856 | .repeat => switch (SignedImm) { |
| 147046 | 188857 | else => unreachable, |
| 147047 | 188858 | i64 => return @as(i64, op.imm) << 32 | @as(u32, @bitCast(op.imm)), |
| ... | ... | @@ -147084,6 +188895,7 @@ const Select = struct { |
| 147084 | 188895 | } }, |
| 147085 | 188896 | else => |mcv| .{ .mem = try mcv.mem(s.cg, .{ .size = op.flags.base.size }) }, |
| 147086 | 188897 | .register => |reg| .{ .reg = s.lowerReg(reg.toSize(op.flags.base.size, s.cg.target)) }, |
| 188898 | .register_mask => |reg_mask| .{ .reg = s.lowerReg(reg_mask.reg.toSize(op.flags.base.size, s.cg.target)) }, |
| 147087 | 188899 | .lea_symbol => |sym_off| .{ .imm = .rel(sym_off) }, |
| 147088 | 188900 | }, |
| 147089 | 188901 | .simm => .{ .imm = .s(op.adjustedImm(i32, s)) }, |
| ... | ... | @@ -147252,7 +189064,10 @@ fn select( |
| 147252 | 189064 | }, |
| 147253 | 189065 | } |
| 147254 | 189066 | } |
| 147255 | | for (dst_temps, case.dst_temps[0..dst_temps.len]) |dst_temp, tmp_kind| tmp_kind.finish(dst_temp, cg); |
| 189067 | for (case.dst_temps[0..dst_temps.len], dst_temps, dst_tys) |tmp_kind, dst_temp, dst_ty| { |
| 189068 | tmp_kind.finish(dst_temp, cg); |
| 189069 | cg.temp_type[@intFromEnum(dst_temp.unwrap(cg).temp)] = dst_ty; |
| 189070 | } |
| 147256 | 189071 | for (tmp_owned, s_tmp_temps) |owned, temp| if (owned) try temp.die(cg); |
| 147257 | 189072 | return; |
| 147258 | 189073 | } |