Commit fa9b0fa6d3

Jacob Young <jacobly0@users.noreply.github.com>
2025-02-04 12:33:36
x86_64: rewrite most of the remaining float ops
1 parent 3911908
Changed files (8)
src/arch/x86_64/bits.zig
@@ -177,7 +177,13 @@ pub const Condition = enum(u5) {
 
 /// The immediate operand of vcvtps2ph.
 pub const RoundMode = packed struct(u5) {
-    mode: enum(u4) {
+    direction: Direction = .mxcsr,
+    precision: enum(u1) {
+        normal = 0b0,
+        inexact = 0b1,
+    } = .normal,
+
+    pub const Direction = enum(u4) {
         /// Round to nearest (even)
         nearest = 0b0_00,
         /// Round down (toward -∞)
@@ -188,11 +194,7 @@ pub const RoundMode = packed struct(u5) {
         zero = 0b0_11,
         /// Use current rounding mode of MXCSR.RC
         mxcsr = 0b1_00,
-    } = .mxcsr,
-    precision: enum(u1) {
-        normal = 0b0,
-        inexact = 0b1,
-    } = .normal,
+    };
 
     pub fn imm(mode: RoundMode) Immediate {
         return .u(@as(@typeInfo(RoundMode).@"struct".backing_integer.?, @bitCast(mode)));
src/arch/x86_64/CodeGen.zig
@@ -2414,7 +2414,7 @@ fn genBodyBlock(self: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
 }
 
 fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
-    @setEvalBranchQuota(5_500);
+    @setEvalBranchQuota(9_200);
     const pt = cg.pt;
     const zcu = pt.zcu;
     const ip = &zcu.intern_pool;
@@ -2450,23 +2450,15 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
         try cg.inst_tracking.ensureUnusedCapacity(cg.gpa, 1);
         switch (air_tags[@intFromEnum(inst)]) {
             // zig fmt: off
-            .add,
             .add_wrap,
-            .sub,
             .sub_wrap,
             => |air_tag| try cg.airBinOp(inst, air_tag),
 
             .shr, .shr_exact => try cg.airShlShrBinOp(inst),
             .shl, .shl_exact => try cg.airShlShrBinOp(inst),
 
-            .mul,
             .mul_wrap,
-            .rem,
             .mod,
-            .div_float,
-            .div_trunc,
-            .div_floor,
-            .div_exact,
             => |air_tag| try cg.airMulDivBinOp(inst, air_tag),
 
             .add_sat         => try cg.airAddSat(inst),
@@ -2474,23 +2466,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
             .mul_sat         => try cg.airMulSat(inst),
             .shl_sat         => try cg.airShlSat(inst),
 
-            .sin,
-            .cos,
-            .tan,
-            .exp,
-            .exp2,
-            .log,
-            .log2,
-            .log10,
-            .round,
-            => |air_tag| try cg.airUnaryMath(inst, air_tag),
-
-            .floor       => try cg.airRound(inst, .{ .mode = .down, .precision = .inexact }),
-            .ceil        => try cg.airRound(inst, .{ .mode = .up, .precision = .inexact }),
-            .trunc_float => try cg.airRound(inst, .{ .mode = .zero, .precision = .inexact }),
-            .sqrt        => try cg.airSqrt(inst),
-            .neg         => |air_tag| try cg.airFloatSign(inst, air_tag),
-
             .add_with_overflow => try cg.airAddSubWithOverflow(inst),
             .sub_with_overflow => try cg.airAddSubWithOverflow(inst),
             .mul_with_overflow => try cg.airMulWithOverflow(inst),
@@ -2524,7 +2499,6 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
             .reduce           => try cg.airReduce(inst),
             .aggregate_init   => try cg.airAggregateInit(inst),
             .prefetch         => try cg.airPrefetch(inst),
-            .mul_add          => try cg.airMulAdd(inst),
 
             .atomic_store_unordered => try cg.airAtomicStore(inst, .unordered),
             .atomic_store_monotonic => try cg.airAtomicStore(inst, .monotonic),
@@ -2548,16 +2522,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
             .intcast_safe,
             => return cg.fail("TODO implement safety_checked_instructions", .{}),
 
-            .add_optimized => try cg.airBinOp(inst, .add),
-            .sub_optimized => try cg.airBinOp(inst, .sub),
-            .mul_optimized => try cg.airBinOp(inst, .mul),
-            .div_float_optimized => try cg.airMulDivBinOp(inst, .div_float),
-            .div_trunc_optimized => try cg.airMulDivBinOp(inst, .div_trunc),
-            .div_floor_optimized => try cg.airMulDivBinOp(inst, .div_floor),
-            .div_exact_optimized => try cg.airMulDivBinOp(inst, .div_exact),
-            .rem_optimized => try cg.airMulDivBinOp(inst, .rem),
             .mod_optimized => try cg.airMulDivBinOp(inst, .mod),
-            .neg_optimized => try cg.airFloatSign(inst, .neg),
             .reduce_optimized => try cg.airReduce(inst),
             .int_from_float_optimized => try cg.airIntFromFloat(inst),
 
@@ -2575,490 +2540,661 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     if (arg != .none) break;
                 } else try cg.airDbgVarArgs();
             },
-            .ptr_add => |air_tag| if (use_old) try cg.airPtrArithmetic(inst, air_tag) else {
-                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
-                const bin_op = cg.air.extraData(Air.Bin, ty_pl.payload).data;
+            .add, .add_optimized => |air_tag| if (use_old) try cg.airBinOp(inst, .add) else fallback: {
+                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
+                if (cg.floatBits(cg.typeOf(bin_op.lhs).scalarType(zcu)) == null) break :fallback try cg.airBinOp(inst, air_tag);
                 var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
-                try ops[0].toSlicePtr(cg);
                 var res: [1]Temp = undefined;
-                if (ty_pl.ty.toType().elemType2(zcu).hasRuntimeBitsIgnoreComptime(zcu)) cg.select(&res, &.{ty_pl.ty.toType()}, &ops, comptime &.{ .{
-                    .patterns = &.{
-                        .{ .src = .{ .to_gpr, .simm32 } },
+                cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, comptime &.{ .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .dst0p, .leaa(.src0, .add_src0_elem_size_times_src1), ._, ._ },
-                    } },
-                }, .{
-                    .dst_constraints = .{.{ .elem_size_is = 1 }},
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .extra_temps = .{
+                        .{ .type = .f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .src1), ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                        .{ ._, .v_ss, .add, .dst0x, .dst0x, .tmp0d, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.{ .elem_size_is = 2 }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addhf3" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .dst0p, .leasi(.src0, .@"2", .src1), ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.{ .elem_size_is = 2 + 1 }},
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .extra_temps = .{
+                        .{ .type = .vector_4_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .dst0p, .leasi(.src1, .@"2", .src1), ._, ._ },
-                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                        .{ ._, .v_ps, .add, .dst0x, .dst0x, .tmp0x, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.{ .elem_size_is = 4 }},
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .extra_temps = .{
+                        .{ .type = .vector_8_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .dst0p, .leasi(.src0, .@"4", .src1), ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0y, .src1x, ._, ._ },
+                        .{ ._, .v_ps, .add, .dst0y, .dst0y, .tmp0y, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.{ .elem_size_is = 4 + 1 }},
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src1 }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .dst0p, .leasi(.src1, .@"4", .src1), ._, ._ },
-                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp2y, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .add, .tmp1y, .tmp1y, .tmp2y, ._ },
+                        .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .dst_constraints = .{.{ .elem_size_is = 8 }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addhf3" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .dst0p, .leasi(.src0, .@"8", .src1), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ },
+                        .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .dst_constraints = .{.{ .elem_size_is = 8 + 1 }},
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src1 }},
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addhf3" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .dst0p, .leasi(.src1, .@"8", .src1), ._, ._ },
-                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.po2_elem_size},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_mut_gpr } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src1 }},
-                    .clobbers = .{ .eflags = true },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addhf3" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._l, .sh, .src1p, .sa(.none, .add_log2_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .src1), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .tmp4d, .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, .i_, .mul, .dst0p, .src1p, .sa(.none, .add_src0_elem_size), ._ },
-                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
-                    } },
-                } }) catch |err| switch (err) {
-                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
-                        @tagName(air_tag),
-                        cg.typeOf(bin_op.lhs).fmt(pt),
-                        ops[0].tracking(cg),
-                        ops[1].tracking(cg),
-                    }),
-                    else => |e| return e,
-                } else { // hack around Sema OPV bugs
-                    res[0] = ops[0];
-                }
-                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
-            },
-            .ptr_sub => |air_tag| if (use_old) try cg.airPtrArithmetic(inst, air_tag) else {
-                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
-                const bin_op = cg.air.extraData(Air.Bin, ty_pl.payload).data;
-                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
-                try ops[0].toSlicePtr(cg);
-                var res: [1]Temp = undefined;
-                if (ty_pl.ty.toType().elemType2(zcu).hasRuntimeBitsIgnoreComptime(zcu)) cg.select(&res, &.{ty_pl.ty.toType()}, &ops, comptime &.{ .{
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .simm32 } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addhf3" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .dst0p, .leaa(.src0, .sub_src0_elem_size_times_src1), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .movzx, .tmp1d, .memia(.src1w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp4x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.{ .elem_size_is = 1 }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_mut_gpr } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src1 }},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .neg, .src1p, ._, ._, ._ },
-                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .src1), ._, ._ },
+                        .{ ._, .v_ss, .add, .dst0x, .src0x, .src1d, ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.{ .elem_size_is = 2 }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_mut_gpr } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src1 }},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .neg, .src1p, ._, ._, ._ },
-                        .{ ._, ._, .lea, .dst0p, .leasi(.src0, .@"2", .src1), ._, ._ },
+                        .{ ._, ._ss, .add, .dst0x, .src1d, ._, ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.{ .elem_size_is = 2 + 1 }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .dst0p, .leasi(.src1, .@"2", .src1), ._, ._ },
-                        .{ ._, ._, .neg, .dst0p, ._, ._, ._ },
-                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                        .{ ._, .v_ps, .add, .dst0x, .src0x, .src1x, ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.{ .elem_size_is = 4 }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_mut_gpr } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src1 }},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .neg, .src1p, ._, ._, ._ },
-                        .{ ._, ._, .lea, .dst0p, .leasi(.src0, .@"4", .src1), ._, ._ },
+                        .{ ._, ._ps, .add, .dst0x, .src1x, ._, ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.{ .elem_size_is = 4 + 1 }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .dst0p, .leasi(.src1, .@"4", .src1), ._, ._ },
-                        .{ ._, ._, .neg, .dst0p, ._, ._, ._ },
-                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                        .{ ._, .v_ps, .add, .dst0y, .src0y, .src1y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .dst_constraints = .{.{ .elem_size_is = 8 }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_mut_gpr } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src1 }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .neg, .src1p, ._, ._, ._ },
-                        .{ ._, ._, .lea, .dst0p, .leasi(.src0, .@"8", .src1), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .add, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .dst_constraints = .{.{ .elem_size_is = 8 + 1 }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .dst0p, .leasi(.src1, .@"8", .src1), ._, ._ },
-                        .{ ._, ._, .neg, .dst0p, ._, ._, ._ },
-                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .add, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.po2_elem_size},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_mut_gpr } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src1 }},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._l, .sa, .src1p, .sa(.none, .add_log2_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .neg, .src1p, ._, ._, ._ },
-                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .src1), ._, ._ },
+                        .{ ._, .v_sd, .add, .dst0x, .src0x, .src1q, ._ },
                     } },
                 }, .{
-                    .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, .i_, .mul, .dst0p, .src1p, .sa(.none, .sub_src0_elem_size), ._ },
-                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
-                    } },
-                } }) catch |err| switch (err) {
-                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
-                        @tagName(air_tag),
-                        cg.typeOf(bin_op.lhs).fmt(pt),
-                        ops[0].tracking(cg),
-                        ops[1].tracking(cg),
-                    }),
-                    else => |e| return e,
-                } else {
-                    // hack around Sema OPV bugs
-                    res[0] = ops[0];
-                }
-                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
-            },
-            .max => |air_tag| if (use_old) try cg.airBinOp(inst, air_tag) else {
-                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
-                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
-                var res: [1]Temp = undefined;
-                cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, comptime &.{ .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte } },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
-                        .{ ._, ._l, .cmov, .dst0d, .src1d, ._, ._ },
+                        .{ ._, ._sd, .add, .dst0x, .src1q, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte } },
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .mem, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
+                    .extra_temps = .{
+                        .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f64, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
-                        .{ ._, ._nl, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0b, .src1b, ._, ._ },
+                        .{ ._, .f_, .ld, .src0q, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src1q, ._, ._, ._ },
+                        .{ ._, .f_p, .add, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0q, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte } },
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
-                        .{ ._, ._b, .cmov, .dst0d, .src1d, ._, ._ },
+                        .{ ._, .v_pd, .add, .dst0x, .src0x, .src1x, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte } },
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
-                        .{ ._, ._nb, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0b, .src1b, ._, ._ },
+                        .{ ._, ._pd, .add, .dst0x, .src1x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word } },
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
-                        .{ ._, ._l, .cmov, .dst0w, .src1w, ._, ._ },
+                        .{ ._, .v_pd, .add, .dst0y, .src0y, .src1y, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word } },
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
-                        .{ ._, ._nl, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0w, .src1w, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
-                        .{ ._, ._b, .cmov, .dst0w, .src1w, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
-                        .{ ._, ._nb, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0w, .src1w, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
-                        .{ ._, ._l, .cmov, .dst0d, .src1d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_pd, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_pd, .add, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
-                        .{ ._, ._nl, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0d, .src1d, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword } },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
-                        .{ ._, ._b, .cmov, .dst0d, .src1d, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
-                        .{ ._, ._nb, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0d, .src1d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._pd, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._pd, .add, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
-                        .{ ._, ._l, .cmov, .dst0q, .src1q, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword } },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
-                        .{ ._, ._nl, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0q, .src1q, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f64, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.mem},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
-                        .{ ._, ._b, .cmov, .dst0q, .src1q, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_, .ld, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .add, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
-                        .{ ._, ._nb, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0q, .src1q, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .any_signed_int, .any_signed_int },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .mem, .mem, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -3066,34 +3202,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .rc = .x87 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sia(1, .src0, .sub_size_div_8), ._, ._ },
-                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp1q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp1q, .memad(.src1q, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src1), ._, ._ },
-                        .{ ._, ._l, .cmov, .tmp0p, .tmp1p, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src1t, ._, ._, ._ },
+                        .{ ._, .f_p, .add, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_signed_int, .any_signed_int },
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_x87, .none } },
+                        .{ .src = .{ .to_x87, .to_x87, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -3101,34 +3232,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .rc = .x87 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sia(1, .src0, .sub_size_div_8), ._, ._ },
-                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp1q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp1q, .memad(.src1q, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._nl, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src1), ._, ._ },
-                        .{ .@"0:", ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .add, .tmp0t, .src1t, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .any_unsigned_int, .any_unsigned_int },
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -3137,31 +3260,30 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size_div_8), ._, ._ },
-                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"8", .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp1q, .memsia(.src1q, .@"8", .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src1), ._, ._ },
-                        .{ ._, ._b, .cmov, .tmp0p, .tmp1p, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_, .ld, .memia(.src1t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .add, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_unsigned_int, .any_unsigned_int },
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addtf3" } } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -3169,100 +3291,93 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size_div_8), ._, ._ },
-                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"8", .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp1q, .memsia(.src1q, .@"8", .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._nb, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src1), ._, ._ },
-                        .{ .@"0:", ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .rc = .sse }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_b, .maxs, .dst0x, .src0x, .src1x, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addtf3" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, .p_b, .maxs, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .rc = .sse }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._dqa, .mov, .dst0x, .src0x, ._, ._ },
-                        .{ ._, .p_b, .cmpgt, .dst0x, .src1x, ._, ._ },
-                        .{ ._, .p_, .@"and", .src0x, .dst0x, ._, ._ },
-                        .{ ._, .p_, .andn, .dst0x, .src1x, ._, ._ },
-                        .{ ._, .p_, .@"or", .dst0x, .src0x, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .yword, .is = .byte } },
-                        .{ .scalar_signed_int = .{ .of = .yword, .is = .byte } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addtf3" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, .vp_b, .maxs, .dst0y, .src0y, .src1y, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__addtf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -3270,27 +3385,45 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_b, .maxs, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(bin_op.lhs).fmt(pt),
+                        ops[0].tracking(cg),
+                        ops[1].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .sub, .sub_optimized => |air_tag| if (use_old) try cg.airBinOp(inst, .sub) else fallback: {
+                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
+                if (cg.floatBits(cg.typeOf(bin_op.lhs).scalarType(zcu)) == null) break :fallback try cg.airBinOp(inst, air_tag);
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, comptime &.{ .{
+                    .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .{ .type = .f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -3299,28 +3432,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_b, .maxs, .tmp1x, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                        .{ ._, .v_ss, .sub, .dst0x, .dst0x, .tmp0d, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__subhf3" } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -3329,29 +3461,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_b, .maxs, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
+                    .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .mem, .mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -3359,33 +3490,30 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ },
-                        .{ ._, .p_b, .cmpgt, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_, .@"and", .tmp2x, .tmp1x, ._, ._ },
-                        .{ ._, .p_, .andn, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_, .@"or", .tmp1x, .tmp2x, ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                        .{ ._, .v_ps, .sub, .dst0x, .dst0x, .tmp0x, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, .slow_incdec, null, null },
+                    .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .mem, .mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -3393,31 +3521,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .movsx, .tmp2d, .memia(.src1b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1b, .tmp2b, ._, ._ },
-                        .{ ._, ._l, .cmov, .tmp1d, .tmp2d, ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0y, .src1x, ._, ._ },
+                        .{ ._, .v_ps, .sub, .dst0y, .dst0y, .tmp0y, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, null, null, null },
+                    .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -3428,29 +3552,30 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .movsx, .tmp2d, .memia(.src1b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1b, .tmp2b, ._, ._ },
-                        .{ ._, ._l, .cmov, .tmp1d, .tmp2d, ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp2y, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .sub, .tmp1y, .tmp1y, .tmp2y, ._ },
+                        .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__subhf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -3458,180 +3583,215 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._nl, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ },
+                        .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__subhf3" } } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__subhf3" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._nl, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .tmp4d, .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, .mmx, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .qword, .is = .byte } },
-                        .{ .scalar_unsigned_int = .{ .of = .qword, .is = .byte } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_mmx, .mem } },
-                        .{ .src = .{ .mem, .to_mut_mmx }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_mmx, .to_mmx } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__subhf3" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, .p_b, .maxu, .dst0q, .src1q, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .movzx, .tmp1d, .memia(.src1w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp4x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_b, .maxu, .dst0x, .src0x, .src1x, ._ },
+                        .{ ._, .v_ss, .sub, .dst0x, .src0x, .src1d, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_b, .maxu, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._ss, .sub, .dst0x, .src1d, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .byte } },
-                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .byte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_b, .maxu, .dst0y, .src0y, .src1y, ._ },
+                        .{ ._, .v_ps, .sub, .dst0x, .src0x, .src1x, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_b, .maxu, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._ps, .sub, .dst0x, .src1x, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_b, .maxu, .tmp1x, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .sub, .dst0y, .src0y, .src1y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -3643,26 +3803,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_b, .maxu, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .sub, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, .slow_incdec, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -3673,90 +3834,56 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .movzx, .tmp2d, .memia(.src1b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1b, .tmp2b, ._, ._ },
-                        .{ ._, ._b, .cmov, .tmp1d, .tmp2d, ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .sub, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .movzx, .tmp2d, .memia(.src1b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1b, .tmp2b, ._, ._ },
-                        .{ ._, ._b, .cmov, .tmp1d, .tmp2d, ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_sd, .sub, .dst0x, .src0x, .src1q, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
+                    .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._nb, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._sd, .sub, .dst0x, .src1q, ._, ._ },
                     } },
                 }, .{
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .mem, .mem, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f64, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -3766,89 +3893,70 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._nb, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse, .mmx, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .qword, .is = .word } },
-                        .{ .scalar_signed_int = .{ .of = .qword, .is = .word } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_mmx, .mem } },
-                        .{ .src = .{ .mem, .to_mut_mmx }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_mmx, .to_mmx } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_w, .maxs, .dst0q, .src1q, ._, ._ },
+                        .{ ._, .f_, .ld, .src0q, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src1q, ._, ._, ._ },
+                        .{ ._, .f_p, .sub, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0q, ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .word } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .maxs, .dst0x, .src0x, .src1x, ._ },
+                        .{ ._, .v_pd, .sub, .dst0x, .src0x, .src1x, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .word } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_w, .maxs, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._pd, .sub, .dst0x, .src1x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .yword, .is = .word } },
-                        .{ .scalar_signed_int = .{ .of = .yword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .maxs, .dst0y, .src0y, .src1y, ._ },
+                        .{ ._, .v_pd, .sub, .dst0y, .src0y, .src1y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -3860,25 +3968,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_w, .maxs, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_pd, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_pd, .sub, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
+                    .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -3890,26 +3999,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_w, .maxs, .tmp1x, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._pd, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._pd, .sub, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f64, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -3918,27 +4028,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_w, .maxs, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_, .ld, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .sub, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .mem, .mem, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -3947,28 +4058,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .rc = .x87 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._l, .cmov, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src1t, ._, ._, ._ },
+                        .{ ._, .f_p, .sub, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -3977,92 +4086,54 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._nl, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .rc = .sse }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_w, .maxu, .dst0x, .src0x, .src1x, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.{ .rc = .x87 }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_w, .maxu, .dst0x, .src1x, ._, ._ },
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .subr, .tmp0t, .src1t, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .mem, .to_x87, .none } },
+                        .{ .src = .{ .to_x87, .to_x87, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{
-                        .{ ._, .p_w, .subus, .dst0x, .src1x, ._, ._ },
-                        .{ ._, .p_w, .add, .dst0x, .src1x, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .word } },
-                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .word } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .rc = .x87 }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .maxu, .dst0y, .src0y, .src1y, ._ },
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .sub, .tmp0t, .src1t, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -4071,27 +4142,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_w, .maxu, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_, .ld, .memia(.src1t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .sub, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__subtf3" } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -4100,30 +4173,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_w, .maxu, .tmp1x, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__subtf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -4131,29 +4201,32 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_w, .maxu, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__subtf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -4161,30 +4234,32 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_w, .subus, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_w, .add, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__subtf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -4192,27 +4267,45 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._b, .cmov, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
-                }, .{
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(bin_op.lhs).fmt(pt),
+                        ops[0].tracking(cg),
+                        ops[1].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .mul, .mul_optimized => |air_tag| if (use_old) try cg.airMulDivBinOp(inst, .mul) else fallback: {
+                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
+                if (cg.floatBits(cg.typeOf(bin_op.lhs).scalarType(zcu)) == null) break :fallback try cg.airMulDivBinOp(inst, .mul);
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, comptime &.{ .{
+                    .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -4221,94 +4314,87 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._nb, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                        .{ ._, .v_ss, .mul, .dst0x, .dst0x, .tmp0d, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .rc = .sse }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_d, .maxs, .dst0x, .src0x, .src1x, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                     },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__mulhf3" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, .p_d, .maxs, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
+                    .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .rc = .sse }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._dqa, .mov, .dst0x, .src0x, ._, ._ },
-                        .{ ._, .p_d, .cmpgt, .dst0x, .src1x, ._, ._ },
-                        .{ ._, .p_, .@"and", .src0x, .dst0x, ._, ._ },
-                        .{ ._, .p_, .andn, .dst0x, .src1x, ._, ._ },
-                        .{ ._, .p_, .@"or", .dst0x, .src0x, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .yword, .is = .dword } },
-                        .{ .scalar_signed_int = .{ .of = .yword, .is = .dword } },
+                        .{ .src = .{ .mem, .mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                    .extra_temps = .{
+                        .{ .type = .vector_4_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .maxs, .dst0y, .src0y, .src1y, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                        .{ ._, .v_ps, .mul, .dst0x, .dst0x, .tmp0x, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .mem, .mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -4317,29 +4403,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_d, .maxs, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0y, .src1x, ._, ._ },
+                        .{ ._, .v_ps, .mul, .dst0y, .dst0y, .tmp0y, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
+                    .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -4350,27 +4434,30 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_d, .maxs, .tmp1x, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp2y, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .mul, .tmp1y, .tmp1y, .tmp2y, ._ },
+                        .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__mulhf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -4378,29 +4465,33 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_d, .maxs, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ },
+                        .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
+                    .required_features = .{ .sse4_1, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__mulhf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -4408,172 +4499,186 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ },
-                        .{ ._, .p_d, .cmpgt, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_, .@"and", .tmp2x, .tmp1x, ._, ._ },
-                        .{ ._, .p_, .andn, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_, .@"or", .tmp1x, .tmp2x, ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, null, null, null },
+                    .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__mulhf3" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._l, .cmov, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .tmp4d, .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__mulhf3" } } },
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._nl, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0d, .tmp0, .add_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .movzx, .tmp1d, .memia(.src1w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp4x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .maxu, .dst0x, .src0x, .src1x, ._ },
+                        .{ ._, .v_ss, .mul, .dst0x, .src0x, .src1d, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_d, .maxu, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._ss, .mul, .dst0x, .src1d, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u32, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .mul, .dst0x, .src0x, .src1x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ },
-                        .{ ._, .p_, .xor, .dst0x, .src0x, ._, ._ },
-                        .{ ._, .p_, .xor, .tmp2x, .src1x, ._, ._ },
-                        .{ ._, .p_d, .cmpgt, .dst0x, .tmp2x, ._, ._ },
-                        .{ ._, .p_, .@"and", .src0x, .dst0x, ._, ._ },
-                        .{ ._, .p_, .andn, .dst0x, .src1x, ._, ._ },
-                        .{ ._, .p_, .@"or", .dst0x, .src0x, ._, ._ },
+                        .{ ._, ._ps, .mul, .dst0x, .src1x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .dword } },
-                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .maxu, .dst0y, .src0y, .src1y, ._ },
+                        .{ ._, .v_ps, .mul, .dst0y, .src0y, .src1y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -4585,25 +4690,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_d, .maxu, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .mul, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -4615,25 +4721,58 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_d, .maxu, .tmp1x, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mul, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_sd, .mul, .dst0x, .src0x, .src1q, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._sd, .mul, .dst0x, .src1q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .mem, .mem, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f64, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -4643,67 +4782,73 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_d, .maxu, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src0q, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src1q, ._, ._, ._ },
+                        .{ ._, .f_p, .mul, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0q, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .mul, .dst0x, .src0x, .src1x, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u32, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._pd, .mul, .dst0x, .src1x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .any,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp4x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp5x, .tmp3x, ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp6x, .tmp4x, ._, ._ },
-                        .{ ._, .p_, .xor, .tmp5x, .tmp2x, ._, ._ },
-                        .{ ._, .p_, .xor, .tmp6x, .tmp2x, ._, ._ },
-                        .{ ._, .p_d, .cmpgt, .tmp5x, .tmp6x, ._, ._ },
-                        .{ ._, .p_, .@"and", .tmp3x, .tmp5x, ._, ._ },
-                        .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ },
-                        .{ ._, .p_, .@"or", .tmp3x, .tmp5x, ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_pd, .mul, .dst0y, .src0y, .src1y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -4715,25 +4860,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._b, .cmov, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_pd, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_pd, .mul, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
+                    .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -4745,43 +4891,57 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._nb, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0d, .tmp0, .add_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._pd, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._pd, .mul, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f64, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .cmpgt, .dst0x, .src1x, .src0x, ._ },
-                        .{ ._, .vp_b, .blendv, .dst0x, .src0x, .src1x, .dst0x },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_, .ld, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .mul, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_2, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .mem, .mem, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } },
-                        .unused,
+                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -4790,40 +4950,57 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.{ .rc = .x87 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._dqa, .mov, .tmp0x, .src1x, ._, ._ },
-                        .{ ._, .p_q, .cmpgt, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, .p_b, .blendv, .dst0x, .src1x, .tmp0x, ._ },
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src1t, ._, ._, ._ },
+                        .{ ._, .f_p, .mul, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .yword, .is = .qword } },
-                        .{ .scalar_signed_int = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_x87, .none } },
+                        .{ .src = .{ .to_x87, .to_x87, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .rc = .x87 }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .cmpgt, .dst0y, .src1y, .src0y, ._ },
-                        .{ ._, .vp_b, .blendv, .dst0y, .src0y, .src1y, .dst0y },
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .mul, .tmp0t, .src1t, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -4831,63 +5008,58 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp2y, .memia(.src1y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_q, .cmpgt, .tmp3y, .tmp2y, .tmp1y, ._ },
-                        .{ ._, .vp_b, .blendv, .tmp1y, .tmp1y, .tmp2y, .tmp3y },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_, .ld, .memia(.src1t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .mul, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__multf3" } } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_q, .cmpgt, .tmp3x, .tmp2x, .tmp1x, ._ },
-                        .{ ._, .vp_b, .blendv, .tmp1x, .tmp1x, .tmp2x, .tmp3x },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_2, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__multf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -4895,32 +5067,32 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, .p_q, .cmpgt, .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, .p_b, .blendv, .tmp1x, .tmp2x, .tmp3x, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__multf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -4928,30 +5100,32 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._l, .cmov, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__multf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -4959,32 +5133,50 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._nl, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(bin_op.lhs).fmt(pt),
+                        ops[0].tracking(cg),
+                        ops[1].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .div_float, .div_float_optimized, .div_exact, .div_exact_optimized => |air_tag| if (use_old) try cg.airMulDivBinOp(inst, switch (air_tag) {
+                else => unreachable,
+                .div_float, .div_float_optimized => .div_float,
+                .div_exact, .div_exact_optimized => .div_exact,
+            }) else fallback: {
+                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
+                if (cg.floatBits(cg.typeOf(bin_op.lhs).scalarType(zcu)) == null) break :fallback try cg.airMulDivBinOp(inst, .div_exact);
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, comptime &.{ .{
+                    .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .none } } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -4992,31 +5184,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .v_, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ },
-                        .{ ._, .vp_, .xor, .dst0x, .tmp2x, .src0x, ._ },
-                        .{ ._, .vp_, .xor, .tmp2x, .tmp2x, .src1x, ._ },
-                        .{ ._, .vp_q, .cmpgt, .dst0x, .tmp2x, .dst0x, ._ },
-                        .{ ._, .vp_b, .blendv, .dst0x, .src0x, .src1x, .dst0x },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                        .{ ._, .v_ss, .div, .dst0x, .dst0x, .tmp0d, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_2, null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
-                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .none } } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_u64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -5024,30 +5214,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, .p_, .xor, .tmp2x, .src0x, ._, ._ },
-                        .{ ._, .p_, .xor, .tmp3x, .src1x, ._, ._ },
-                        .{ ._, .p_q, .cmpgt, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, .p_b, .blendv, .dst0x, .src1x, .tmp3x, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .qword } },
-                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .mem, .mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .none } } },
-                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -5055,139 +5242,126 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ },
-                        .{ ._, .vp_, .xor, .dst0y, .tmp2y, .src0y, ._ },
-                        .{ ._, .vp_, .xor, .tmp2y, .tmp2y, .src1y, ._ },
-                        .{ ._, .vp_q, .cmpgt, .dst0y, .tmp2y, .dst0y, ._ },
-                        .{ ._, .vp_b, .blendv, .dst0y, .src0y, .src1y, .dst0y },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                        .{ ._, .v_ps, .div, .dst0x, .dst0x, .tmp0x, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
+                    .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .mem, .mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .none } } },
-                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ },
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp3y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp4y, .memia(.src1y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_, .xor, .tmp5y, .tmp3y, .tmp2y, ._ },
-                        .{ ._, .vp_, .xor, .tmp6y, .tmp4y, .tmp2y, ._ },
-                        .{ ._, .vp_q, .cmpgt, .tmp5y, .tmp6y, .tmp5y, ._ },
-                        .{ ._, .vp_b, .blendv, .tmp3y, .tmp3y, .tmp4y, .tmp5y },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp3y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0y, .src1x, ._, ._ },
+                        .{ ._, .v_ps, .div, .dst0y, .dst0y, .tmp0y, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
+                    .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .none } } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .v_, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ },
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp4x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .vp_, .xor, .tmp5x, .tmp3x, .tmp2x, ._ },
-                        .{ ._, .vp_, .xor, .tmp6x, .tmp4x, .tmp2x, ._ },
-                        .{ ._, .vp_q, .cmpgt, .tmp5x, .tmp6x, .tmp5x, ._ },
-                        .{ ._, .vp_b, .blendv, .tmp3x, .tmp3x, .tmp4x, .tmp5x },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp2y, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .div, .tmp1y, .tmp1y, .tmp2y, ._ },
+                        .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_2, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .none } } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_u64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ },
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp5x, .tmp2x, ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp6x, .tmp2x, ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp4x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .p_, .xor, .tmp5x, .tmp3x, ._, ._ },
-                        .{ ._, .p_, .xor, .tmp6x, .tmp4x, ._, ._ },
-                        .{ ._, .p_q, .cmpgt, .tmp6x, .tmp5x, ._, ._ },
-                        .{ ._, .p_b, .blendv, .tmp3x, .tmp4x, .tmp6x, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ },
+                        .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .required_features = .{ .sse4_1, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -5195,212 +5369,181 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._b, .cmov, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
+                    .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } },
-                        .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .cmp, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._nb, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .tmp4d, .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any_scalar_signed_int },
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
-                        .unused,
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .sia(-1, .none, .add_src0_elem_size_div_8), ._, ._ },
-                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
-                        .{ .@"1:", ._, .mov, .tmp2q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp2q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .lead(.tmp0, 8), ._, ._ },
-                        .{ ._, ._c, .de, .tmp1d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"1b", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp2q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .memiad(.src0, .tmp0, .add_size_sub_elem_size, 8), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .memiad(.src1, .tmp0, .add_size_sub_elem_size, 8), ._, ._ },
-                        .{ ._, ._l, .cmov, .tmp1p, .tmp2p, ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .memiad(.dst0, .tmp0, .add_size_sub_elem_size, 8), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sa(.none, .add_src0_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .movzx, .tmp1d, .memia(.src1w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp4x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any_scalar_signed_int },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .sia(-1, .none, .add_src0_elem_size_div_8), ._, ._ },
-                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
-                        .{ .@"1:", ._, .mov, .tmp2q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp2q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .lead(.tmp0, 8), ._, ._ },
-                        .{ ._, ._c, .de, .tmp1d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"1b", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp2q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .memiad(.src0, .tmp0, .add_size_sub_elem_size, 8), ._, ._ },
-                        .{ ._, ._nl, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .memiad(.src1, .tmp0, .add_size_sub_elem_size, 8), ._, ._ },
-                        .{ .@"1:", ._, .lea, .tmp2p, .memiad(.dst0, .tmp0, .add_size_sub_elem_size, 8), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sa(.none, .add_src0_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ss, .div, .dst0x, .src0x, .src1d, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any_scalar_unsigned_int },
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._ss, .div, .dst0x, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .sa(.none, .add_src0_elem_size_div_8), ._, ._ },
-                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
-                        .{ .@"1:", ._, .mov, .tmp2q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp2q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .lead(.tmp0, 8), ._, ._ },
-                        .{ ._, ._c, .de, .tmp1d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"1b", ._, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .memia(.src0, .tmp0, .add_size_sub_elem_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .memia(.src1, .tmp0, .add_size_sub_elem_size), ._, ._ },
-                        .{ ._, ._b, .cmov, .tmp1p, .tmp2p, ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .memia(.dst0, .tmp0, .add_size_sub_elem_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sa(.none, .add_src0_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .@"test", .tmp0p, .tmp0p, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .div, .dst0x, .src0x, .src1x, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any_scalar_unsigned_int },
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .div, .dst0x, .src1x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .any,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .sa(.none, .add_src0_elem_size_div_8), ._, ._ },
-                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
-                        .{ .@"1:", ._, .mov, .tmp2q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp2q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .lead(.tmp0, 8), ._, ._ },
-                        .{ ._, ._c, .de, .tmp1d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"1b", ._, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .memia(.src0, .tmp0, .add_size_sub_elem_size), ._, ._ },
-                        .{ ._, ._nb, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .memia(.src1, .tmp0, .add_size_sub_elem_size), ._, ._ },
-                        .{ .@"1:", ._, .lea, .tmp2p, .memia(.dst0, .tmp0, .add_size_sub_elem_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sa(.none, .add_src0_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .@"test", .tmp0p, .tmp0p, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .div, .dst0y, .src0y, .src1y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .word, .is = .word } },
-                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .f16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
-                        .{ .type = .f16, .kind = .{ .rc = .sse } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -5409,28 +5552,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
-                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
-                        .{ ._, .v_ss, .cmp, .tmp1x, .dst0x, .dst0x, .vp(.unord) },
-                        .{ ._, .v_ss, .max, .dst0x, .tmp0x, .dst0x, ._ },
-                        .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x },
-                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .div, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .word, .is = .word } },
-                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 } } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } },
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -5439,58 +5583,59 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .div, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
-                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .mem } },
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse } },
-                        .{ .src = .{ .to_sse, .to_sse } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .vector_4_f16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
-                        .{ .type = .vector_4_f16, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
-                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
-                        .{ ._, .v_ps, .cmp, .tmp1x, .dst0x, .dst0x, .vp(.unord) },
-                        .{ ._, .v_ps, .max, .dst0x, .tmp0x, .dst0x, ._ },
-                        .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x },
-                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                        .{ ._, .v_sd, .div, .dst0x, .src0x, .src1q, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
+                    .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
-                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._sd, .div, .dst0x, .src1q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .mem } },
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .mem, .mem, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_8_f16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
-                        .{ .type = .vector_8_f16, .kind = .{ .rc = .sse } },
+                        .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f64, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -5499,96 +5644,73 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
-                        .{ ._, .v_ps, .cvtph2, .tmp0y, .src1x, ._, ._ },
-                        .{ ._, .v_ps, .cmp, .tmp1y, .dst0y, .dst0y, .vp(.unord) },
-                        .{ ._, .v_ps, .max, .dst0y, .tmp0y, .dst0y, ._ },
-                        .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp0y, .tmp1y },
-                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0y, .rm(.{}), ._ },
+                        .{ ._, .f_, .ld, .src0q, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src1q, ._, ._, ._ },
+                        .{ ._, .f_p, .div, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0q, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_f16, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_8_f16, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_8_f16, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .div, .dst0x, .src0x, .src1x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .v_ps, .cvtph2, .tmp2y, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .v_ps, .cmp, .tmp3y, .tmp1y, .tmp1y, .vp(.unord) },
-                        .{ ._, .v_ps, .max, .tmp1y, .tmp2y, .tmp1y, ._ },
-                        .{ ._, .v_ps, .blendv, .tmp1y, .tmp1y, .tmp2y, .tmp3y },
-                        .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_size), .tmp1y, .rm(.{}), ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._pd, .div, .dst0x, .src1x, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
-                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ },
-                        .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memia(.src0w, .tmp0, .add_size), .ui(0) },
-                        .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memia(.src1w, .tmp0, .add_size), .ui(0) },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_size), .tmp1x, .ui(0), ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_pd, .div, .dst0y, .src0y, .src1y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
+                    .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
-                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } },
+                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -5596,103 +5718,90 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
-                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
-                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_size), .ui(0), ._ },
-                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_size), .ui(0), ._ },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_size), .tmp1x, .ui(0), ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_pd, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_pd, .div, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
-                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } },
-                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
-                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
-                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_size), .ui(0), ._ },
-                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_size), .ui(0), ._ },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, .p_w, .extr, .tmp4d, .tmp1x, .ui(0), ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp4w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._pd, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._pd, .div, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
-                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .ax } },
-                        .{ .type = .f32, .kind = .mem },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } },
+                        .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f64, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
-                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
-                        .{ ._, ._, .movzx, .tmp1d, .memia(.src1w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
-                        .{ ._, ._ss, .mov, .tmp4x, .mem(.tmp2d), ._, ._ },
-                        .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
-                        .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_, .ld, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .div, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
-                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .mem, .mem, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .f32, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -5701,39 +5810,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .v_ss, .cmp, .tmp0x, .src0x, .src0x, .vp(.unord) },
-                        .{ ._, .v_ss, .max, .dst0x, .src1x, .src0x, ._ },
-                        .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .src1x, .tmp0x },
-                    } },
-                }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
-                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .rc = .x87 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._ps, .mova, .dst0x, .src1x, ._, ._ },
-                        .{ ._, ._ss, .max, .dst0x, .src0x, ._, ._ },
-                        .{ ._, ._ss, .cmp, .src0x, .src0x, .vp(.unord), ._ },
-                        .{ ._, ._ps, .blendv, .dst0x, .src1x, .src0x, ._ },
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src1t, ._, ._, ._ },
+                        .{ ._, .f_p, .div, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
-                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -5743,26 +5838,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.{ .rc = .x87 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._ps, .mova, .tmp0x, .src1x, ._, ._ },
-                        .{ ._, ._ss, .max, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, ._ss, .cmp, .dst0x, .src0x, .vp(.ord), ._ },
-                        .{ ._, ._ps, .@"and", .tmp0x, .dst0x, ._, ._ },
-                        .{ ._, ._ps, .andn, .dst0x, .src1x, ._, ._ },
-                        .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .divr, .tmp0t, .src1t, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
-                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .mem, .to_x87, .none } },
+                        .{ .src = .{ .to_x87, .to_x87, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -5772,45 +5866,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cmp, .tmp0x, .src0x, .src0x, .vp(.unord) },
-                        .{ ._, .v_ps, .max, .dst0x, .src1x, .src0x, ._ },
-                        .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .src1x, .tmp0x },
-                    } },
-                }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
-                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .mem } },
-                        .{ .src = .{ .mem, .{ .to_reg = .xmm0 } }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .rc = .x87 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._ps, .mova, .dst0x, .src1x, ._, ._ },
-                        .{ ._, ._ps, .max, .dst0x, .src0x, ._, ._ },
-                        .{ ._, ._ps, .cmp, .src0x, .src0x, .vp(.unord), ._ },
-                        .{ ._, ._ps, .blendv, .dst0x, .src1x, .src0x, ._ },
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .div, .tmp0t, .src1t, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
+                    .required_features = .{ .x87, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
-                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -5818,26 +5893,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
                     .each = .{ .once = &.{
-                        .{ ._, ._ps, .mova, .tmp0x, .src1x, ._, ._ },
-                        .{ ._, ._ps, .max, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, ._ps, .cmp, .dst0x, .src0x, .vp(.ord), ._ },
-                        .{ ._, ._ps, .@"and", .tmp0x, .dst0x, ._, ._ },
-                        .{ ._, ._ps, .andn, .dst0x, .src1x, ._, ._ },
-                        .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_, .ld, .memia(.src1t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .div, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
+                    .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
-                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -5847,26 +5925,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cmp, .tmp0y, .src0y, .src0y, .vp(.unord) },
-                        .{ ._, .v_ps, .max, .dst0y, .src1y, .src0y, ._ },
-                        .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .src1y, .tmp0y },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
-                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -5874,32 +5953,32 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_ps, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .v_ps, .mova, .tmp2y, .memia(.src1y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .v_ps, .cmp, .tmp3y, .tmp1y, .tmp1y, .vp(.unord) },
-                        .{ ._, .v_ps, .max, .tmp1y, .tmp2y, .tmp1y, ._ },
-                        .{ ._, .v_ps, .blendv, .tmp1y, .tmp1y, .tmp2y, .tmp3y },
-                        .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
+                    .required_features = .{ .sse2, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_f32, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -5907,33 +5986,32 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._ps, .mova, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, ._ps, .max, .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .vp(.unord), ._ },
-                        .{ ._, ._ps, .blendv, .tmp3x, .tmp2x, .tmp1x, ._ },
-                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
                     .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -5941,712 +6019,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._ps, .mova, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, ._ps, .max, .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .vp(.ord), ._ },
-                        .{ ._, ._ps, .@"and", .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, ._ps, .andn, .tmp1x, .tmp2x, ._, ._ },
-                        .{ ._, ._ps, .@"or", .tmp1x, .tmp3x, ._, ._ },
-                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
-                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .f64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .v_sd, .cmp, .tmp0x, .src0x, .src0x, .vp(.unord) },
-                        .{ ._, .v_sd, .max, .dst0x, .src1x, .src0x, ._ },
-                        .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .src1x, .tmp0x },
-                    } },
-                }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
-                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .rc = .sse }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._pd, .mova, .dst0x, .src1x, ._, ._ },
-                        .{ ._, ._sd, .max, .dst0x, .src0x, ._, ._ },
-                        .{ ._, ._sd, .cmp, .src0x, .src0x, .vp(.unord), ._ },
-                        .{ ._, ._pd, .blendv, .dst0x, .src1x, .src0x, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
-                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._pd, .mova, .tmp0x, .src1x, ._, ._ },
-                        .{ ._, ._sd, .max, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, ._sd, .cmp, .dst0x, .src0x, .vp(.ord), ._ },
-                        .{ ._, ._pd, .@"and", .tmp0x, .dst0x, ._, ._ },
-                        .{ ._, ._pd, .andn, .dst0x, .src1x, ._, ._ },
-                        .{ ._, ._pd, .@"or", .dst0x, .tmp0x, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
-                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 } } },
-                    },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmax" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
-                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .v_pd, .cmp, .tmp0x, .src0x, .src0x, .vp(.unord) },
-                        .{ ._, .v_pd, .max, .dst0x, .src1x, .src0x, ._ },
-                        .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .src1x, .tmp0x },
-                    } },
-                }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
-                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .mem } },
-                        .{ .src = .{ .mem, .{ .to_reg = .xmm0 } }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .rc = .sse }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._pd, .mova, .dst0x, .src1x, ._, ._ },
-                        .{ ._, ._pd, .max, .dst0x, .src0x, ._, ._ },
-                        .{ ._, ._pd, .cmp, .src0x, .src0x, .vp(.unord), ._ },
-                        .{ ._, ._pd, .blendv, .dst0x, .src1x, .src0x, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
-                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._pd, .mova, .tmp0x, .src1x, ._, ._ },
-                        .{ ._, ._pd, .max, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, ._pd, .cmp, .dst0x, .src0x, .vp(.ord), ._ },
-                        .{ ._, ._pd, .@"and", .tmp0x, .dst0x, ._, ._ },
-                        .{ ._, ._pd, .andn, .dst0x, .src1x, ._, ._ },
-                        .{ ._, ._pd, .@"or", .dst0x, .tmp0x, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
-                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .v_pd, .cmp, .tmp0y, .src0y, .src0y, .vp(.unord) },
-                        .{ ._, .v_pd, .max, .dst0y, .src1y, .src0y, ._ },
-                        .{ ._, .v_pd, .blendv, .dst0y, .dst0y, .src1y, .tmp0y },
-                    } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
-                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_pd, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .v_pd, .mova, .tmp2y, .memia(.src1y, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .v_pd, .cmp, .tmp3y, .tmp1y, .tmp1y, .vp(.unord) },
-                        .{ ._, .v_pd, .max, .tmp1y, .tmp2y, .tmp1y, ._ },
-                        .{ ._, .v_pd, .blendv, .tmp1y, .tmp1y, .tmp2y, .tmp3y },
-                        .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_f64, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._pd, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._pd, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._pd, .mova, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, ._pd, .max, .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, ._pd, .cmp, .tmp1x, .tmp1x, .vp(.unord), ._ },
-                        .{ ._, ._pd, .blendv, .tmp3x, .tmp2x, .tmp1x, ._ },
-                        .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._pd, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._pd, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._pd, .mova, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, ._pd, .max, .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, ._pd, .cmp, .tmp1x, .tmp1x, .vp(.ord), ._ },
-                        .{ ._, ._pd, .@"and", .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, ._pd, .andn, .tmp1x, .tmp2x, ._, ._ },
-                        .{ ._, ._pd, .@"or", .tmp1x, .tmp3x, ._, ._ },
-                        .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
-                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f64, .kind = .{ .reg = .xmm1 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmax" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
-                        .{ ._, ._ps, .xor, .tmp2x, .tmp2x, ._, ._ },
-                        .{ ._, ._ps, .movl, .tmp1x, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._ps, .movl, .tmp2x, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .x87, .cmov, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
-                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_x87, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_x87 } },
-                        .{ .src = .{ .to_x87, .to_x87 } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src1, .rc = .x87 } }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
-                        .{ ._, .f_, .ucomi, .tmp0t, .tmp0t, ._, ._ },
-                        .{ ._, .f_u, .cmov, .tmp0t, .src1t, ._, ._ },
-                        .{ ._, .f_, .xch, .src1t, ._, ._, ._ },
-                        .{ ._, .f_, .ucomi, .tmp0t, .src1t, ._, ._ },
-                        .{ ._, .f_, .xch, .src1t, ._, ._, ._ },
-                        .{ ._, .f_nb, .cmov, .tmp0t, .src1t, ._, ._ },
-                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sahf, .x87, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
-                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_x87, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_x87 } },
-                        .{ .src = .{ .to_x87, .to_x87 } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .{ .type = .u8, .kind = .{ .reg = .ah } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src1, .rc = .x87 } }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
-                        .{ ._, .f_, .ucom, .tmp0t, ._, ._, ._ },
-                        .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ },
-                        .{ ._, ._, .sahf, ._, ._, ._, ._ },
-                        .{ ._, ._p, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, .f_, .xch, .src1t, ._, ._, ._ },
-                        .{ ._, .f_, .ucom, .src1t, ._, ._, ._ },
-                        .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ },
-                        .{ ._, .f_, .xch, .src1t, ._, ._, ._ },
-                        .{ ._, ._, .sahf, ._, ._, ._, ._ },
-                        .{ ._, ._b, .j, .@"1f", ._, ._, ._ },
-                        .{ .@"0:", .f_p, .st, .tmp0t, ._, ._, ._ },
-                        .{ ._, .f_, .ld, .src1t, ._, ._, ._ },
-                        .{ .@"1:", .f_p, .st, .dst0t, ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
-                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_x87, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_x87 } },
-                        .{ .src = .{ .to_x87, .to_x87 } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .{ .type = .u8, .kind = .{ .reg = .ah } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src1, .rc = .x87 } }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
-                        .{ ._, .f_, .xam, ._, ._, ._, ._ },
-                        .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ },
-                        .{ ._, ._, .@"test", .tmp1b, .si(0b1_000_100), ._, ._ },
-                        .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, .f_, .xch, .src1t, ._, ._, ._ },
-                        .{ ._, .f_, .ucom, .src1t, ._, ._, ._ },
-                        .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ },
-                        .{ ._, .f_, .xch, .src1t, ._, ._, ._ },
-                        .{ ._, ._, .@"test", .tmp1b, .si(0b0_000_001), ._, ._ },
-                        .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
-                        .{ .@"0:", .f_p, .st, .tmp0t, ._, ._, ._ },
-                        .{ ._, .f_, .ld, .src1t, ._, ._, ._ },
-                        .{ .@"1:", .f_p, .st, .dst0t, ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .x87, .cmov, null, null },
-                    .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .f_, .ld, .memia(.src1t, .tmp0, .add_size), ._, ._, ._ },
-                        .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ },
-                        .{ ._, .f_, .ucomi, .tmp1t, .tmp1t, ._, ._ },
-                        .{ ._, .f_u, .cmov, .tmp1t, .tmp2t, ._, ._ },
-                        .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ },
-                        .{ ._, .f_, .ucomi, .tmp1t, .tmp2t, ._, ._ },
-                        .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ },
-                        .{ ._, .f_nb, .cmov, .tmp1t, .tmp2t, ._, ._ },
-                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_size), ._, ._, ._ },
-                        .{ ._, .f_p, .st, .tmp2t, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sahf, .x87, null, null },
-                    .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .{ .type = .u8, .kind = .{ .reg = .ah } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .f_, .ld, .memia(.src1t, .tmp0, .add_size), ._, ._, ._ },
-                        .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ },
-                        .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ },
-                        .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ },
-                        .{ ._, ._, .sahf, ._, ._, ._, ._ },
-                        .{ ._, ._p, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ },
-                        .{ ._, .f_, .ucom, .tmp2t, ._, ._, ._ },
-                        .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ },
-                        .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ },
-                        .{ ._, ._, .sahf, ._, ._, ._, ._ },
-                        .{ ._, ._b, .j, .@"2f", ._, ._, ._ },
-                        .{ .@"1:", .f_p, .st, .tmp1t, ._, ._, ._ },
-                        .{ ._, .f_, .ld, .tmp2t, ._, ._, ._ },
-                        .{ .@"2:", .f_p, .st, .memia(.dst0t, .tmp0, .add_size), ._, ._, ._ },
-                        .{ ._, .f_p, .st, .tmp2t, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .{ .type = .u8, .kind = .{ .reg = .ah } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .f_, .ld, .memia(.src1t, .tmp0, .add_size), ._, ._, ._ },
-                        .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ },
-                        .{ ._, .f_, .xam, ._, ._, ._, ._ },
-                        .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ },
-                        .{ ._, ._, .@"test", .tmp3b, .si(0b1_000_100), ._, ._ },
-                        .{ ._, ._z, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ },
-                        .{ ._, .f_, .ucom, .tmp2t, ._, ._, ._ },
-                        .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ },
-                        .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ },
-                        .{ ._, ._, .@"test", .tmp3b, .si(0b0_000_001), ._, ._ },
-                        .{ ._, ._nz, .j, .@"2f", ._, ._, ._ },
-                        .{ .@"1:", .f_p, .st, .tmp1t, ._, ._, ._ },
-                        .{ ._, .f_, .ld, .tmp2t, ._, ._, ._ },
-                        .{ .@"2:", .f_p, .st, .memia(.dst0t, .tmp0, .add_size), ._, ._, ._ },
-                        .{ ._, .f_p, .st, .tmp2t, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
-                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 } } },
-                    },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
-                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
@@ -6661,455 +6040,7677 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                 };
                 try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
             },
-            .min => |air_tag| if (use_old) try cg.airBinOp(inst, air_tag) else {
+            .div_trunc, .div_floor => |air_tag| if (use_old) try cg.airMulDivBinOp(inst, air_tag) else fallback: {
                 const bin_op = air_datas[@intFromEnum(inst)].bin_op;
+                if (cg.floatBits(cg.typeOf(bin_op.lhs).scalarType(zcu)) == null) break :fallback try cg.airMulDivBinOp(inst, air_tag);
                 var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
                 var res: [1]Temp = undefined;
-                cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, comptime &.{ .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
-                        .{ ._, ._ge, .cmov, .dst0d, .src1d, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
-                        .{ ._, ._nge, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0b, .src1b, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
-                        .{ ._, ._ae, .cmov, .dst0d, .src1d, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
-                        .{ ._, ._nae, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0b, .src1b, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
-                        .{ ._, ._ge, .cmov, .dst0w, .src1w, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
-                        .{ ._, ._nge, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0w, .src1w, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
-                        .{ ._, ._ae, .cmov, .dst0w, .src1w, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
-                        .{ ._, ._nae, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0w, .src1w, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
-                        .{ ._, ._ge, .cmov, .dst0d, .src1d, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
-                        .{ ._, ._nge, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0d, .src1d, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
-                        .{ ._, ._ae, .cmov, .dst0d, .src1d, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
-                        .{ ._, ._nae, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0d, .src1d, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
-                        .{ ._, ._ge, .cmov, .dst0q, .src1q, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
-                        .{ ._, ._nge, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0q, .src1q, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
-                        .{ ._, ._ae, .cmov, .dst0q, .src1q, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword } },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
-                        .{ ._, ._nae, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .dst0q, .src1q, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .any_signed_int, .any_signed_int },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sia(1, .src0, .sub_size_div_8), ._, ._ },
-                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp1q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp1q, .memad(.src1q, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src1), ._, ._ },
-                        .{ ._, ._ge, .cmov, .tmp0p, .tmp1p, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_signed_int, .any_signed_int },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sia(1, .src0, .sub_size_div_8), ._, ._ },
-                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp1q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp1q, .memad(.src1q, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._nge, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src1), ._, ._ },
-                        .{ .@"0:", ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .any_unsigned_int, .any_unsigned_int },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size_div_8), ._, ._ },
-                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"8", .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp1q, .memsia(.src1q, .@"8", .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src1), ._, ._ },
-                        .{ ._, ._ae, .cmov, .tmp0p, .tmp1p, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_unsigned_int, .any_unsigned_int },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size_div_8), ._, ._ },
-                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"8", .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp1q, .memsia(.src1q, .@"8", .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._nae, .j, .@"0f", ._, ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src1), ._, ._ },
-                        .{ .@"0:", ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .rc = .sse }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_b, .mins, .dst0x, .src0x, .src1x, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{
-                        .{ ._, .p_b, .mins, .dst0x, .src1x, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
-                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .rc = .sse }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._dqa, .mov, .dst0x, .src1x, ._, ._ },
-                        .{ ._, .p_b, .cmpgt, .dst0x, .src0x, ._, ._ },
-                        .{ ._, .p_, .@"and", .src0x, .dst0x, ._, ._ },
-                        .{ ._, .p_, .andn, .dst0x, .src1x, ._, ._ },
-                        .{ ._, .p_, .@"or", .dst0x, .src0x, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{
-                        .{ .scalar_signed_int = .{ .of = .yword, .is = .byte } },
-                        .{ .scalar_signed_int = .{ .of = .yword, .is = .byte } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
-                    },
-                    .dst_temps = .{.{ .rc = .sse }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_b, .mins, .dst0y, .src0y, .src1y, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{
-                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } },
-                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } },
-                    },
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
+                cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, switch (@as(bits.RoundMode.Direction, switch (air_tag) {
+                    else => unreachable,
+                    .div_trunc => .zero,
+                    .div_floor => .down,
+                })) {
+                    else => unreachable,
+                    inline .zero, .down => |direction| comptime &.{ .{
+                        .required_features = .{ .f16c, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .word, .is = .word } },
+                            .{ .scalar_float = .{ .of = .word, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                            .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                            .{ ._, .v_ss, .div, .dst0x, .dst0x, .tmp0d, ._ },
+                            .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                            .{ ._, .v_ps, .cvtph2, .dst0x, .dst0q, ._, ._ },
+                            .{ ._, .v_ss, .round, .dst0x, .dst0x, .dst0d, .rm(.{ .direction = direction, .precision = .inexact }) },
+                            .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .word, .is = .word } },
+                            .{ .scalar_float = .{ .of = .word, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__trunch",
+                                .down => "__floorh",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .f16c, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                            .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .mem, .none } },
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .mem, .to_sse, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .vector_4_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                            .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                            .{ ._, .v_ps, .div, .dst0x, .dst0x, .tmp0x, ._ },
+                            .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                            .{ ._, .v_ps, .cvtph2, .dst0x, .dst0q, ._, ._ },
+                            .{ ._, .v_ps, .round, .dst0x, .dst0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .f16c, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .mem, .none } },
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .mem, .to_sse, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .vector_8_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                            .{ ._, .v_ps, .cvtph2, .tmp0y, .src1x, ._, ._ },
+                            .{ ._, .v_ps, .div, .dst0y, .dst0y, .tmp0y, ._ },
+                            .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ },
+                            .{ ._, .v_ps, .cvtph2, .dst0y, .dst0x, ._, ._ },
+                            .{ ._, .v_ps, .round, .dst0y, .dst0y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .f16c, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                            .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_ps, .cvtph2, .tmp2y, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_ps, .div, .tmp1y, .tmp1y, .tmp2y, ._ },
+                            .{ ._, .v_, .cvtps2ph, .tmp1x, .tmp1y, .rm(.{}), ._ },
+                            .{ ._, .v_ps, .cvtph2, .tmp1y, .tmp1x, ._, ._ },
+                            .{ ._, .v_ps, .round, .tmp1y, .tmp1y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__trunch",
+                                .down => "__floorh",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ },
+                            .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                            .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0) },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__trunch",
+                                .down => "__floorh",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                            .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                            .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                            .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__trunch",
+                                .down => "__floorh",
+                            } } } },
+                            .{ .type = .f16, .kind = .{ .reg = .ax } },
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                            .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                            .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                            .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, .p_w, .extr, .tmp5d, .tmp1x, .ui(0), ._ },
+                            .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp5w, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .ax } },
+                            .{ .type = .f32, .kind = .mem },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__trunch",
+                                .down => "__floorh",
+                            } } } },
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                            .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                            .{ ._, ._, .movzx, .tmp1d, .memia(.src1w, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                            .{ ._, ._ss, .mov, .tmp4x, .mem(.tmp2d), ._, ._ },
+                            .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp6d, ._, ._, ._ },
+                            .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
+                            .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
+                            .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                            .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ss, .div, .dst0x, .src0x, .src1d, ._ },
+                            .{ ._, .v_ss, .round, .dst0x, .dst0x, .dst0d, .rm(.{ .direction = direction, .precision = .inexact }) },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                            .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mut_sse, .mem, .none } },
+                            .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._ss, .div, .dst0x, .src1d, ._, ._ },
+                            .{ ._, ._ss, .round, .dst0x, .dst0d, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                            .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "truncf",
+                                .down => "floorf",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._ss, .div, .dst0x, .src1d, ._, ._ },
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .div, .dst0x, .src0x, .src1x, ._ },
+                            .{ ._, .v_ps, .round, .dst0x, .dst0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mut_sse, .mem, .none } },
+                            .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._ps, .div, .dst0x, .src1x, ._, ._ },
+                            .{ ._, ._ps, .round, .dst0x, .dst0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                            .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "truncf",
+                                .down => "floorf",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._ss, .div, .tmp1x, .memia(.src1d, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                            .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .div, .dst0y, .src0y, .src1y, ._ },
+                            .{ ._, .v_ps, .round, .dst0y, .dst0y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                            .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_ps, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_ps, .div, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ },
+                            .{ ._, .v_ps, .round, .tmp1y, .tmp1y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._ps, .div, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._ps, .round, .tmp1x, .tmp1x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_sd, .div, .dst0x, .src0x, .src1q, ._ },
+                            .{ ._, .v_sd, .round, .dst0x, .dst0x, .dst0q, .rm(.{ .direction = direction, .precision = .inexact }) },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mut_sse, .mem, .none } },
+                            .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._sd, .div, .dst0x, .src1q, ._, ._ },
+                            .{ ._, ._sd, .round, .dst0x, .dst0q, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "trunc",
+                                .down => "floor",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._sd, .div, .dst0x, .src1q, ._, ._ },
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divdf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "trunc",
+                                .down => "floor",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_pd, .div, .dst0x, .src0x, .src1x, ._ },
+                            .{ ._, .v_pd, .round, .dst0x, .dst0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mut_sse, .mem, .none } },
+                            .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._pd, .div, .dst0x, .src1x, ._, ._ },
+                            .{ ._, ._pd, .round, .dst0x, .dst0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_pd, .div, .dst0y, .src0y, .src1y, ._ },
+                            .{ ._, .v_pd, .round, .dst0y, .dst0y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                            .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_pd, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_pd, .div, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ },
+                            .{ ._, .v_pd, .round, .tmp1y, .tmp1y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._pd, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._pd, .div, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._pd, .round, .tmp1x, .tmp1x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                            .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "trunc",
+                                .down => "floor",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._sd, .div, .tmp1x, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                            .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f64, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divdf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "trunc",
+                                .down => "floor",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
+                            .{ ._, ._ps, .xor, .tmp2x, .tmp2x, ._, ._ },
+                            .{ ._, ._ps, .movl, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._ps, .movl, .tmp2x, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .x87, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .mem, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                            .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__truncx",
+                                .down => "__floorx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .reg = .st0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                            .{ ._, .f_, .ld, .src1t, ._, ._, ._ },
+                            .{ ._, .f_p, .div, ._, ._, ._, ._ },
+                            .{ ._, .f_p, .st, .mem(.tmp2t), ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .x87, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_x87, .mem, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__truncx",
+                                .down => "__floorx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .reg = .st0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                            .{ ._, .f_, .divr, .tmp0t, .src1t, ._, ._ },
+                            .{ ._, .f_p, .st, .mem(.tmp1t), ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .x87, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .to_x87, .none } },
+                            .{ .src = .{ .to_x87, .to_x87, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__truncx",
+                                .down => "__floorx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .reg = .st0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                            .{ ._, .f_, .div, .tmp0t, .src1t, ._, ._ },
+                            .{ ._, .f_p, .st, .mem(.tmp1t), ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .x87, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .mem, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                            .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__truncx",
+                                .down => "__floorx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .f_, .ld, .memia(.src0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                            .{ ._, .f_, .ld, .memia(.src1t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                            .{ ._, .f_p, .div, ._, ._, ._, ._ },
+                            .{ ._, .f_p, .st, .mem(.tmp3t), ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                            .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "truncq",
+                                .down => "floorq",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "truncq",
+                                .down => "floorq",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "truncq",
+                                .down => "floorq",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "truncq",
+                                .down => "floorq",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    } },
+                }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(bin_op.lhs).fmt(pt),
+                        ops[0].tracking(cg),
+                        ops[1].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .div_trunc_optimized, .div_floor_optimized => |air_tag| if (use_old) try cg.airMulDivBinOp(inst, switch (air_tag) {
+                else => unreachable,
+                .div_trunc_optimized => .div_trunc,
+                .div_floor_optimized => .div_floor,
+            }) else {
+                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, switch (@as(bits.RoundMode.Direction, switch (air_tag) {
+                    else => unreachable,
+                    .div_trunc_optimized => .zero,
+                    .div_floor_optimized => .down,
+                })) {
+                    else => unreachable,
+                    inline .zero, .down => |direction| comptime &.{ .{
+                        .required_features = .{ .f16c, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .word, .is = .word } },
+                            .{ .scalar_float = .{ .of = .word, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                            .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                            .{ ._, .v_ss, .div, .dst0x, .dst0x, .tmp0d, ._ },
+                            .{ ._, .v_ss, .round, .dst0x, .dst0x, .dst0d, .rm(.{ .direction = direction, .precision = .inexact }) },
+                            .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .word, .is = .word } },
+                            .{ .scalar_float = .{ .of = .word, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__trunch",
+                                .down => "__floorh",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .f16c, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                            .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .mem, .none } },
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .mem, .to_sse, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .vector_4_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                            .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                            .{ ._, .v_ps, .div, .dst0x, .dst0x, .tmp0x, ._ },
+                            .{ ._, .v_ps, .round, .dst0x, .dst0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .f16c, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .mem, .none } },
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .mem, .to_sse, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .vector_8_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                            .{ ._, .v_ps, .cvtph2, .tmp0y, .src1x, ._, ._ },
+                            .{ ._, .v_ps, .div, .dst0y, .dst0y, .tmp0y, ._ },
+                            .{ ._, .v_ps, .round, .dst0y, .dst0y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .f16c, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                            .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_ps, .cvtph2, .tmp2y, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_ps, .div, .tmp1y, .tmp1y, .tmp2y, ._ },
+                            .{ ._, .v_ps, .round, .tmp1y, .tmp1y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__trunch",
+                                .down => "__floorh",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ },
+                            .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                            .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0) },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__trunch",
+                                .down => "__floorh",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                            .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                            .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                            .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__trunch",
+                                .down => "__floorh",
+                            } } } },
+                            .{ .type = .f16, .kind = .{ .reg = .ax } },
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                            .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                            .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                            .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, .p_w, .extr, .tmp5d, .tmp1x, .ui(0), ._ },
+                            .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp5w, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .ax } },
+                            .{ .type = .f32, .kind = .mem },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divhf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__trunch",
+                                .down => "__floorh",
+                            } } } },
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                            .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                            .{ ._, ._, .movzx, .tmp1d, .memia(.src1w, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                            .{ ._, ._ss, .mov, .tmp4x, .mem(.tmp2d), ._, ._ },
+                            .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp6d, ._, ._, ._ },
+                            .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
+                            .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
+                            .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                            .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ss, .div, .dst0x, .src0x, .src1d, ._ },
+                            .{ ._, .v_ss, .round, .dst0x, .dst0x, .dst0d, .rm(.{ .direction = direction, .precision = .inexact }) },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                            .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mut_sse, .mem, .none } },
+                            .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._ss, .div, .dst0x, .src1d, ._, ._ },
+                            .{ ._, ._ss, .round, .dst0x, .dst0d, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                            .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "truncf",
+                                .down => "floorf",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._ss, .div, .dst0x, .src1d, ._, ._ },
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .div, .dst0x, .src0x, .src1x, ._ },
+                            .{ ._, .v_ps, .round, .dst0x, .dst0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mut_sse, .mem, .none } },
+                            .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._ps, .div, .dst0x, .src1x, ._, ._ },
+                            .{ ._, ._ps, .round, .dst0x, .dst0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                            .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "truncf",
+                                .down => "floorf",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._ss, .div, .tmp1x, .memia(.src1d, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                            .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .div, .dst0y, .src0y, .src1y, ._ },
+                            .{ ._, .v_ps, .round, .dst0y, .dst0y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                            .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_ps, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_ps, .div, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ },
+                            .{ ._, .v_ps, .round, .tmp1y, .tmp1y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._ps, .div, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._ps, .round, .tmp1x, .tmp1x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_sd, .div, .dst0x, .src0x, .src1q, ._ },
+                            .{ ._, .v_sd, .round, .dst0x, .dst0x, .dst0q, .rm(.{ .direction = direction, .precision = .inexact }) },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mut_sse, .mem, .none } },
+                            .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._sd, .div, .dst0x, .src1q, ._, ._ },
+                            .{ ._, ._sd, .round, .dst0x, .dst0q, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "trunc",
+                                .down => "floor",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._sd, .div, .dst0x, .src1q, ._, ._ },
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divdf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "trunc",
+                                .down => "floor",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_pd, .div, .dst0x, .src0x, .src1x, ._ },
+                            .{ ._, .v_pd, .round, .dst0x, .dst0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mut_sse, .mem, .none } },
+                            .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._pd, .div, .dst0x, .src1x, ._, ._ },
+                            .{ ._, ._pd, .round, .dst0x, .dst0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                            .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .mem, .none } },
+                            .{ .src = .{ .to_sse, .to_sse, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_pd, .div, .dst0y, .src0y, .src1y, ._ },
+                            .{ ._, .v_pd, .round, .dst0y, .dst0y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                            .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_pd, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_pd, .div, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_unaligned_size), ._ },
+                            .{ ._, .v_pd, .round, .tmp1y, .tmp1y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._pd, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._pd, .div, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._pd, .round, .tmp1x, .tmp1x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                            .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "trunc",
+                                .down => "floor",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._sd, .div, .tmp1x, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                            .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f64, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divdf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "trunc",
+                                .down => "floor",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
+                            .{ ._, ._ps, .xor, .tmp2x, .tmp2x, ._, ._ },
+                            .{ ._, ._ps, .movl, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._ps, .movl, .tmp2x, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .x87, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .mem, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                            .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__truncx",
+                                .down => "__floorx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .reg = .st0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                            .{ ._, .f_, .ld, .src1t, ._, ._, ._ },
+                            .{ ._, .f_p, .div, ._, ._, ._, ._ },
+                            .{ ._, .f_p, .st, .mem(.tmp2t), ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .x87, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_x87, .mem, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__truncx",
+                                .down => "__floorx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .reg = .st0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                            .{ ._, .f_, .divr, .tmp0t, .src1t, ._, ._ },
+                            .{ ._, .f_p, .st, .mem(.tmp1t), ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .x87, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .to_x87, .none } },
+                            .{ .src = .{ .to_x87, .to_x87, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__truncx",
+                                .down => "__floorx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .reg = .st0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                            .{ ._, .f_, .div, .tmp0t, .src1t, ._, ._ },
+                            .{ ._, .f_p, .st, .mem(.tmp1t), ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .x87, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .mem, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                            .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "__truncx",
+                                .down => "__floorx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .f_, .ld, .memia(.src0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                            .{ ._, .f_, .ld, .memia(.src1t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                            .{ ._, .f_p, .div, ._, ._, ._, ._ },
+                            .{ ._, .f_p, .st, .mem(.tmp3t), ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                            .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                            .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "truncq",
+                                .down => "floorq",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "truncq",
+                                .down => "floorq",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "truncq",
+                                .down => "floorq",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                            .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                            .any,
+                        },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__divtf3" } } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .zero => "truncq",
+                                .down => "floorq",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    } },
+                }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(bin_op.lhs).fmt(pt),
+                        ops[0].tracking(cg),
+                        ops[1].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .rem, .rem_optimized => |air_tag| if (use_old) try cg.airMulDivBinOp(inst, .rem) else fallback: {
+                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
+                if (cg.floatBits(cg.typeOf(bin_op.lhs).scalarType(zcu)) == null) break :fallback try cg.airMulDivBinOp(inst, .rem);
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, comptime &.{ .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmodh" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmodh" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ },
+                        .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmodh" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmodh" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .tmp4d, .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmodh" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .movzx, .tmp1d, .memia(.src1w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp4x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmodf" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmodf" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ss, .mov, .tmp2x, .memia(.src1d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .v_ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmodf" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp2x, .memia(.src1d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmod" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmod" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_sd, .mov, .tmp2x, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .v_sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmod" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._sd, .mov, .tmp2x, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmod" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, ._ps, .movl, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .movl, .tmp2x, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, .x87, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .size = 16 * 2, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmodx" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .reg = .st0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, .v_dqa, .mov, .tmp0x, .mem(.src0x), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .mem(.tmp1x), .tmp0x, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp0x, .mem(.src1x), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memd(.tmp1x, 16), .tmp0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, .x87, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .size = 16 * 2, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmodx" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .reg = .st0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._dqa, .mov, .tmp0x, .mem(.src0x), ._, ._ },
+                        .{ ._, ._dqa, .mov, .mem(.tmp1x), .tmp0x, ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp0x, .mem(.src1x), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memd(.tmp1x, 16), .tmp0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, .x87, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .size = 16 * 2, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmodx" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .reg = .st0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .mova, .tmp0x, .mem(.src0x), ._, ._ },
+                        .{ ._, ._ps, .mova, .mem(.tmp1x), .tmp0x, ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp0x, .mem(.src1x), ._, ._ },
+                        .{ ._, ._ps, .mova, .memd(.tmp1x, 16), .tmp0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, .x87, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .size = 16 * 2, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmodx" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memd(.tmp2x, 16), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, .x87, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .size = 16 * 2, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmodx" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memd(.tmp2x, 16), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, .x87, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .size = 16 * 2, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmodx" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .memd(.tmp2x, 16), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmodq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmodq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmodq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmodq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(bin_op.lhs).fmt(pt),
+                        ops[0].tracking(cg),
+                        ops[1].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .ptr_add => |air_tag| if (use_old) try cg.airPtrArithmetic(inst, air_tag) else {
+                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
+                const bin_op = cg.air.extraData(Air.Bin, ty_pl.payload).data;
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                try ops[0].toSlicePtr(cg);
+                var res: [1]Temp = undefined;
+                if (ty_pl.ty.toType().elemType2(zcu).hasRuntimeBitsIgnoreComptime(zcu)) cg.select(&res, &.{ty_pl.ty.toType()}, &ops, comptime &.{ .{
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .simm32, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .dst0p, .leaa(.src0, .add_src0_elem_size_times_src1), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .elem_size_is = 1 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .src1), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .elem_size_is = 2 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .dst0p, .leasi(.src0, .@"2", .src1), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .elem_size_is = 2 + 1 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .dst0p, .leasi(.src1, .@"2", .src1), ._, ._ },
+                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .elem_size_is = 4 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .dst0p, .leasi(.src0, .@"4", .src1), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .elem_size_is = 4 + 1 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src1 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .dst0p, .leasi(.src1, .@"4", .src1), ._, ._ },
+                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .dst_constraints = .{.{ .elem_size_is = 8 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .dst0p, .leasi(.src0, .@"8", .src1), ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .dst_constraints = .{.{ .elem_size_is = 8 + 1 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src1 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .dst0p, .leasi(.src1, .@"8", .src1), ._, ._ },
+                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.po2_elem_size},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_mut_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src1 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._l, .sh, .src1p, .sa(.none, .add_log2_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .src1), ._, ._ },
+                    } },
+                }, .{
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, .i_, .mul, .dst0p, .src1p, .sa(.none, .add_src0_elem_size), ._ },
+                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                    } },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(bin_op.lhs).fmt(pt),
+                        ops[0].tracking(cg),
+                        ops[1].tracking(cg),
+                    }),
+                    else => |e| return e,
+                } else { // hack around Sema OPV bugs
+                    res[0] = ops[0];
+                }
+                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .ptr_sub => |air_tag| if (use_old) try cg.airPtrArithmetic(inst, air_tag) else {
+                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
+                const bin_op = cg.air.extraData(Air.Bin, ty_pl.payload).data;
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                try ops[0].toSlicePtr(cg);
+                var res: [1]Temp = undefined;
+                if (ty_pl.ty.toType().elemType2(zcu).hasRuntimeBitsIgnoreComptime(zcu)) cg.select(&res, &.{ty_pl.ty.toType()}, &ops, comptime &.{ .{
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .simm32, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .dst0p, .leaa(.src0, .sub_src0_elem_size_times_src1), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .elem_size_is = 1 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_mut_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src1 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .neg, .src1p, ._, ._, ._ },
+                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .src1), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .elem_size_is = 2 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_mut_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src1 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .neg, .src1p, ._, ._, ._ },
+                        .{ ._, ._, .lea, .dst0p, .leasi(.src0, .@"2", .src1), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .elem_size_is = 2 + 1 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .dst0p, .leasi(.src1, .@"2", .src1), ._, ._ },
+                        .{ ._, ._, .neg, .dst0p, ._, ._, ._ },
+                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .elem_size_is = 4 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_mut_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src1 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .neg, .src1p, ._, ._, ._ },
+                        .{ ._, ._, .lea, .dst0p, .leasi(.src0, .@"4", .src1), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .elem_size_is = 4 + 1 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .dst0p, .leasi(.src1, .@"4", .src1), ._, ._ },
+                        .{ ._, ._, .neg, .dst0p, ._, ._, ._ },
+                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .dst_constraints = .{.{ .elem_size_is = 8 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_mut_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src1 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .neg, .src1p, ._, ._, ._ },
+                        .{ ._, ._, .lea, .dst0p, .leasi(.src0, .@"8", .src1), ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .dst_constraints = .{.{ .elem_size_is = 8 + 1 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .dst0p, .leasi(.src1, .@"8", .src1), ._, ._ },
+                        .{ ._, ._, .neg, .dst0p, ._, ._, ._ },
+                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.po2_elem_size},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_mut_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src1 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._l, .sa, .src1p, .sa(.none, .add_log2_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .neg, .src1p, ._, ._, ._ },
+                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .src1), ._, ._ },
+                    } },
+                }, .{
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, .i_, .mul, .dst0p, .src1p, .sa(.none, .sub_src0_elem_size), ._ },
+                        .{ ._, ._, .lea, .dst0p, .leai(.src0, .dst0), ._, ._ },
+                    } },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(bin_op.lhs).fmt(pt),
+                        ops[0].tracking(cg),
+                        ops[1].tracking(cg),
+                    }),
+                    else => |e| return e,
+                } else {
+                    // hack around Sema OPV bugs
+                    res[0] = ops[0];
+                }
+                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .max => |air_tag| if (use_old) try cg.airBinOp(inst, air_tag) else {
+                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, comptime &.{ .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
+                        .{ ._, ._l, .cmov, .dst0d, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
+                        .{ ._, ._nl, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0b, .src1b, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
+                        .{ ._, ._b, .cmov, .dst0d, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
+                        .{ ._, ._nb, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0b, .src1b, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
+                        .{ ._, ._l, .cmov, .dst0w, .src1w, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
+                        .{ ._, ._nl, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0w, .src1w, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
+                        .{ ._, ._b, .cmov, .dst0w, .src1w, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
+                        .{ ._, ._nb, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0w, .src1w, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
+                        .{ ._, ._l, .cmov, .dst0d, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
+                        .{ ._, ._nl, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0d, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
+                        .{ ._, ._b, .cmov, .dst0d, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
+                        .{ ._, ._nb, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0d, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
+                        .{ ._, ._l, .cmov, .dst0q, .src1q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
+                        .{ ._, ._nl, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0q, .src1q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
+                        .{ ._, ._b, .cmov, .dst0q, .src1q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
+                        .{ ._, ._nb, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0q, .src1q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{ .any_signed_int, .any_signed_int, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sia(1, .src0, .sub_size_div_8), ._, ._ },
+                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp1q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp1q, .memad(.src1q, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src1), ._, ._ },
+                        .{ ._, ._l, .cmov, .tmp0p, .tmp1p, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_signed_int, .any_signed_int, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sia(1, .src0, .sub_size_div_8), ._, ._ },
+                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp1q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp1q, .memad(.src1q, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._nl, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src1), ._, ._ },
+                        .{ .@"0:", ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{ .any_unsigned_int, .any_unsigned_int, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size_div_8), ._, ._ },
+                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"8", .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp1q, .memsia(.src1q, .@"8", .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src1), ._, ._ },
+                        .{ ._, ._b, .cmov, .tmp0p, .tmp1p, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_unsigned_int, .any_unsigned_int, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size_div_8), ._, ._ },
+                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"8", .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp1q, .memsia(.src1q, .@"8", .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._nb, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src1), ._, ._ },
+                        .{ .@"0:", ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_b, .maxs, .dst0x, .src0x, .src1x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_b, .maxs, .dst0x, .src1x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._dqa, .mov, .dst0x, .src0x, ._, ._ },
+                        .{ ._, .p_b, .cmpgt, .dst0x, .src1x, ._, ._ },
+                        .{ ._, .p_, .@"and", .src0x, .dst0x, ._, ._ },
+                        .{ ._, .p_, .andn, .dst0x, .src1x, ._, ._ },
+                        .{ ._, .p_, .@"or", .dst0x, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .yword, .is = .byte } },
+                        .{ .scalar_signed_int = .{ .of = .yword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_b, .maxs, .dst0y, .src0y, .src1y, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_b, .maxs, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_b, .maxs, .tmp1x, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_b, .maxs, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ },
+                        .{ ._, .p_b, .cmpgt, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_, .@"and", .tmp2x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .andn, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_, .@"or", .tmp1x, .tmp2x, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, .slow_incdec, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .movsx, .tmp2d, .memia(.src1b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1b, .tmp2b, ._, ._ },
+                        .{ ._, ._l, .cmov, .tmp1d, .tmp2d, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .movsx, .tmp2d, .memia(.src1b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1b, .tmp2b, ._, ._ },
+                        .{ ._, ._l, .cmov, .tmp1d, .tmp2d, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._nl, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._nl, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, .mmx, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .qword, .is = .byte } },
+                        .{ .scalar_unsigned_int = .{ .of = .qword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_mmx, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_mmx, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_mmx, .to_mmx, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_b, .maxu, .dst0q, .src1q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_b, .maxu, .dst0x, .src0x, .src1x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_b, .maxu, .dst0x, .src1x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .byte } },
+                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_b, .maxu, .dst0y, .src0y, .src1y, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_b, .maxu, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_b, .maxu, .tmp1x, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_b, .maxu, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, .slow_incdec, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .movzx, .tmp2d, .memia(.src1b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1b, .tmp2b, ._, ._ },
+                        .{ ._, ._b, .cmov, .tmp1d, .tmp2d, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .movzx, .tmp2d, .memia(.src1b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1b, .tmp2b, ._, ._ },
+                        .{ ._, ._b, .cmov, .tmp1d, .tmp2d, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._nb, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._nb, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1b, .memia(.src1b, .tmp0, .add_size), ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, .mmx, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .qword, .is = .word } },
+                        .{ .scalar_signed_int = .{ .of = .qword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_mmx, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_mmx, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_mmx, .to_mmx, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_w, .maxs, .dst0q, .src1q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_w, .maxs, .dst0x, .src0x, .src1x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_w, .maxs, .dst0x, .src1x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .yword, .is = .word } },
+                        .{ .scalar_signed_int = .{ .of = .yword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_w, .maxs, .dst0y, .src0y, .src1y, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_w, .maxs, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_w, .maxs, .tmp1x, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_w, .maxs, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._l, .cmov, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._nl, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_w, .maxu, .dst0x, .src0x, .src1x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_w, .maxu, .dst0x, .src1x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_w, .subus, .dst0x, .src1x, ._, ._ },
+                        .{ ._, .p_w, .add, .dst0x, .src1x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .word } },
+                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_w, .maxu, .dst0y, .src0y, .src1y, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_w, .maxu, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_w, .maxu, .tmp1x, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_w, .maxu, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_w, .subus, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_w, .add, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._b, .cmov, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._nb, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1w, .memia(.src1w, .tmp0, .add_size), ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_d, .maxs, .dst0x, .src0x, .src1x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_d, .maxs, .dst0x, .src1x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._dqa, .mov, .dst0x, .src0x, ._, ._ },
+                        .{ ._, .p_d, .cmpgt, .dst0x, .src1x, ._, ._ },
+                        .{ ._, .p_, .@"and", .src0x, .dst0x, ._, ._ },
+                        .{ ._, .p_, .andn, .dst0x, .src1x, ._, ._ },
+                        .{ ._, .p_, .@"or", .dst0x, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_signed_int = .{ .of = .yword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_d, .maxs, .dst0y, .src0y, .src1y, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_d, .maxs, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_d, .maxs, .tmp1x, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_d, .maxs, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ },
+                        .{ ._, .p_d, .cmpgt, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_, .@"and", .tmp2x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .andn, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_, .@"or", .tmp1x, .tmp2x, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._l, .cmov, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._nl, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0d, .tmp0, .add_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_d, .maxu, .dst0x, .src0x, .src1x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_d, .maxu, .dst0x, .src1x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_u32, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._dqa, .mov, .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .dst0x, ._, ._ },
+                        .{ ._, .p_, .xor, .dst0x, .src0x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .src1x, ._, ._ },
+                        .{ ._, .p_d, .cmpgt, .dst0x, .tmp2x, ._, ._ },
+                        .{ ._, .p_, .@"and", .src0x, .dst0x, ._, ._ },
+                        .{ ._, .p_, .andn, .dst0x, .src1x, ._, ._ },
+                        .{ ._, .p_, .@"or", .dst0x, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_d, .maxu, .dst0y, .src0y, .src1y, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_d, .maxu, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_d, .maxu, .tmp1x, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_d, .maxu, .tmp1x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_u32, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp4x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp5x, .tmp3x, ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp6x, .tmp4x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp5x, .tmp2x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp6x, .tmp2x, ._, ._ },
+                        .{ ._, .p_d, .cmpgt, .tmp5x, .tmp6x, ._, ._ },
+                        .{ ._, .p_, .@"and", .tmp3x, .tmp5x, ._, ._ },
+                        .{ ._, .p_, .andn, .tmp5x, .tmp4x, ._, ._ },
+                        .{ ._, .p_, .@"or", .tmp3x, .tmp5x, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._b, .cmov, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._nb, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .memia(.src1d, .tmp0, .add_size), ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0d, .tmp0, .add_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_q, .cmpgt, .dst0x, .src1x, .src0x, ._ },
+                        .{ ._, .vp_b, .blendv, .dst0x, .src0x, .src1x, .dst0x },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._dqa, .mov, .tmp0x, .src1x, ._, ._ },
+                        .{ ._, .p_q, .cmpgt, .tmp0x, .src0x, ._, ._ },
+                        .{ ._, .p_b, .blendv, .dst0x, .src1x, .tmp0x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_signed_int = .{ .of = .yword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_q, .cmpgt, .dst0y, .src1y, .src0y, ._ },
+                        .{ ._, .vp_b, .blendv, .dst0y, .src0y, .src1y, .dst0y },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2y, .memia(.src1y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_q, .cmpgt, .tmp3y, .tmp2y, .tmp1y, ._ },
+                        .{ ._, .vp_b, .blendv, .tmp1y, .tmp1y, .tmp2y, .tmp3y },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_q, .cmpgt, .tmp3x, .tmp2x, .tmp1x, ._ },
+                        .{ ._, .vp_b, .blendv, .tmp1x, .tmp1x, .tmp2x, .tmp3x },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, .p_q, .cmpgt, .tmp3x, .tmp1x, ._, ._ },
+                        .{ ._, .p_b, .blendv, .tmp1x, .tmp2x, .tmp3x, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._l, .cmov, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._nl, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .none } } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .v_, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ },
+                        .{ ._, .vp_, .xor, .dst0x, .tmp2x, .src0x, ._ },
+                        .{ ._, .vp_, .xor, .tmp2x, .tmp2x, .src1x, ._ },
+                        .{ ._, .vp_q, .cmpgt, .dst0x, .tmp2x, .dst0x, ._ },
+                        .{ ._, .vp_b, .blendv, .dst0x, .src0x, .src1x, .dst0x },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .none } } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .reg = .xmm0 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .src0x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp3x, .src1x, ._, ._ },
+                        .{ ._, .p_q, .cmpgt, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, .p_b, .blendv, .dst0x, .src1x, .tmp3x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_unsigned_int = .{ .of = .yword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .none } } },
+                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ },
+                        .{ ._, .vp_, .xor, .dst0y, .tmp2y, .src0y, ._ },
+                        .{ ._, .vp_, .xor, .tmp2y, .tmp2y, .src1y, ._ },
+                        .{ ._, .vp_q, .cmpgt, .dst0y, .tmp2y, .dst0y, ._ },
+                        .{ ._, .vp_b, .blendv, .dst0y, .src0y, .src1y, .dst0y },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .none } } },
+                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .vp_q, .broadcast, .tmp2y, .lea(.tmp0q), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp3y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp4y, .memia(.src1y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_, .xor, .tmp5y, .tmp3y, .tmp2y, ._ },
+                        .{ ._, .vp_, .xor, .tmp6y, .tmp4y, .tmp2y, ._ },
+                        .{ ._, .vp_q, .cmpgt, .tmp5y, .tmp6y, .tmp5y, ._ },
+                        .{ ._, .vp_b, .blendv, .tmp3y, .tmp3y, .tmp4y, .tmp5y },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp3y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .none } } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .v_, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp4x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .vp_, .xor, .tmp5x, .tmp3x, .tmp2x, ._ },
+                        .{ ._, .vp_, .xor, .tmp6x, .tmp4x, .tmp2x, ._ },
+                        .{ ._, .vp_q, .cmpgt, .tmp5x, .tmp6x, .tmp5x, ._ },
+                        .{ ._, .vp_b, .blendv, .tmp3x, .tmp3x, .tmp4x, .tmp5x },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .none } } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .reg = .xmm0 } },
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._, .movddup, .tmp2x, .lea(.tmp0q), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp5x, .tmp2x, ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp6x, .tmp2x, ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp4x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_, .xor, .tmp5x, .tmp3x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp6x, .tmp4x, ._, ._ },
+                        .{ ._, .p_q, .cmpgt, .tmp6x, .tmp5x, ._, ._ },
+                        .{ ._, .p_b, .blendv, .tmp3x, .tmp4x, .tmp6x, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._b, .cmov, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .cmp, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._nb, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{ .any_scalar_signed_int, .any_scalar_signed_int, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .sia(-1, .none, .add_src0_elem_size_div_8), ._, ._ },
+                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
+                        .{ .@"1:", ._, .mov, .tmp2q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp2q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .lead(.tmp0, 8), ._, ._ },
+                        .{ ._, ._c, .de, .tmp1d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"1b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp2q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .memiad(.src0, .tmp0, .add_size_sub_elem_size, 8), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .memiad(.src1, .tmp0, .add_size_sub_elem_size, 8), ._, ._ },
+                        .{ ._, ._l, .cmov, .tmp1p, .tmp2p, ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .memiad(.dst0, .tmp0, .add_size_sub_elem_size, 8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sa(.none, .add_src0_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_signed_int, .any_scalar_signed_int, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .sia(-1, .none, .add_src0_elem_size_div_8), ._, ._ },
+                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
+                        .{ .@"1:", ._, .mov, .tmp2q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp2q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .lead(.tmp0, 8), ._, ._ },
+                        .{ ._, ._c, .de, .tmp1d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"1b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp2q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .memiad(.src0, .tmp0, .add_size_sub_elem_size, 8), ._, ._ },
+                        .{ ._, ._nl, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .memiad(.src1, .tmp0, .add_size_sub_elem_size, 8), ._, ._ },
+                        .{ .@"1:", ._, .lea, .tmp2p, .memiad(.dst0, .tmp0, .add_size_sub_elem_size, 8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sa(.none, .add_src0_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any_scalar_unsigned_int, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .sa(.none, .add_src0_elem_size_div_8), ._, ._ },
+                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
+                        .{ .@"1:", ._, .mov, .tmp2q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp2q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .lead(.tmp0, 8), ._, ._ },
+                        .{ ._, ._c, .de, .tmp1d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"1b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .memia(.src0, .tmp0, .add_size_sub_elem_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .memia(.src1, .tmp0, .add_size_sub_elem_size), ._, ._ },
+                        .{ ._, ._b, .cmov, .tmp1p, .tmp2p, ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .memia(.dst0, .tmp0, .add_size_sub_elem_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sa(.none, .add_src0_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .@"test", .tmp0p, .tmp0p, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any_scalar_unsigned_int, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .sa(.none, .add_src0_elem_size_div_8), ._, ._ },
+                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
+                        .{ .@"1:", ._, .mov, .tmp2q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp2q, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .lead(.tmp0, 8), ._, ._ },
+                        .{ ._, ._c, .de, .tmp1d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"1b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .memia(.src0, .tmp0, .add_size_sub_elem_size), ._, ._ },
+                        .{ ._, ._nb, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .memia(.src1, .tmp0, .add_size_sub_elem_size), ._, ._ },
+                        .{ .@"1:", ._, .lea, .tmp2p, .memia(.dst0, .tmp0, .add_size_sub_elem_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sa(.none, .add_src0_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .@"test", .tmp0p, .tmp0p, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .{ .type = .f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                        .{ ._, .v_ss, .cmp, .tmp1x, .dst0d, .dst0x, .vp(.unord) },
+                        .{ ._, .v_ss, .max, .dst0x, .tmp0d, .dst0x, ._ },
+                        .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_4_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                        .{ ._, .v_ps, .cmp, .tmp1x, .dst0x, .dst0x, .vp(.unord) },
+                        .{ ._, .v_ps, .max, .dst0x, .tmp0x, .dst0x, ._ },
+                        .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_8_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0y, .src1x, ._, ._ },
+                        .{ ._, .v_ps, .cmp, .tmp1y, .dst0y, .dst0y, .vp(.unord) },
+                        .{ ._, .v_ps, .max, .dst0y, .tmp0y, .dst0y, ._ },
+                        .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp0y, .tmp1y },
+                        .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp2y, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .v_ps, .cmp, .tmp3y, .tmp1y, .tmp1y, .vp(.unord) },
+                        .{ ._, .v_ps, .max, .tmp1y, .tmp2y, .tmp1y, ._ },
+                        .{ ._, .v_ps, .blendv, .tmp1y, .tmp1y, .tmp2y, .tmp3y },
+                        .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_size), .tmp1y, .rm(.{}), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ },
+                        .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memia(.src0w, .tmp0, .add_size), .ui(0) },
+                        .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memia(.src1w, .tmp0, .add_size), .ui(0) },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .tmp4d, .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp4w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmaxh" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .movzx, .tmp1d, .memia(.src1w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp4x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ss, .cmp, .tmp0x, .src0x, .src0d, .vp(.unord) },
+                        .{ ._, .v_ss, .max, .dst0x, .src1x, .src0d, ._ },
+                        .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .src1x, .tmp0x },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .mova, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._ss, .max, .dst0x, .src0d, ._, ._ },
+                        .{ ._, ._ss, .cmp, .src0x, .src0d, .sp(.unord), ._ },
+                        .{ ._, ._ps, .blendv, .dst0x, .src1x, .src0x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .mova, .tmp0x, .src1x, ._, ._ },
+                        .{ ._, ._ss, .max, .tmp0x, .src0d, ._, ._ },
+                        .{ ._, ._ss, .cmp, .dst0x, .src0d, .sp(.ord), ._ },
+                        .{ ._, ._ps, .@"and", .tmp0x, .dst0x, ._, ._ },
+                        .{ ._, ._ps, .andn, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .cmp, .tmp0x, .src0x, .src0x, .vp(.unord) },
+                        .{ ._, .v_ps, .max, .dst0x, .src1x, .src0x, ._ },
+                        .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .src1x, .tmp0x },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .mem, .none } },
+                        .{ .src = .{ .mem, .{ .to_reg = .xmm0 }, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .mova, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._ps, .max, .dst0x, .src0x, ._, ._ },
+                        .{ ._, ._ps, .cmp, .src0x, .src0x, .sp(.unord), ._ },
+                        .{ ._, ._ps, .blendv, .dst0x, .src1x, .src0x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .mova, .tmp0x, .src1x, ._, ._ },
+                        .{ ._, ._ps, .max, .tmp0x, .src0x, ._, ._ },
+                        .{ ._, ._ps, .cmp, .dst0x, .src0x, .sp(.ord), ._ },
+                        .{ ._, ._ps, .@"and", .tmp0x, .dst0x, ._, ._ },
+                        .{ ._, ._ps, .andn, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .cmp, .tmp0y, .src0y, .src0y, .vp(.unord) },
+                        .{ ._, .v_ps, .max, .dst0y, .src1y, .src0y, ._ },
+                        .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .src1y, .tmp0y },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .v_ps, .mova, .tmp2y, .memia(.src1y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .v_ps, .cmp, .tmp3y, .tmp1y, .tmp1y, .vp(.unord) },
+                        .{ ._, .v_ps, .max, .tmp1y, .tmp2y, .tmp1y, ._ },
+                        .{ ._, .v_ps, .blendv, .tmp1y, .tmp1y, .tmp2y, .tmp3y },
+                        .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, ._ps, .max, .tmp3x, .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ },
+                        .{ ._, ._ps, .blendv, .tmp3x, .tmp2x, .tmp1x, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, ._ps, .max, .tmp3x, .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ },
+                        .{ ._, ._ps, .@"and", .tmp3x, .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .andn, .tmp1x, .tmp2x, ._, ._ },
+                        .{ ._, ._ps, .@"or", .tmp1x, .tmp3x, ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_sd, .cmp, .tmp0x, .src0x, .src0q, .vp(.unord) },
+                        .{ ._, .v_sd, .max, .dst0x, .src1x, .src0q, ._ },
+                        .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .src1x, .tmp0x },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._pd, .mova, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._sd, .max, .dst0x, .src0q, ._, ._ },
+                        .{ ._, ._sd, .cmp, .src0x, .src0q, .sp(.unord), ._ },
+                        .{ ._, ._pd, .blendv, .dst0x, .src1x, .src0x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._pd, .mova, .tmp0x, .src1x, ._, ._ },
+                        .{ ._, ._sd, .max, .tmp0x, .src0q, ._, ._ },
+                        .{ ._, ._sd, .cmp, .dst0x, .src0q, .sp(.ord), ._ },
+                        .{ ._, ._pd, .@"and", .tmp0x, .dst0x, ._, ._ },
+                        .{ ._, ._pd, .andn, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._pd, .@"or", .dst0x, .tmp0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmax" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .cmp, .tmp0x, .src0x, .src0x, .vp(.unord) },
+                        .{ ._, .v_pd, .max, .dst0x, .src1x, .src0x, ._ },
+                        .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .src1x, .tmp0x },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .mem, .none } },
+                        .{ .src = .{ .mem, .{ .to_reg = .xmm0 }, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._pd, .mova, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._pd, .max, .dst0x, .src0x, ._, ._ },
+                        .{ ._, ._pd, .cmp, .src0x, .src0x, .sp(.unord), ._ },
+                        .{ ._, ._pd, .blendv, .dst0x, .src1x, .src0x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._pd, .mova, .tmp0x, .src1x, ._, ._ },
+                        .{ ._, ._pd, .max, .tmp0x, .src0x, ._, ._ },
+                        .{ ._, ._pd, .cmp, .dst0x, .src0x, .sp(.ord), ._ },
+                        .{ ._, ._pd, .@"and", .tmp0x, .dst0x, ._, ._ },
+                        .{ ._, ._pd, .andn, .dst0x, .src1x, ._, ._ },
+                        .{ ._, ._pd, .@"or", .dst0x, .tmp0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .cmp, .tmp0y, .src0y, .src0y, .vp(.unord) },
+                        .{ ._, .v_pd, .max, .dst0y, .src1y, .src0y, ._ },
+                        .{ ._, .v_pd, .blendv, .dst0y, .dst0y, .src1y, .tmp0y },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_pd, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .v_pd, .mova, .tmp2y, .memia(.src1y, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .v_pd, .cmp, .tmp3y, .tmp1y, .tmp1y, .vp(.unord) },
+                        .{ ._, .v_pd, .max, .tmp1y, .tmp2y, .tmp1y, ._ },
+                        .{ ._, .v_pd, .blendv, .tmp1y, .tmp1y, .tmp2y, .tmp3y },
+                        .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_2_f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._pd, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._pd, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._pd, .mova, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, ._pd, .max, .tmp3x, .tmp1x, ._, ._ },
+                        .{ ._, ._pd, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ },
+                        .{ ._, ._pd, .blendv, .tmp3x, .tmp2x, .tmp1x, ._ },
+                        .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._pd, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._pd, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._pd, .mova, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, ._pd, .max, .tmp3x, .tmp1x, ._, ._ },
+                        .{ ._, ._pd, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ },
+                        .{ ._, ._pd, .@"and", .tmp3x, .tmp1x, ._, ._ },
+                        .{ ._, ._pd, .andn, .tmp1x, .tmp2x, ._, ._ },
+                        .{ ._, ._pd, .@"or", .tmp1x, .tmp3x, ._, ._ },
+                        .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmax" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, ._ps, .movl, .tmp1x, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._ps, .movl, .tmp2x, .memia(.src1q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .x87, .cmov, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_x87, .none } },
+                        .{ .src = .{ .to_x87, .to_x87, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src1, .rc = .x87 } }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .ucomi, .tmp0t, .tmp0t, ._, ._ },
+                        .{ ._, .f_u, .cmov, .tmp0t, .src1t, ._, ._ },
+                        .{ ._, .f_, .xch, .src1t, ._, ._, ._ },
+                        .{ ._, .f_, .ucomi, .tmp0t, .src1t, ._, ._ },
+                        .{ ._, .f_, .xch, .src1t, ._, ._, ._ },
+                        .{ ._, .f_nb, .cmov, .tmp0t, .src1t, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sahf, .x87, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_x87, .none } },
+                        .{ .src = .{ .to_x87, .to_x87, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .{ .type = .u8, .kind = .{ .reg = .ah } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src1, .rc = .x87 } }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .ucom, .tmp0t, ._, ._, ._ },
+                        .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ },
+                        .{ ._, ._, .sahf, ._, ._, ._, ._ },
+                        .{ ._, ._p, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, .f_, .xch, .src1t, ._, ._, ._ },
+                        .{ ._, .f_, .ucom, .src1t, ._, ._, ._ },
+                        .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ },
+                        .{ ._, .f_, .xch, .src1t, ._, ._, ._ },
+                        .{ ._, ._, .sahf, ._, ._, ._, ._ },
+                        .{ ._, ._b, .j, .@"1f", ._, ._, ._ },
+                        .{ .@"0:", .f_p, .st, .tmp0t, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src1t, ._, ._, ._ },
+                        .{ .@"1:", .f_p, .st, .dst0t, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_x87, .none } },
+                        .{ .src = .{ .to_x87, .to_x87, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .{ .type = .u8, .kind = .{ .reg = .ah } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src1, .rc = .x87 } }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .xam, ._, ._, ._, ._ },
+                        .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ },
+                        .{ ._, ._, .@"test", .tmp1b, .si(0b1_000_100), ._, ._ },
+                        .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, .f_, .xch, .src1t, ._, ._, ._ },
+                        .{ ._, .f_, .ucom, .src1t, ._, ._, ._ },
+                        .{ ._, .fn_sw, .st, .tmp1w, ._, ._, ._ },
+                        .{ ._, .f_, .xch, .src1t, ._, ._, ._ },
+                        .{ ._, ._, .@"test", .tmp1b, .si(0b0_000_001), ._, ._ },
+                        .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                        .{ .@"0:", .f_p, .st, .tmp0t, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src1t, ._, ._, ._ },
+                        .{ .@"1:", .f_p, .st, .dst0t, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .x87, .cmov, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src1t, .tmp0, .add_size), ._, ._, ._ },
+                        .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ },
+                        .{ ._, .f_, .ucomi, .tmp1t, .tmp1t, ._, ._ },
+                        .{ ._, .f_u, .cmov, .tmp1t, .tmp2t, ._, ._ },
+                        .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ },
+                        .{ ._, .f_, .ucomi, .tmp1t, .tmp2t, ._, ._ },
+                        .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ },
+                        .{ ._, .f_nb, .cmov, .tmp1t, .tmp2t, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_size), ._, ._, ._ },
+                        .{ ._, .f_p, .st, .tmp2t, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sahf, .x87, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .{ .type = .u8, .kind = .{ .reg = .ah } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src1t, .tmp0, .add_size), ._, ._, ._ },
+                        .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ },
+                        .{ ._, .f_, .ucom, .tmp1t, ._, ._, ._ },
+                        .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ },
+                        .{ ._, ._, .sahf, ._, ._, ._, ._ },
+                        .{ ._, ._p, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ },
+                        .{ ._, .f_, .ucom, .tmp2t, ._, ._, ._ },
+                        .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ },
+                        .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ },
+                        .{ ._, ._, .sahf, ._, ._, ._, ._ },
+                        .{ ._, ._b, .j, .@"2f", ._, ._, ._ },
+                        .{ .@"1:", .f_p, .st, .tmp1t, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .tmp2t, ._, ._, ._ },
+                        .{ .@"2:", .f_p, .st, .memia(.dst0t, .tmp0, .add_size), ._, ._, ._ },
+                        .{ ._, .f_p, .st, .tmp2t, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .{ .type = .u8, .kind = .{ .reg = .ah } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src1t, .tmp0, .add_size), ._, ._, ._ },
+                        .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ },
+                        .{ ._, .f_, .xam, ._, ._, ._, ._ },
+                        .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ },
+                        .{ ._, ._, .@"test", .tmp3b, .si(0b1_000_100), ._, ._ },
+                        .{ ._, ._z, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ },
+                        .{ ._, .f_, .ucom, .tmp2t, ._, ._, ._ },
+                        .{ ._, .fn_sw, .st, .tmp3w, ._, ._, ._ },
+                        .{ ._, .f_, .xch, .tmp2t, ._, ._, ._ },
+                        .{ ._, ._, .@"test", .tmp3b, .si(0b0_000_001), ._, ._ },
+                        .{ ._, ._nz, .j, .@"2f", ._, ._, ._ },
+                        .{ .@"1:", .f_p, .st, .tmp1t, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .tmp2t, ._, ._, ._ },
+                        .{ .@"2:", .f_p, .st, .memia(.dst0t, .tmp0, .add_size), ._, ._, ._ },
+                        .{ ._, .f_p, .st, .tmp2t, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaxq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(bin_op.lhs).fmt(pt),
+                        ops[0].tracking(cg),
+                        ops[1].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .min => |air_tag| if (use_old) try cg.airBinOp(inst, air_tag) else {
+                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, comptime &.{ .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
+                        .{ ._, ._ge, .cmov, .dst0d, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
+                        .{ ._, ._nge, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0b, .src1b, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
+                        .{ ._, ._ae, .cmov, .dst0d, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
+                        .{ ._, ._nae, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0b, .src1b, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
+                        .{ ._, ._ge, .cmov, .dst0w, .src1w, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
+                        .{ ._, ._nge, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0w, .src1w, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
+                        .{ ._, ._ae, .cmov, .dst0w, .src1w, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
+                        .{ ._, ._nae, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0w, .src1w, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
+                        .{ ._, ._ge, .cmov, .dst0d, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
+                        .{ ._, ._nge, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0d, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
+                        .{ ._, ._ae, .cmov, .dst0d, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
+                        .{ ._, ._nae, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0d, .src1d, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
+                        .{ ._, ._ge, .cmov, .dst0q, .src1q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
+                        .{ ._, ._nge, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0q, .src1q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
+                        .{ ._, ._ae, .cmov, .dst0q, .src1q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword }, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .cmp, .src0q, .src1q, ._, ._ },
+                        .{ ._, ._nae, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0q, .src1q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{ .any_signed_int, .any_signed_int, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sia(1, .src0, .sub_size_div_8), ._, ._ },
+                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp1q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp1q, .memad(.src1q, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src1), ._, ._ },
+                        .{ ._, ._ge, .cmov, .tmp0p, .tmp1p, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_signed_int, .any_signed_int, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sia(1, .src0, .sub_size_div_8), ._, ._ },
+                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memsiad(.src0q, .@"8", .tmp0, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp1q, .memsiad(.src1q, .@"8", .tmp0, .add_size, -8), ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1q, .memad(.src0q, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp1q, .memad(.src1q, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._nge, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src1), ._, ._ },
+                        .{ .@"0:", ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{ .any_unsigned_int, .any_unsigned_int, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size_div_8), ._, ._ },
+                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"8", .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp1q, .memsia(.src1q, .@"8", .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src1), ._, ._ },
+                        .{ ._, ._ae, .cmov, .tmp0p, .tmp1p, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_unsigned_int, .any_unsigned_int, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rcx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size_div_8), ._, ._ },
+                        .{ ._, ._c, .cl, ._, ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"8", .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp1q, .memsia(.src1q, .@"8", .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._nae, .j, .@"0f", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src1), ._, ._ },
+                        .{ .@"0:", ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_b, .mins, .dst0x, .src0x, .src1x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_b, .mins, .dst0x, .src1x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._dqa, .mov, .dst0x, .src1x, ._, ._ },
+                        .{ ._, .p_b, .cmpgt, .dst0x, .src0x, ._, ._ },
+                        .{ ._, .p_, .@"and", .src0x, .dst0x, ._, ._ },
+                        .{ ._, .p_, .andn, .dst0x, .src1x, ._, ._ },
+                        .{ ._, .p_, .@"or", .dst0x, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_signed_int = .{ .of = .yword, .is = .byte } },
+                        .{ .scalar_signed_int = .{ .of = .yword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_b, .mins, .dst0y, .src0y, .src1y, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } },
+                        .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } },
+                        .any,
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
                         .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
                         .{ ._, .vp_b, .mins, .tmp1y, .tmp1y, .memia(.src1y, .tmp0, .add_size), ._ },
@@ -7122,9 +13723,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7152,9 +13754,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7182,9 +13785,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7216,9 +13820,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
                         .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7248,9 +13853,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
                         .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7280,9 +13886,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
                         .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7311,9 +13918,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
                         .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7343,11 +13951,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .qword, .is = .byte } },
                         .{ .scalar_unsigned_int = .{ .of = .qword, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_mmx, .mem } },
-                        .{ .src = .{ .mem, .to_mut_mmx }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_mmx, .to_mmx } },
+                        .{ .src = .{ .to_mut_mmx, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_mmx, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_mmx, .to_mmx, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
@@ -7358,11 +13967,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -7373,11 +13983,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
@@ -7388,11 +13999,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .yword, .is = .byte } },
                         .{ .scalar_unsigned_int = .{ .of = .yword, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -7403,9 +14015,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7433,9 +14046,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7463,9 +14077,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7493,9 +14108,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7525,9 +14141,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7557,9 +14174,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7588,9 +14206,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7620,11 +14239,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_signed_int = .{ .of = .qword, .is = .word } },
                         .{ .scalar_signed_int = .{ .of = .qword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_mmx, .mem } },
-                        .{ .src = .{ .mem, .to_mut_mmx }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_mmx, .to_mmx } },
+                        .{ .src = .{ .to_mut_mmx, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_mmx, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_mmx, .to_mmx, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
@@ -7635,11 +14255,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .word } },
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -7650,11 +14271,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .word } },
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
@@ -7665,11 +14287,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_signed_int = .{ .of = .yword, .is = .word } },
                         .{ .scalar_signed_int = .{ .of = .yword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -7680,9 +14303,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } },
                         .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7710,9 +14334,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } },
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7740,9 +14365,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } },
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7770,9 +14396,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } },
                         .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7800,9 +14427,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } },
                         .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7832,11 +14460,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -7847,11 +14476,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
@@ -7862,11 +14492,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -7879,11 +14510,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .yword, .is = .word } },
                         .{ .scalar_unsigned_int = .{ .of = .yword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -7894,9 +14526,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7924,9 +14557,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7954,9 +14588,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -7984,9 +14619,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8016,9 +14652,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8046,9 +14683,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8078,11 +14716,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -8093,11 +14732,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
@@ -8108,11 +14748,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -8127,11 +14768,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_signed_int = .{ .of = .yword, .is = .dword } },
                         .{ .scalar_signed_int = .{ .of = .yword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -8142,9 +14784,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } },
                         .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8172,9 +14815,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8202,9 +14846,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8232,9 +14877,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8266,9 +14912,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } },
                         .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8296,9 +14943,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } },
                         .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8328,11 +14976,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -8343,11 +14992,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
@@ -8358,11 +15008,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -8392,11 +15043,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .yword, .is = .dword } },
                         .{ .scalar_unsigned_int = .{ .of = .yword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -8407,9 +15059,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8437,9 +15090,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8467,9 +15121,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8497,9 +15152,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8537,9 +15193,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8567,9 +15224,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8599,11 +15257,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } },
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -8615,11 +15274,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } },
                         .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_2_i64, .kind = .{ .reg = .xmm0 } },
@@ -8643,11 +15303,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_signed_int = .{ .of = .yword, .is = .qword } },
                         .{ .scalar_signed_int = .{ .of = .yword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -8659,9 +15320,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } },
                         .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8691,9 +15353,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } },
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8723,9 +15386,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } },
                         .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8756,9 +15420,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } },
                         .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8787,9 +15452,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } },
                         .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8819,11 +15485,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -8850,11 +15517,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
                         .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -8882,11 +15550,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_unsigned_int = .{ .of = .yword, .is = .qword } },
                         .{ .scalar_unsigned_int = .{ .of = .yword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -8913,9 +15582,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8949,9 +15619,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -8985,9 +15656,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -9023,9 +15695,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -9054,9 +15727,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } },
                         .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -9083,9 +15757,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any_scalar_signed_int },
+                    .src_constraints = .{ .any_scalar_signed_int, .any_scalar_signed_int, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -9122,9 +15796,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any_scalar_signed_int },
+                    .src_constraints = .{ .any_scalar_signed_int, .any_scalar_signed_int, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -9161,9 +15835,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any_scalar_unsigned_int },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any_scalar_unsigned_int, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -9198,9 +15872,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any_scalar_unsigned_int },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any_scalar_unsigned_int, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -9238,9 +15912,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .word, .is = .word } },
                         .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .f16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
@@ -9257,8 +15932,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
                         .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
-                        .{ ._, .v_ss, .cmp, .tmp1x, .dst0x, .dst0x, .vp(.unord) },
-                        .{ ._, .v_ss, .min, .dst0x, .tmp0x, .dst0x, ._ },
+                        .{ ._, .v_ss, .cmp, .tmp1x, .dst0x, .dst0d, .vp(.unord) },
+                        .{ ._, .v_ss, .min, .dst0x, .tmp0x, .dst0d, ._ },
                         .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .tmp0x, .tmp1x },
                         .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
                     } },
@@ -9267,9 +15942,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .word, .is = .word } },
                         .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 } } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
@@ -9293,16 +15969,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .qword, .is = .word } },
                         .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .mem } },
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .mem, .mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_4_f16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
-                        .{ .type = .vector_4_f16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -9325,16 +16002,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .xword, .is = .word } },
                         .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .mem } },
-                        .{ .src = .{ .to_sse, .mem } },
-                        .{ .src = .{ .mem, .to_sse } },
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .mem, .mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_8_f16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
-                        .{ .type = .vector_8_f16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -9350,22 +16028,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, .v_ps, .cmp, .tmp1y, .dst0y, .dst0y, .vp(.unord) },
                         .{ ._, .v_ps, .min, .dst0y, .tmp0y, .dst0y, ._ },
                         .{ ._, .v_ps, .blendv, .dst0y, .dst0y, .tmp0y, .tmp1y },
-                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0y, .rm(.{}), ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ },
                     } },
                 }, .{
                     .required_features = .{ .f16c, null, null, null },
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_f16, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_8_f16, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_8_f16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -9390,9 +16069,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                         .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
@@ -9423,9 +16103,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                         .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
@@ -9457,9 +16138,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                         .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
@@ -9492,9 +16174,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                         .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
@@ -9530,9 +16213,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .dword, .is = .dword } },
                         .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .f32, .kind = .{ .rc = .sse } },
@@ -9547,8 +16231,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_ss, .cmp, .tmp0x, .src0x, .src0x, .vp(.unord) },
-                        .{ ._, .v_ss, .min, .dst0x, .src1x, .src0x, ._ },
+                        .{ ._, .v_ss, .cmp, .tmp0x, .src0x, .src0d, .vp(.unord) },
+                        .{ ._, .v_ss, .min, .dst0x, .src1x, .src0d, ._ },
                         .{ ._, .v_ps, .blendv, .dst0x, .dst0x, .src1x, .tmp0x },
                     } },
                 }, .{
@@ -9556,15 +16240,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .dword, .is = .dword } },
                         .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
                         .{ ._, ._ps, .mova, .dst0x, .src1x, ._, ._ },
-                        .{ ._, ._ss, .min, .dst0x, .src0x, ._, ._ },
-                        .{ ._, ._ss, .cmp, .src0x, .src0x, .vp(.unord), ._ },
+                        .{ ._, ._ss, .min, .dst0x, .src0d, ._, ._ },
+                        .{ ._, ._ss, .cmp, .src0x, .src0d, .sp(.unord), ._ },
                         .{ ._, ._ps, .blendv, .dst0x, .src1x, .src0x, ._ },
                     } },
                 }, .{
@@ -9572,9 +16257,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .dword, .is = .dword } },
                         .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
@@ -9590,8 +16276,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, ._ps, .mova, .tmp0x, .src1x, ._, ._ },
-                        .{ ._, ._ss, .min, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, ._ss, .cmp, .dst0x, .src0x, .vp(.ord), ._ },
+                        .{ ._, ._ss, .min, .tmp0x, .src0d, ._, ._ },
+                        .{ ._, ._ss, .cmp, .dst0x, .src0d, .sp(.ord), ._ },
                         .{ ._, ._ps, .@"and", .tmp0x, .dst0x, ._, ._ },
                         .{ ._, ._ps, .andn, .dst0x, .src1x, ._, ._ },
                         .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ },
@@ -9601,9 +16287,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .xword, .is = .dword } },
                         .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
@@ -9627,17 +16314,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .xword, .is = .dword } },
                         .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .mem } },
-                        .{ .src = .{ .mem, .{ .to_reg = .xmm0 } }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .mem, .none } },
+                        .{ .src = .{ .mem, .{ .to_reg = .xmm0 }, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
                         .{ ._, ._ps, .mova, .dst0x, .src1x, ._, ._ },
                         .{ ._, ._ps, .min, .dst0x, .src0x, ._, ._ },
-                        .{ ._, ._ps, .cmp, .src0x, .src0x, .vp(.unord), ._ },
+                        .{ ._, ._ps, .cmp, .src0x, .src0x, .sp(.unord), ._ },
                         .{ ._, ._ps, .blendv, .dst0x, .src1x, .src0x, ._ },
                     } },
                 }, .{
@@ -9645,11 +16333,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .xword, .is = .dword } },
                         .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
@@ -9666,7 +16355,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._ps, .mova, .tmp0x, .src1x, ._, ._ },
                         .{ ._, ._ps, .min, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, ._ps, .cmp, .dst0x, .src0x, .vp(.ord), ._ },
+                        .{ ._, ._ps, .cmp, .dst0x, .src0x, .sp(.ord), ._ },
                         .{ ._, ._ps, .@"and", .tmp0x, .dst0x, ._, ._ },
                         .{ ._, ._ps, .andn, .dst0x, .src1x, ._, ._ },
                         .{ ._, ._ps, .@"or", .dst0x, .tmp0x, ._, ._ },
@@ -9676,9 +16365,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .yword, .is = .dword } },
                         .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
@@ -9702,9 +16392,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
                         .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -9735,9 +16426,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -9758,7 +16450,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
                         .{ ._, ._ps, .mova, .tmp3x, .tmp2x, ._, ._ },
                         .{ ._, ._ps, .min, .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .vp(.unord), ._ },
+                        .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ },
                         .{ ._, ._ps, .blendv, .tmp3x, .tmp2x, .tmp1x, ._ },
                         .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
@@ -9769,9 +16461,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -9792,7 +16485,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
                         .{ ._, ._ps, .mova, .tmp3x, .tmp2x, ._, ._ },
                         .{ ._, ._ps, .min, .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .vp(.ord), ._ },
+                        .{ ._, ._ps, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ },
                         .{ ._, ._ps, .@"and", .tmp3x, .tmp1x, ._, ._ },
                         .{ ._, ._ps, .andn, .tmp1x, .tmp2x, ._, ._ },
                         .{ ._, ._ps, .@"or", .tmp1x, .tmp3x, ._, ._ },
@@ -9805,9 +16498,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .qword, .is = .qword } },
                         .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .f64, .kind = .{ .rc = .sse } },
@@ -9822,8 +16516,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_sd, .cmp, .tmp0x, .src0x, .src0x, .vp(.unord) },
-                        .{ ._, .v_sd, .min, .dst0x, .src1x, .src0x, ._ },
+                        .{ ._, .v_sd, .cmp, .tmp0x, .src0x, .src0q, .vp(.unord) },
+                        .{ ._, .v_sd, .min, .dst0x, .src1x, .src0q, ._ },
                         .{ ._, .v_pd, .blendv, .dst0x, .dst0x, .src1x, .tmp0x },
                     } },
                 }, .{
@@ -9831,15 +16525,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .qword, .is = .qword } },
                         .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
                         .{ ._, ._pd, .mova, .dst0x, .src1x, ._, ._ },
-                        .{ ._, ._sd, .min, .dst0x, .src0x, ._, ._ },
-                        .{ ._, ._sd, .cmp, .src0x, .src0x, .vp(.unord), ._ },
+                        .{ ._, ._sd, .min, .dst0x, .src0q, ._, ._ },
+                        .{ ._, ._sd, .cmp, .src0x, .src0q, .sp(.unord), ._ },
                         .{ ._, ._pd, .blendv, .dst0x, .src1x, .src0x, ._ },
                     } },
                 }, .{
@@ -9847,9 +16542,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .qword, .is = .qword } },
                         .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
@@ -9865,8 +16561,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, ._pd, .mova, .tmp0x, .src1x, ._, ._ },
-                        .{ ._, ._sd, .min, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, ._sd, .cmp, .dst0x, .src0x, .vp(.ord), ._ },
+                        .{ ._, ._sd, .min, .tmp0x, .src0q, ._, ._ },
+                        .{ ._, ._sd, .cmp, .dst0x, .src0q, .sp(.ord), ._ },
                         .{ ._, ._pd, .@"and", .tmp0x, .dst0x, ._, ._ },
                         .{ ._, ._pd, .andn, .dst0x, .src1x, ._, ._ },
                         .{ ._, ._pd, .@"or", .dst0x, .tmp0x, ._, ._ },
@@ -9876,9 +16572,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .qword, .is = .qword } },
                         .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 } } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
@@ -9902,9 +16599,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .xword, .is = .qword } },
                         .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
@@ -9928,17 +16626,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .xword, .is = .qword } },
                         .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .mem } },
-                        .{ .src = .{ .mem, .{ .to_reg = .xmm0 } }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .mem, .none } },
+                        .{ .src = .{ .mem, .{ .to_reg = .xmm0 }, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .to_sse, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
                         .{ ._, ._pd, .mova, .dst0x, .src1x, ._, ._ },
                         .{ ._, ._pd, .min, .dst0x, .src0x, ._, ._ },
-                        .{ ._, ._pd, .cmp, .src0x, .src0x, .vp(.unord), ._ },
+                        .{ ._, ._pd, .cmp, .src0x, .src0x, .sp(.unord), ._ },
                         .{ ._, ._pd, .blendv, .dst0x, .src1x, .src0x, ._ },
                     } },
                 }, .{
@@ -9946,11 +16645,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .xword, .is = .qword } },
                         .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .mem } },
-                        .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_sse, .to_sse } },
+                        .{ .src = .{ .to_mut_sse, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
@@ -9967,7 +16667,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._pd, .mova, .tmp0x, .src1x, ._, ._ },
                         .{ ._, ._pd, .min, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, ._pd, .cmp, .dst0x, .src0x, .vp(.ord), ._ },
+                        .{ ._, ._pd, .cmp, .dst0x, .src0x, .sp(.ord), ._ },
                         .{ ._, ._pd, .@"and", .tmp0x, .dst0x, ._, ._ },
                         .{ ._, ._pd, .andn, .dst0x, .src1x, ._, ._ },
                         .{ ._, ._pd, .@"or", .dst0x, .tmp0x, ._, ._ },
@@ -9977,9 +16677,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .yword, .is = .qword } },
                         .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .to_sse, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
@@ -10003,9 +16704,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
                         .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10036,9 +16738,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10059,7 +16762,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._pd, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
                         .{ ._, ._pd, .mova, .tmp3x, .tmp2x, ._, ._ },
                         .{ ._, ._pd, .min, .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, ._pd, .cmp, .tmp1x, .tmp1x, .vp(.unord), ._ },
+                        .{ ._, ._pd, .cmp, .tmp1x, .tmp1x, .sp(.unord), ._ },
                         .{ ._, ._pd, .blendv, .tmp3x, .tmp2x, .tmp1x, ._ },
                         .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
@@ -10070,9 +16773,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10093,7 +16797,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._pd, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
                         .{ ._, ._pd, .mova, .tmp3x, .tmp2x, ._, ._ },
                         .{ ._, ._pd, .min, .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, ._pd, .cmp, .tmp1x, .tmp1x, .vp(.ord), ._ },
+                        .{ ._, ._pd, .cmp, .tmp1x, .tmp1x, .sp(.ord), ._ },
                         .{ ._, ._pd, .@"and", .tmp3x, .tmp1x, ._, ._ },
                         .{ ._, ._pd, .andn, .tmp1x, .tmp2x, ._, ._ },
                         .{ ._, ._pd, .@"or", .tmp1x, .tmp3x, ._, ._ },
@@ -10106,9 +16810,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
                         .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
@@ -10140,11 +16845,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
                         .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_x87, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_x87 } },
-                        .{ .src = .{ .to_x87, .to_x87 } },
+                        .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_x87, .none } },
+                        .{ .src = .{ .to_x87, .to_x87, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .f80, .kind = .{ .reg = .st7 } },
@@ -10172,11 +16878,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
                         .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_x87, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_x87 } },
-                        .{ .src = .{ .to_x87, .to_x87 } },
+                        .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_x87, .none } },
+                        .{ .src = .{ .to_x87, .to_x87, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .f80, .kind = .{ .reg = .st7 } },
@@ -10210,11 +16917,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
                         .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_x87, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_x87 } },
-                        .{ .src = .{ .to_x87, .to_x87 } },
+                        .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_x87, .none } },
+                        .{ .src = .{ .to_x87, .to_x87, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .f80, .kind = .{ .reg = .st7 } },
@@ -10248,9 +16956,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10283,9 +16992,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10324,9 +17034,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10365,9 +17076,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .scalar_float = .{ .of = .xword, .is = .xword } },
                         .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 } } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
@@ -10391,9 +17103,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
@@ -10423,9 +17136,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
@@ -10455,9 +17169,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .src_constraints = .{
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                         .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
@@ -10529,17 +17244,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                 })) {
                     else => unreachable,
                     inline .@"and", .@"or", .xor => |mir_tag| comptime &.{ .{
-                        .src_constraints = .{ .{ .size = .byte }, .{ .size = .byte } },
+                        .src_constraints = .{ .{ .size = .byte }, .{ .size = .byte }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .mut_mem, .imm8 } },
-                            .{ .src = .{ .imm8, .mut_mem }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_gpr, .imm8 } },
-                            .{ .src = .{ .imm8, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .mut_mem, .to_gpr } },
-                            .{ .src = .{ .to_gpr, .mut_mem }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_gpr, .mem } },
-                            .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                            .{ .src = .{ .mut_mem, .imm8, .none } },
+                            .{ .src = .{ .imm8, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_gpr, .imm8, .none } },
+                            .{ .src = .{ .imm8, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .mut_mem, .to_gpr, .none } },
+                            .{ .src = .{ .to_gpr, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                            .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
                         },
                         .dst_temps = .{.{ .ref = .src0 }},
                         .clobbers = .{ .eflags = true },
@@ -10547,17 +17262,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .{ ._, ._, mir_tag, .dst0b, .src1b, ._, ._ },
                         } },
                     }, .{
-                        .src_constraints = .{ .{ .size = .word }, .{ .size = .word } },
+                        .src_constraints = .{ .{ .size = .word }, .{ .size = .word }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .mut_mem, .imm16 } },
-                            .{ .src = .{ .imm16, .mut_mem }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_gpr, .imm16 } },
-                            .{ .src = .{ .imm16, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .mut_mem, .to_gpr } },
-                            .{ .src = .{ .to_gpr, .mut_mem }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_gpr, .mem } },
-                            .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                            .{ .src = .{ .mut_mem, .imm16, .none } },
+                            .{ .src = .{ .imm16, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_gpr, .imm16, .none } },
+                            .{ .src = .{ .imm16, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .mut_mem, .to_gpr, .none } },
+                            .{ .src = .{ .to_gpr, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                            .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
                         },
                         .dst_temps = .{.{ .ref = .src0 }},
                         .clobbers = .{ .eflags = true },
@@ -10565,17 +17280,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .{ ._, ._, mir_tag, .dst0w, .src1w, ._, ._ },
                         } },
                     }, .{
-                        .src_constraints = .{ .{ .size = .dword }, .{ .size = .dword } },
+                        .src_constraints = .{ .{ .size = .dword }, .{ .size = .dword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .mut_mem, .imm32 } },
-                            .{ .src = .{ .imm32, .mut_mem }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_gpr, .imm32 } },
-                            .{ .src = .{ .imm32, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .mut_mem, .to_gpr } },
-                            .{ .src = .{ .to_gpr, .mut_mem }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_gpr, .mem } },
-                            .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                            .{ .src = .{ .mut_mem, .imm32, .none } },
+                            .{ .src = .{ .imm32, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_gpr, .imm32, .none } },
+                            .{ .src = .{ .imm32, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .mut_mem, .to_gpr, .none } },
+                            .{ .src = .{ .to_gpr, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                            .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
                         },
                         .dst_temps = .{.{ .ref = .src0 }},
                         .clobbers = .{ .eflags = true },
@@ -10584,17 +17299,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .@"64bit", null, null, null },
-                        .src_constraints = .{ .{ .size = .qword }, .{ .size = .qword } },
+                        .src_constraints = .{ .{ .size = .qword }, .{ .size = .qword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .mut_mem, .simm32 } },
-                            .{ .src = .{ .simm32, .mut_mem }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_gpr, .simm32 } },
-                            .{ .src = .{ .simm32, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .mut_mem, .to_gpr } },
-                            .{ .src = .{ .to_gpr, .mut_mem }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_gpr, .mem } },
-                            .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                            .{ .src = .{ .mut_mem, .simm32, .none } },
+                            .{ .src = .{ .simm32, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_gpr, .simm32, .none } },
+                            .{ .src = .{ .simm32, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .mut_mem, .to_gpr, .none } },
+                            .{ .src = .{ .to_gpr, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                            .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
                         },
                         .dst_temps = .{.{ .ref = .src0 }},
                         .clobbers = .{ .eflags = true },
@@ -10603,11 +17318,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .mmx, null, null, null },
-                        .src_constraints = .{ .{ .size = .qword }, .{ .size = .qword } },
+                        .src_constraints = .{ .{ .size = .qword }, .{ .size = .qword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_mut_mm, .mem } },
-                            .{ .src = .{ .mem, .to_mut_mm }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_mm, .to_mm } },
+                            .{ .src = .{ .to_mut_mm, .mem, .none } },
+                            .{ .src = .{ .mem, .to_mut_mm, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_mm, .to_mm, .none } },
                         },
                         .dst_temps = .{.{ .ref = .src0 }},
                         .each = .{ .once = &.{
@@ -10615,11 +17330,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .avx, null, null, null },
-                        .src_constraints = .{ .{ .size = .xword }, .{ .size = .xword } },
+                        .src_constraints = .{ .{ .size = .xword }, .{ .size = .xword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_xmm, .mem } },
-                            .{ .src = .{ .mem, .to_xmm }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_xmm, .to_xmm } },
+                            .{ .src = .{ .to_xmm, .mem, .none } },
+                            .{ .src = .{ .mem, .to_xmm, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_xmm, .to_xmm, .none } },
                         },
                         .dst_temps = .{.{ .rc = .sse }},
                         .each = .{ .once = &.{
@@ -10627,11 +17342,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .sse2, null, null, null },
-                        .src_constraints = .{ .{ .size = .xword }, .{ .size = .xword } },
+                        .src_constraints = .{ .{ .size = .xword }, .{ .size = .xword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_mut_xmm, .mem } },
-                            .{ .src = .{ .mem, .to_mut_xmm }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_xmm, .to_xmm } },
+                            .{ .src = .{ .to_mut_xmm, .mem, .none } },
+                            .{ .src = .{ .mem, .to_mut_xmm, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_xmm, .to_xmm, .none } },
                         },
                         .dst_temps = .{.{ .ref = .src0 }},
                         .each = .{ .once = &.{
@@ -10639,11 +17354,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .sse, null, null, null },
-                        .src_constraints = .{ .{ .size = .xword }, .{ .size = .xword } },
+                        .src_constraints = .{ .{ .size = .xword }, .{ .size = .xword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_mut_xmm, .mem } },
-                            .{ .src = .{ .mem, .to_mut_xmm }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_mut_xmm, .to_xmm } },
+                            .{ .src = .{ .to_mut_xmm, .mem, .none } },
+                            .{ .src = .{ .mem, .to_mut_xmm, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_mut_xmm, .to_xmm, .none } },
                         },
                         .dst_temps = .{.{ .ref = .src0 }},
                         .each = .{ .once = &.{
@@ -10651,11 +17366,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .avx2, null, null, null },
-                        .src_constraints = .{ .{ .size = .yword }, .{ .size = .yword } },
+                        .src_constraints = .{ .{ .size = .yword }, .{ .size = .yword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_ymm, .mem } },
-                            .{ .src = .{ .mem, .to_ymm }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_ymm, .to_ymm } },
+                            .{ .src = .{ .to_ymm, .mem, .none } },
+                            .{ .src = .{ .mem, .to_ymm, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_ymm, .to_ymm, .none } },
                         },
                         .dst_temps = .{.{ .rc = .sse }},
                         .each = .{ .once = &.{
@@ -10663,11 +17378,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .avx, null, null, null },
-                        .src_constraints = .{ .{ .size = .yword }, .{ .size = .yword } },
+                        .src_constraints = .{ .{ .size = .yword }, .{ .size = .yword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_ymm, .mem } },
-                            .{ .src = .{ .mem, .to_ymm }, .commute = .{ 0, 1 } },
-                            .{ .src = .{ .to_ymm, .to_ymm } },
+                            .{ .src = .{ .to_ymm, .mem, .none } },
+                            .{ .src = .{ .mem, .to_ymm, .none }, .commute = .{ 0, 1 } },
+                            .{ .src = .{ .to_ymm, .to_ymm, .none } },
                         },
                         .dst_temps = .{.{ .rc = .sse }},
                         .each = .{ .once = &.{
@@ -10675,9 +17390,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .avx2, null, null, null },
-                        .src_constraints = .{ .{ .multiple_size = .yword }, .{ .multiple_size = .yword } },
+                        .src_constraints = .{ .{ .multiple_size = .yword }, .{ .multiple_size = .yword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_mem, .to_mem } },
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
                         },
                         .extra_temps = .{
                             .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10702,9 +17417,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .avx, null, null, null },
-                        .src_constraints = .{ .{ .multiple_size = .yword }, .{ .multiple_size = .yword } },
+                        .src_constraints = .{ .{ .multiple_size = .yword }, .{ .multiple_size = .yword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_mem, .to_mem } },
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
                         },
                         .extra_temps = .{
                             .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10729,9 +17444,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .avx, null, null, null },
-                        .src_constraints = .{ .{ .multiple_size = .xword }, .{ .multiple_size = .xword } },
+                        .src_constraints = .{ .{ .multiple_size = .xword }, .{ .multiple_size = .xword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_mem, .to_mem } },
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
                         },
                         .extra_temps = .{
                             .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10756,9 +17471,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .sse2, null, null, null },
-                        .src_constraints = .{ .{ .multiple_size = .xword }, .{ .multiple_size = .xword } },
+                        .src_constraints = .{ .{ .multiple_size = .xword }, .{ .multiple_size = .xword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_mem, .to_mem } },
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
                         },
                         .extra_temps = .{
                             .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10783,9 +17498,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .sse, null, null, null },
-                        .src_constraints = .{ .{ .multiple_size = .xword }, .{ .multiple_size = .xword } },
+                        .src_constraints = .{ .{ .multiple_size = .xword }, .{ .multiple_size = .xword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_mem, .to_mem } },
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
                         },
                         .extra_temps = .{
                             .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10810,9 +17525,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         } },
                     }, .{
                         .required_features = .{ .mmx, null, null, null },
-                        .src_constraints = .{ .{ .multiple_size = .qword }, .{ .multiple_size = .qword } },
+                        .src_constraints = .{ .{ .multiple_size = .qword }, .{ .multiple_size = .qword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_mem, .to_mem } },
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
                         },
                         .extra_temps = .{
                             .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10836,9 +17551,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                         } },
                     }, .{
-                        .src_constraints = .{ .{ .multiple_size = .qword }, .{ .multiple_size = .qword } },
+                        .src_constraints = .{ .{ .multiple_size = .qword }, .{ .multiple_size = .qword }, .any },
                         .patterns = &.{
-                            .{ .src = .{ .to_mem, .to_mem } },
+                            .{ .src = .{ .to_mem, .to_mem, .none } },
                         },
                         .extra_temps = .{
                             .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -10878,20 +17593,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                 var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
                 var res: [1]Temp = undefined;
                 cg.select(&res, &.{ty_op.ty.toType()}, &ops, comptime &.{ .{
-                    .src_constraints = .{ .{ .signed_or_exact_int = .byte }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .not, .dst0b, ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .byte }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -10899,20 +17614,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .xor, .dst0b, .sa(.src0, .add_umax), ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_or_exact_int = .word }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .not, .dst0w, ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .word }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -10920,20 +17635,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .xor, .dst0w, .sa(.src0, .add_umax), ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_or_exact_int = .dword }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .not, .dst0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .dword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -10942,10 +17657,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_int = .qword }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
@@ -10953,10 +17668,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .each = .{ .once = &.{
@@ -10965,10 +17680,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .mmx, null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_int = .qword }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_mm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_mm, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .mmx }},
                     .each = .{ .once = &.{
@@ -10977,9 +17692,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .mmx, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_mm, .none } },
+                        .{ .src = .{ .to_mut_mm, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -10999,10 +17714,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_int = .xword }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_int = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_xmm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_xmm, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -11011,9 +17726,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .xword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_xmm, .none } },
+                        .{ .src = .{ .to_xmm, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -11033,10 +17748,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_int = .xword }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_int = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_xmm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_xmm, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -11045,9 +17760,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .xword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_xmm, .none } },
+                        .{ .src = .{ .to_mut_xmm, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -11067,9 +17782,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .int = .xword }, .any },
+                    .src_constraints = .{ .{ .int = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_xmm, .none } },
+                        .{ .src = .{ .to_mut_xmm, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -11089,10 +17804,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_int = .yword }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_int = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_ymm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_ymm, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -11101,9 +17816,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .yword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_ymm, .none } },
+                        .{ .src = .{ .to_ymm, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -11123,10 +17838,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_int = .yword }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_int = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_ymm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_ymm, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -11135,9 +17850,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .yword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_ymm, .none } },
+                        .{ .src = .{ .to_ymm, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -11157,9 +17872,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .yword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .yword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11186,9 +17901,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .yword, .is = .yword } }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .yword, .is = .yword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11213,9 +17928,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .yword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .yword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11242,9 +17957,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .yword, .is = .yword } }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .yword, .is = .yword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11269,9 +17984,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11296,9 +18011,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11324,9 +18039,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11350,9 +18065,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .signed_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11377,9 +18092,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11404,9 +18119,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .xword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11436,9 +18151,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .qword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .qword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11463,9 +18178,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .qword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .qword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11491,9 +18206,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .dword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .dword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11517,9 +18232,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .dword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .exact_remainder_int = .{ .of = .dword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11548,9 +18263,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11575,9 +18290,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11607,9 +18322,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11633,9 +18348,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11664,9 +18379,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11692,9 +18407,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11723,9 +18438,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11750,9 +18465,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11780,10 +18495,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .mmx, null, null, null },
-                    .src_constraints = .{ .{ .signed_int_or_full_vec = .qword }, .any },
+                    .src_constraints = .{ .{ .signed_int_or_full_vec = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_mm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_mm, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .mmx }},
                     .each = .{ .once = &.{
@@ -11792,9 +18507,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .mmx, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int_vec = .qword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int_vec = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_mm, .none } },
+                        .{ .src = .{ .to_mut_mm, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -11814,10 +18529,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .signed_int_or_full_vec = .xword }, .any },
+                    .src_constraints = .{ .{ .signed_int_or_full_vec = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_xmm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_xmm, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -11826,9 +18541,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int_vec = .xword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int_vec = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_xmm, .none } },
+                        .{ .src = .{ .to_xmm, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -11848,10 +18563,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .signed_int_or_full_vec = .xword }, .any },
+                    .src_constraints = .{ .{ .signed_int_or_full_vec = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_xmm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_xmm, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -11860,9 +18575,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int_vec = .xword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int_vec = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_xmm, .none } },
+                        .{ .src = .{ .to_mut_xmm, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -11882,9 +18597,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .vec = .xword }, .any },
+                    .src_constraints = .{ .{ .vec = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_xmm, .none } },
+                        .{ .src = .{ .to_mut_xmm, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -11904,10 +18619,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .signed_int_or_full_vec = .yword }, .any },
+                    .src_constraints = .{ .{ .signed_int_or_full_vec = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_ymm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_ymm, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -11916,9 +18631,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int_vec = .yword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int_vec = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_ymm, .none } },
+                        .{ .src = .{ .to_ymm, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -11938,10 +18653,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .signed_int_or_full_vec = .yword }, .any },
+                    .src_constraints = .{ .{ .signed_int_or_full_vec = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_ymm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_ymm, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .sse }},
                     .each = .{ .once = &.{
@@ -11950,9 +18665,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int_vec = .yword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int_vec = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_ymm, .none } },
+                        .{ .src = .{ .to_ymm, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -11973,7 +18688,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -11999,7 +18714,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -12089,10 +18804,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                 var res: [1]Temp = undefined;
                 cg.select(&res, &.{ty_op.ty.toType()}, &ops, comptime &.{ .{
                     .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .exact_signed_int = 1 }, .any },
+                    .src_constraints = .{ .{ .exact_signed_int = 1 }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12100,10 +18815,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .add, .dst0b, .si(1), ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .exact_signed_int = 1 }, .any },
+                    .src_constraints = .{ .{ .exact_signed_int = 1 }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12111,10 +18826,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._c, .in, .dst0b, ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .exact_unsigned_int = 1 }, .any },
+                    .src_constraints = .{ .{ .exact_unsigned_int = 1 }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12123,10 +18838,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_or_exact_int = .byte }, .any },
+                    .src_constraints = .{ .{ .unsigned_or_exact_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12137,10 +18852,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .byte }, .any },
+                    .src_constraints = .{ .{ .signed_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12152,9 +18867,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .false_deps_lzcnt_tzcnt, .lzcnt, null, null },
-                    .src_constraints = .{ .{ .exact_int = 16 }, .any },
+                    .src_constraints = .{ .{ .exact_int = 16 }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12163,10 +18878,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, null, null, null },
-                    .src_constraints = .{ .{ .exact_int = 16 }, .any },
+                    .src_constraints = .{ .{ .exact_int = 16 }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12175,9 +18890,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .word }, .any },
+                    .src_constraints = .{ .{ .signed_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12188,9 +18903,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .false_deps_lzcnt_tzcnt, .lzcnt, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .word }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12200,10 +18915,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .word }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12213,9 +18928,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .false_deps_lzcnt_tzcnt, .lzcnt, null, null },
-                    .src_constraints = .{ .{ .exact_int = 32 }, .any },
+                    .src_constraints = .{ .{ .exact_int = 32 }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12224,10 +18939,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, null, null, null },
-                    .src_constraints = .{ .{ .exact_int = 32 }, .any },
+                    .src_constraints = .{ .{ .exact_int = 32 }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12236,9 +18951,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .dword }, .any },
+                    .src_constraints = .{ .{ .signed_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12249,9 +18964,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .false_deps_lzcnt_tzcnt, .lzcnt, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .dword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12261,10 +18976,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .dword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12274,9 +18989,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .false_deps_lzcnt_tzcnt, .lzcnt, null },
-                    .src_constraints = .{ .{ .exact_int = 64 }, .any },
+                    .src_constraints = .{ .{ .exact_int = 64 }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12285,10 +19000,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, null, null },
-                    .src_constraints = .{ .{ .exact_int = 64 }, .any },
+                    .src_constraints = .{ .{ .exact_int = 64 }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12297,10 +19012,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, null, null },
-                    .src_constraints = .{ .{ .signed_int = .qword }, .any },
+                    .src_constraints = .{ .{ .signed_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12312,9 +19027,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .false_deps_lzcnt_tzcnt, .lzcnt, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12324,10 +19039,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12337,10 +19052,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .byte }, .any },
+                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -12364,10 +19079,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .signed_po2_int = .byte }, .any },
+                    .src_constraints = .{ .{ .signed_po2_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -12392,10 +19107,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .signed_int = .byte }, .any },
+                    .src_constraints = .{ .{ .signed_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -12421,10 +19136,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .byte }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -12449,10 +19164,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .byte }, .any },
+                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12465,10 +19180,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .signed_po2_int = .byte }, .any },
+                    .src_constraints = .{ .{ .signed_po2_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12482,10 +19197,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .byte }, .any },
+                    .src_constraints = .{ .{ .signed_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -12511,10 +19226,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .byte }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -12538,10 +19253,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .sbb, .dst0b, .tmp0b, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .byte }, .any },
+                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -12563,10 +19278,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .xor, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_po2_int = .byte }, .any },
+                    .src_constraints = .{ .{ .signed_po2_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -12589,10 +19304,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .xor, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .byte }, .any },
+                    .src_constraints = .{ .{ .signed_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -12616,10 +19331,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .byte }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -12643,9 +19358,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .word }, .any },
+                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12657,9 +19372,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .signed_int = .word }, .any },
+                    .src_constraints = .{ .{ .signed_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12673,9 +19388,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .word }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12688,9 +19403,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .word }, .any },
+                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12702,9 +19417,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .word }, .any },
+                    .src_constraints = .{ .{ .signed_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12718,9 +19433,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .word }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12732,10 +19447,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .sbb, .dst0b, .src0b, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .word }, .any },
+                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12745,9 +19460,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .xor, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .word }, .any },
+                    .src_constraints = .{ .{ .signed_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
@@ -12770,10 +19485,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .word }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
@@ -12796,9 +19511,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .dword }, .any },
+                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12810,9 +19525,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .signed_int = .dword }, .any },
+                    .src_constraints = .{ .{ .signed_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12826,9 +19541,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .dword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12841,9 +19556,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .dword }, .any },
+                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -12855,9 +19570,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .dword }, .any },
+                    .src_constraints = .{ .{ .signed_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12871,9 +19586,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .dword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12885,10 +19600,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .sbb, .dst0b, .src0b, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .dword }, .any },
+                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12898,9 +19613,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .xor, .dst0b, .sia(-1, .src0, .add_bit_size), ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .dword }, .any },
+                    .src_constraints = .{ .{ .signed_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -12923,10 +19638,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .sub, .dst0b, .tmp0b, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .dword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -12949,9 +19664,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .cmov, .bsf_bsr_0_clobbers_result, null },
-                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .qword }, .any },
+                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -12963,10 +19678,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .cmov, .bsf_bsr_0_clobbers_result, null },
-                    .src_constraints = .{ .{ .signed_int = .qword }, .any },
+                    .src_constraints = .{ .{ .signed_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
@@ -12992,9 +19707,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .cmov, .bsf_bsr_0_clobbers_result, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -13007,9 +19722,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .qword }, .any },
+                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -13021,10 +19736,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .signed_int = .qword }, .any },
+                    .src_constraints = .{ .{ .signed_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
@@ -13050,9 +19765,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -13065,10 +19780,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .qword }, .any },
+                    .src_constraints = .{ .{ .unsigned_po2_or_exact_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -13079,10 +19794,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .qword }, .any },
+                    .src_constraints = .{ .{ .signed_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
@@ -13107,10 +19822,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
@@ -13133,9 +19848,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .false_deps_lzcnt_tzcnt, .lzcnt, null },
-                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13163,9 +19878,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, null, null },
-                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13192,9 +19907,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13223,9 +19938,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13253,9 +19968,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .false_deps_lzcnt_tzcnt, .lzcnt, null },
-                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13283,9 +19998,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, null, null },
-                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13312,9 +20027,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13343,9 +20058,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .unsigned_or_exact_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13373,9 +20088,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .false_deps_lzcnt_tzcnt, .lzcnt, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13406,9 +20121,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13438,9 +20153,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13470,9 +20185,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .false_deps_lzcnt_tzcnt, .lzcnt, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13503,9 +20218,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13535,9 +20250,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -13567,9 +20282,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13596,9 +20311,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13625,9 +20340,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13654,9 +20369,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13683,9 +20398,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13712,9 +20427,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .lzcnt, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13741,9 +20456,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, .slow_incdec, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13770,9 +20485,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13799,9 +20514,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, .slow_incdec, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13831,9 +20546,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13863,9 +20578,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13895,9 +20610,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13927,9 +20642,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13957,9 +20672,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -13988,9 +20703,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, .slow_incdec, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14020,9 +20735,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14052,9 +20767,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14084,9 +20799,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14116,9 +20831,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14146,9 +20861,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14177,9 +20892,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, .slow_incdec, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14209,9 +20924,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14241,9 +20956,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14273,9 +20988,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .bsf_bsr_0_clobbers_result, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14305,9 +21020,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14335,9 +21050,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14366,9 +21081,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .cmov, .bsf_bsr_0_clobbers_result, .slow_incdec },
-                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14398,9 +21113,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .cmov, .bsf_bsr_0_clobbers_result, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14430,9 +21145,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .bsf_bsr_0_clobbers_result, .slow_incdec, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14462,9 +21177,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .bsf_bsr_0_clobbers_result, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14494,9 +21209,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14525,9 +21240,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any },
+                    .src_constraints = .{ .{ .scalar_int_is = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14556,10 +21271,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .false_deps_lzcnt_tzcnt, .lzcnt, null },
-                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int_is = .byte }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14596,10 +21311,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, null, null },
-                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int_is = .byte }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14635,10 +21350,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int_is = .byte }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14674,10 +21389,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .false_deps_lzcnt_tzcnt, .lzcnt, null },
-                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int_is = .byte }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14714,10 +21429,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, null, null },
-                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int_is = .byte }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14753,10 +21468,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int_is = .byte }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14792,10 +21507,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .false_deps_lzcnt_tzcnt, .lzcnt, null },
-                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int_is = .word }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14832,10 +21547,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, null, null },
-                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int_is = .word }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14871,10 +21586,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int_is = .word }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14910,10 +21625,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .false_deps_lzcnt_tzcnt, .lzcnt, null },
-                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int_is = .word }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14950,10 +21665,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .lzcnt, null, null },
-                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int_is = .word }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -14989,10 +21704,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .xword } }, .any },
+                    .src_constraints = .{ .{ .scalar_remainder_int = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int_is = .word }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -15005,50 +21720,2361 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1q, .mem(.src0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .sia(-8, .none, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3q, .ua(.src0, .add_umax), ._, ._ },
-                        .{ .@"1:", ._, .@"and", .tmp3q, .leai(.tmp1q, .tmp2), ._, ._ },
-                        .{ ._, ._r, .bs, .tmp3q, .tmp3q, ._, ._ },
-                        .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp3q, .si(-1), ._, ._ },
-                        .{ ._, ._, .sub, .tmp2d, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"1b", ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
-                        .{ .@"1:", ._, .lea, .tmp3d, .leasiad(.tmp3, .@"8", .tmp2, .sub_src0_bit_size, 1), ._, ._ },
-                        .{ ._, ._, .neg, .tmp3d, ._, ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0w, .@"2", .tmp0, .add_2_len), .tmp3w, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1q, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                } }) catch |err| switch (err) {
-                    error.SelectFailed => return cg.fail("failed to select {s} {} {}", .{
-                        @tagName(air_tag),
-                        cg.typeOf(ty_op.operand).fmt(pt),
-                        ops[0].tracking(cg),
-                    }),
-                    else => |e| return e,
-                };
-                try res[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-
-            .cmp_vector, .cmp_vector_optimized => |air_tag| if (use_old) try cg.airCmpVector(inst) else fallback: {
-                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
-                const extra = cg.air.extraData(Air.VectorCmp, ty_pl.payload).data;
-                switch (extra.compareOperator()) {
-                    .eq, .neq => {},
-                    else => break :fallback try cg.airCmpVector(inst),
-                }
-                var ops = try cg.tempsFromOperands(inst, .{ extra.lhs, extra.rhs });
-                var res: [1]Temp = undefined;
-                switch (extra.compareOperator()) {
-                    .lt => unreachable,
-                    .lte => unreachable,
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1q, .mem(.src0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .sia(-8, .none, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3q, .ua(.src0, .add_umax), ._, ._ },
+                        .{ .@"1:", ._, .@"and", .tmp3q, .leai(.tmp1q, .tmp2), ._, ._ },
+                        .{ ._, ._r, .bs, .tmp3q, .tmp3q, ._, ._ },
+                        .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp3q, .si(-1), ._, ._ },
+                        .{ ._, ._, .sub, .tmp2d, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"1b", ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                        .{ .@"1:", ._, .lea, .tmp3d, .leasiad(.tmp3, .@"8", .tmp2, .sub_src0_bit_size, 1), ._, ._ },
+                        .{ ._, ._, .neg, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0w, .@"2", .tmp0, .add_2_len), .tmp3w, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1q, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(ty_op.operand).fmt(pt),
+                        ops[0].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+
+            .cmp_vector, .cmp_vector_optimized => |air_tag| if (use_old) try cg.airCmpVector(inst) else fallback: {
+                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
+                const extra = cg.air.extraData(Air.VectorCmp, ty_pl.payload).data;
+                switch (extra.compareOperator()) {
+                    .eq, .neq => {},
+                    .lt, .lte, .gte, .gt => if (cg.floatBits(cg.typeOf(extra.lhs).childType(zcu)) == null)
+                        break :fallback try cg.airCmpVector(inst),
+                }
+                var ops = try cg.tempsFromOperands(inst, .{ extra.lhs, extra.rhs });
+                var res: [1]Temp = undefined;
+                (err: switch (extra.compareOperator()) {
+                    .lt, .lte, .gte, .gt => |cmp_op| {
+                        switch (cmp_op) {
+                            else => unreachable,
+                            .lt, .lte => {},
+                            .gt, .gte => std.mem.swap(Temp, &ops[0], &ops[1]),
+                        }
+                        break :err cg.select(&res, &.{ty_pl.ty.toType()}, &ops, switch (@as(Condition, switch (cmp_op) {
+                            else => unreachable,
+                            .lt, .gt => .l,
+                            .lte, .gte => .le,
+                        })) {
+                            else => unreachable,
+                            inline .l, .le => |cc| comptime &.{ .{
+                                .required_features = .{ .f16c, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .mut_rc_mask = .{
+                                    .ref = .src0,
+                                    .rc = .sse,
+                                    .info = .{ .kind = .all, .scalar = .dword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                                    .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                                    .{ ._, .v_ss, .cmp, .dst0x, .dst0x, .tmp0d, .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                } },
+                            }, .{
+                                .required_features = .{ .f16c, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                                    .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .mem, .mem, .none } },
+                                    .{ .src = .{ .sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .sse, .none } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .kind = .{ .rc = .sse } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .mut_rc_mask = .{
+                                    .ref = .src0,
+                                    .rc = .sse,
+                                    .info = .{ .kind = .all, .scalar = .dword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                                    .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                                    .{ ._, .v_ps, .cmp, .dst0x, .dst0x, .tmp0x, .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                } },
+                            }, .{
+                                .required_features = .{ .f16c, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                                    .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .mem, .mem, .none } },
+                                    .{ .src = .{ .to_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_sse, .none } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .kind = .{ .rc = .sse } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .mut_rc_mask = .{
+                                    .ref = .src0,
+                                    .rc = .sse,
+                                    .info = .{ .kind = .all, .scalar = .dword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                                    .{ ._, .v_ps, .cvtph2, .tmp0y, .src1x, ._, ._ },
+                                    .{ ._, .v_ps, .cmp, .dst0y, .dst0y, .tmp0y, .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                                    .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
+                                },
+                                .dst_temps = .{.{ .mut_rc_mask = .{
+                                    .ref = .src0,
+                                    .rc = .sse,
+                                    .info = .{ .kind = .all, .scalar = .dword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, .v_ss, .cmp, .dst0x, .src0x, .src1d, .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                                    .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mut_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                                },
+                                .dst_temps = .{.{ .ref_mask = .{
+                                    .ref = .src0,
+                                    .info = .{ .kind = .all, .scalar = .dword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, ._ss, .cmp, .dst0x, .src1d, .sp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }), ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                                    .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
+                                },
+                                .dst_temps = .{.{ .mut_rc_mask = .{
+                                    .ref = .src0,
+                                    .rc = .sse,
+                                    .info = .{ .kind = .all, .scalar = .dword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, .v_ps, .cmp, .dst0x, .src0x, .src1x, .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                                    .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mut_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                                },
+                                .dst_temps = .{.{ .ref_mask = .{
+                                    .ref = .src0,
+                                    .info = .{ .kind = .all, .scalar = .dword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, ._ps, .cmp, .dst0x, .src1x, .sp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }), ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                                    .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
+                                },
+                                .dst_temps = .{.{ .mut_rc_mask = .{
+                                    .ref = .src0,
+                                    .rc = .sse,
+                                    .info = .{ .kind = .all, .scalar = .dword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, .v_ps, .cmp, .dst0y, .src0y, .src1y, .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                                    .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
+                                },
+                                .dst_temps = .{.{ .mut_rc_mask = .{
+                                    .ref = .src0,
+                                    .rc = .sse,
+                                    .info = .{ .kind = .all, .scalar = .qword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, .v_sd, .cmp, .dst0x, .src0x, .src1q, .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse2, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                                    .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mut_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                                },
+                                .dst_temps = .{.{ .ref_mask = .{
+                                    .ref = .src0,
+                                    .info = .{ .kind = .all, .scalar = .qword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, ._sd, .cmp, .dst0x, .src1q, .sp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }), ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                                    .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
+                                },
+                                .dst_temps = .{.{ .mut_rc_mask = .{
+                                    .ref = .src0,
+                                    .rc = .sse,
+                                    .info = .{ .kind = .all, .scalar = .qword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, .v_pd, .cmp, .dst0x, .src0x, .src1x, .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse2, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                                    .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mut_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_mut_sse, .to_sse, .none } },
+                                },
+                                .dst_temps = .{.{ .ref_mask = .{
+                                    .ref = .src0,
+                                    .info = .{ .kind = .all, .scalar = .qword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, ._pd, .cmp, .dst0x, .src1x, .sp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }), ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, null, null, null },
+                                .src_constraints = .{
+                                    .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                                    .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
+                                },
+                                .dst_temps = .{.{ .mut_rc_mask = .{
+                                    .ref = .src0,
+                                    .rc = .sse,
+                                    .info = .{ .kind = .all, .scalar = .qword },
+                                } }},
+                                .each = .{ .once = &.{
+                                    .{ ._, .v_pd, .cmp, .dst0y, .src0y, .src1y, .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                } },
+                            }, .{
+                                .required_features = .{ .f16c, .slow_incdec, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                                    .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                                    .{ .@"0:", .v_ps, .cvtph2, .tmp2y, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_ps, .cvtph2, .tmp3y, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_ps, .cmp, .tmp2y, .tmp2y, .tmp3y, .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                    .{ ._, .v_ps, .movmsk, .tmp4d, .tmp2y, ._, ._ },
+                                    .{ ._, ._, .mov, .lea(.tmp1b), .tmp4b, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .f16c, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                                    .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                                    .{ .@"0:", .v_ps, .cvtph2, .tmp2y, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_ps, .cvtph2, .tmp3y, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_ps, .cmp, .tmp2y, .tmp2y, .tmp3y, .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                    .{ ._, .v_ps, .movmsk, .tmp4d, .tmp2y, ._, ._ },
+                                    .{ ._, ._, .mov, .lea(.tmp1b), .tmp4b, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1p, ._, ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, .slow_incdec, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .dst_constraints = .{.{ .bool_vec = .dword }},
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u32, .kind = .{ .reg = .edx } },
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .rc = .general_purpose }},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                                    .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ },
+                                    .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memsi(.src0w, .@"2", .tmp0), .ui(0) },
+                                    .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memsi(.src1w, .@"2", .tmp0), .ui(0) },
+                                    .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp4d, .tmp4d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp6b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp6d, .tmp5b, ._, ._ },
+                                    .{ ._, ._, .@"or", .dst0d, .tmp6d, ._, ._ },
+                                    .{ ._, ._, .add, .tmp0d, .si(1), ._, ._ },
+                                    .{ ._, ._, .cmp, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                                    .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .dst_constraints = .{.{ .bool_vec = .dword }},
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u32, .kind = .{ .reg = .edx } },
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .rc = .general_purpose }},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                                    .{ .@"0:", .vp_, .xor, .tmp2x, .tmp2x, .tmp2x, ._ },
+                                    .{ ._, .vp_w, .insr, .tmp1x, .tmp2x, .memsi(.src0w, .@"2", .tmp0), .ui(0) },
+                                    .{ ._, .vp_w, .insr, .tmp2x, .tmp2x, .memsi(.src1w, .@"2", .tmp0), .ui(0) },
+                                    .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp4d, .tmp4d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp6b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp6d, .tmp5b, ._, ._ },
+                                    .{ ._, ._, .@"or", .dst0d, .tmp6d, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp0d, ._, ._, ._ },
+                                    .{ ._, ._, .cmp, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                                    .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse2, .slow_incdec, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .dst_constraints = .{.{ .bool_vec = .dword }},
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u32, .kind = .{ .reg = .edx } },
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .rc = .general_purpose }},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                                    .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                                    .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                                    .{ ._, .p_w, .insr, .tmp1x, .memsi(.src0w, .@"2", .tmp0), .ui(0), ._ },
+                                    .{ ._, .p_w, .insr, .tmp2x, .memsi(.src1w, .@"2", .tmp0), .ui(0), ._ },
+                                    .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp4d, .tmp4d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp6b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp6d, .tmp5b, ._, ._ },
+                                    .{ ._, ._, .@"or", .dst0d, .tmp6d, ._, ._ },
+                                    .{ ._, ._, .add, .tmp0d, .si(1), ._, ._ },
+                                    .{ ._, ._, .cmp, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                                    .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse2, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .dst_constraints = .{.{ .bool_vec = .dword }},
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u32, .kind = .{ .reg = .edx } },
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .rc = .general_purpose }},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                                    .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                                    .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                                    .{ ._, .p_w, .insr, .tmp1x, .memsi(.src0w, .@"2", .tmp0), .ui(0), ._ },
+                                    .{ ._, .p_w, .insr, .tmp2x, .memsi(.src1w, .@"2", .tmp0), .ui(0), ._ },
+                                    .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp4d, .tmp4d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp6b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp6d, .tmp5b, ._, ._ },
+                                    .{ ._, ._, .@"or", .dst0d, .tmp6d, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp0d, ._, ._, ._ },
+                                    .{ ._, ._, .cmp, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                                    .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse, .slow_incdec, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .dst_constraints = .{.{ .bool_vec = .dword }},
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u32, .kind = .{ .reg = .edx } },
+                                    .{ .type = .f32, .kind = .mem },
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .rc = .general_purpose }},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                                    .{ .@"0:", ._, .movzx, .tmp4d, .memsi(.src0w, .@"2", .tmp0), ._, ._ },
+                                    .{ ._, ._, .mov, .mem(.tmp7d), .tmp4d, ._, ._ },
+                                    .{ ._, ._ss, .mov, .tmp1x, .mem(.tmp7d), ._, ._ },
+                                    .{ ._, ._, .movzx, .tmp4d, .memsi(.src1w, .@"2", .tmp0), ._, ._ },
+                                    .{ ._, ._, .mov, .mem(.tmp7d), .tmp4d, ._, ._ },
+                                    .{ ._, ._ss, .mov, .tmp2x, .mem(.tmp7d), ._, ._ },
+                                    .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp4d, .tmp4d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp6b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp6d, .tmp5b, ._, ._ },
+                                    .{ ._, ._, .@"or", .dst0d, .tmp6d, ._, ._ },
+                                    .{ ._, ._, .add, .tmp0d, .si(1), ._, ._ },
+                                    .{ ._, ._, .cmp, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                                    .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .dst_constraints = .{.{ .bool_vec = .dword }},
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u32, .kind = .{ .reg = .edx } },
+                                    .{ .type = .f32, .kind = .mem },
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .rc = .general_purpose }},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                                    .{ .@"0:", ._, .movzx, .tmp4d, .memsi(.src0w, .@"2", .tmp0), ._, ._ },
+                                    .{ ._, ._, .mov, .mem(.tmp7d), .tmp4d, ._, ._ },
+                                    .{ ._, ._ss, .mov, .tmp1x, .mem(.tmp7d), ._, ._ },
+                                    .{ ._, ._, .movzx, .tmp4d, .memsi(.src1w, .@"2", .tmp0), ._, ._ },
+                                    .{ ._, ._, .mov, .mem(.tmp7d), .tmp4d, ._, ._ },
+                                    .{ ._, ._ss, .mov, .tmp2x, .mem(.tmp7d), ._, ._ },
+                                    .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp6d, .tmp6d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp4d, .tmp4d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp6b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp6d, .tmp5b, ._, ._ },
+                                    .{ ._, ._, .@"or", .dst0d, .tmp6d, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp0d, ._, ._, ._ },
+                                    .{ ._, ._, .cmp, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                                    .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .@"64bit", .avx, .slow_incdec, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u64, .kind = .{ .reg = .rdx } },
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"0:", .vp_, .xor, .tmp3x, .tmp3x, .tmp3x, ._ },
+                                    .{ ._, .vp_w, .insr, .tmp2x, .tmp3x, .memsi(.src0w, .@"2", .tmp0), .ui(0) },
+                                    .{ ._, .vp_w, .insr, .tmp3x, .tmp3x, .memsi(.src1w, .@"2", .tmp0), .ui(0) },
+                                    .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp5d, .tmp5d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp7b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp0d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp7q, .tmp6b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp1q, .tmp7q, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp0d, .lead(.tmp0, 1), ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp0d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp5d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0q, .tmp5, -8), .tmp1q, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"1:", ._, .cmp, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                                    .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp0d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp0d, .ui(6), ._, ._ },
+                                    .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp1q, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .@"64bit", .avx, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u64, .kind = .{ .reg = .rdx } },
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"0:", .vp_, .xor, .tmp3x, .tmp3x, .tmp3x, ._ },
+                                    .{ ._, .vp_w, .insr, .tmp2x, .tmp3x, .memsi(.src0w, .@"2", .tmp0), .ui(0) },
+                                    .{ ._, .vp_w, .insr, .tmp3x, .tmp3x, .memsi(.src1w, .@"2", .tmp0), .ui(0) },
+                                    .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp5d, .tmp5d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp7b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp0d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp7q, .tmp6b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp1q, .tmp7q, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp0d, ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp0d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp5d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0q, .tmp5, -8), .tmp1q, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"1:", ._, .cmp, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                                    .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp0d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp0d, .ui(6), ._, ._ },
+                                    .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp1q, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .@"64bit", .sse2, .slow_incdec, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u64, .kind = .{ .reg = .rdx } },
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"0:", .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                                    .{ ._, .p_w, .insr, .tmp2x, .memsi(.src0w, .@"2", .tmp0), .ui(0), ._ },
+                                    .{ ._, .p_, .xor, .tmp3x, .tmp3x, ._, ._ },
+                                    .{ ._, .p_w, .insr, .tmp3x, .memsi(.src1w, .@"2", .tmp0), .ui(0), ._ },
+                                    .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp5d, .tmp5d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp7b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp0d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp7q, .tmp6b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp1q, .tmp7q, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp0d, .lead(.tmp0, 1), ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp0d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp5d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0q, .tmp5, -8), .tmp1q, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"1:", ._, .cmp, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                                    .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp0d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp0d, .ui(6), ._, ._ },
+                                    .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp1q, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .@"64bit", .sse2, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u64, .kind = .{ .reg = .rdx } },
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"0:", .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                                    .{ ._, .p_w, .insr, .tmp2x, .memsi(.src0w, .@"2", .tmp0), .ui(0), ._ },
+                                    .{ ._, .p_, .xor, .tmp3x, .tmp3x, ._, ._ },
+                                    .{ ._, .p_w, .insr, .tmp3x, .memsi(.src1w, .@"2", .tmp0), .ui(0), ._ },
+                                    .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp5d, .tmp5d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp7b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp0d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp7q, .tmp6b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp1q, .tmp7q, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp0d, ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp0d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp5d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0q, .tmp5, -8), .tmp1q, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"1:", ._, .cmp, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                                    .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp0d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp0d, .ui(6), ._, ._ },
+                                    .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp1q, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .@"64bit", .sse, .slow_incdec, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u64, .kind = .{ .reg = .rdx } },
+                                    .{ .type = .f32, .kind = .mem },
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"0:", ._, .movzx, .tmp5d, .memsi(.src0w, .@"2", .tmp0), ._, ._ },
+                                    .{ ._, ._, .mov, .mem(.tmp8d), .tmp5d, ._, ._ },
+                                    .{ ._, ._ss, .mov, .tmp2x, .mem(.tmp8d), ._, ._ },
+                                    .{ ._, ._, .movzx, .tmp5d, .memsi(.src1w, .@"2", .tmp0), ._, ._ },
+                                    .{ ._, ._, .mov, .mem(.tmp8d), .tmp5d, ._, ._ },
+                                    .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp8d), ._, ._ },
+                                    .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp5d, .tmp5d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp7b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp0d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp7q, .tmp6b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp1q, .tmp7q, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp0d, .lead(.tmp0, 1), ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp0d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp5d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0q, .tmp5, -8), .tmp1q, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"1:", ._, .cmp, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                                    .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp0d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp0d, .ui(6), ._, ._ },
+                                    .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp1q, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .@"64bit", .sse, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u64, .kind = .{ .reg = .rdx } },
+                                    .{ .type = .f32, .kind = .mem },
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"0:", ._, .movzx, .tmp5d, .memsi(.src0w, .@"2", .tmp0), ._, ._ },
+                                    .{ ._, ._, .mov, .mem(.tmp8d), .tmp5d, ._, ._ },
+                                    .{ ._, ._ss, .mov, .tmp2x, .mem(.tmp8d), ._, ._ },
+                                    .{ ._, ._, .movzx, .tmp5d, .memsi(.src1w, .@"2", .tmp0), ._, ._ },
+                                    .{ ._, ._, .mov, .mem(.tmp8d), .tmp5d, ._, ._ },
+                                    .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp8d), ._, ._ },
+                                    .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp5d, .tmp5d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp7b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp0d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp7q, .tmp6b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp1q, .tmp7q, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp0d, ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp0d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp5d, .tmp0d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp5d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0q, .tmp5, -8), .tmp1q, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"1:", ._, .cmp, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                                    .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp0d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp0d, .ui(6), ._, ._ },
+                                    .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp0), .tmp1q, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, .slow_incdec, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                                    .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                                    .{ .@"0:", .v_ps, .mova, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_ps, .cmp, .tmp2y, .tmp2y, .memia(.src1y, .tmp0, .add_size), .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                    .{ ._, .v_ps, .movmsk, .tmp3d, .tmp2y, ._, ._ },
+                                    .{ ._, ._, .mov, .lea(.tmp1b), .tmp3b, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                                    .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                                    .{ .@"0:", .v_ps, .mova, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_ps, .cmp, .tmp2y, .tmp2y, .memia(.src1y, .tmp0, .add_size), .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                    .{ ._, .v_ps, .movmsk, .tmp3d, .tmp2y, ._, ._ },
+                                    .{ ._, ._, .mov, .lea(.tmp1b), .tmp3b, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1q, ._, ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse2, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                                    .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                                    .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                                    .{ .@"0:", ._ps, .mova, .tmp2x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._ps, .mova, .tmp3x, .memiad(.src0x, .tmp0, .add_size, 16), ._, ._ },
+                                    .{ ._, ._ps, .cmp, .tmp2x, .memia(.src1x, .tmp0, .add_size), .sp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }), ._ },
+                                    .{ ._, ._ps, .cmp, .tmp3x, .memiad(.src1x, .tmp0, .add_size, 16), .sp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }), ._ },
+                                    .{ ._, .p_w, .ackssd, .tmp2x, .tmp3x, ._, ._ },
+                                    .{ ._, .p_b, .ackssw, .tmp2x, .tmp2x, ._, ._ },
+                                    .{ ._, .p_b, .movmsk, .tmp4d, .tmp2x, ._, ._ },
+                                    .{ ._, ._, .mov, .lea(.tmp1b), .tmp4b, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                                    .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                                    .{ .@"0:", ._ps, .mova, .tmp2x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._ps, .cmp, .tmp2x, .memia(.src1x, .tmp0, .add_size), .sp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }), ._ },
+                                    .{ ._, ._ps, .movmsk, .tmp3d, .tmp2x, ._, ._ },
+                                    .{ ._, ._ps, .mova, .tmp2x, .memiad(.src0x, .tmp0, .add_size, 16), ._, ._ },
+                                    .{ ._, ._ps, .cmp, .tmp2x, .memiad(.src1x, .tmp0, .add_size, 16), .sp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }), ._ },
+                                    .{ ._, ._ps, .movmsk, .tmp4d, .tmp2x, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp4b, .ui(4), ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp3b, .tmp4b, ._, ._ },
+                                    .{ ._, ._, .mov, .lea(.tmp1b), .tmp3b, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                                    .{ ._, ._mp, .j, .@"1f", ._, ._, ._ },
+                                    .{ .@"0:", ._ps, .mova, .tmp2x, .memiad(.src0x, .tmp0, .add_size, -16), ._, ._ },
+                                    .{ ._, ._ps, .cmp, .tmp2x, .memiad(.src1x, .tmp0, .add_size, -16), .sp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }), ._ },
+                                    .{ ._, ._ps, .movmsk, .tmp4d, .tmp2x, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp4b, .ui(4), ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp3b, .tmp4b, ._, ._ },
+                                    .{ ._, ._, .mov, .lea(.tmp1b), .tmp3b, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 1), ._, ._ },
+                                    .{ .@"1:", ._ps, .mova, .tmp2x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._ps, .cmp, .tmp2x, .memia(.src1x, .tmp0, .add_size), .sp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }), ._ },
+                                    .{ ._, ._ps, .movmsk, .tmp3d, .tmp2x, ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .lea(.tmp1b), .tmp3b, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, .slow_incdec, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } },
+                                    .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                                    .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                                    .{ .@"0:", .v_pd, .mova, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_pd, .mova, .tmp3y, .memiad(.src0y, .tmp0, .add_size, 32), ._, ._ },
+                                    .{ ._, .v_pd, .cmp, .tmp2y, .tmp2y, .memia(.src1y, .tmp0, .add_size), .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                    .{ ._, .v_pd, .cmp, .tmp3y, .tmp3y, .memiad(.src1y, .tmp0, .add_size, 32), .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                    .{ ._, .v_pd, .movmsk, .tmp4d, .tmp2y, ._, ._ },
+                                    .{ ._, .v_pd, .movmsk, .tmp5d, .tmp3y, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp4b, .tmp5b, ._, ._ },
+                                    .{ ._, ._, .mov, .lea(.tmp1b), .tmp4b, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(64), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } },
+                                    .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                                    .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                                    .{ .@"0:", .v_pd, .mova, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_pd, .mova, .tmp3y, .memiad(.src0y, .tmp0, .add_size, 32), ._, ._ },
+                                    .{ ._, .v_pd, .cmp, .tmp2y, .tmp2y, .memia(.src1y, .tmp0, .add_size), .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                    .{ ._, .v_pd, .cmp, .tmp3y, .tmp3y, .memiad(.src1y, .tmp0, .add_size, 32), .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                    .{ ._, .v_pd, .movmsk, .tmp4d, .tmp2y, ._, ._ },
+                                    .{ ._, .v_pd, .movmsk, .tmp5d, .tmp3y, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp5b, .ui(4), ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp4b, .tmp5b, ._, ._ },
+                                    .{ ._, ._, .mov, .lea(.tmp1b), .tmp4b, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1q, ._, ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(64), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                                    .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .reg = .rcx } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", .v_pd, .mova, .tmp3y, .memia(.src0y, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_pd, .cmp, .tmp3y, .tmp3y, .memia(.src1y, .tmp0, .add_size), .vp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }) },
+                                    .{ ._, .v_pd, .movmsk, .tmp4d, .tmp3y, ._, ._ },
+                                    .{ ._, ._l, .ro, .tmp4b, .tmp1b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2b, .tmp4b, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1d, .lead(.tmp1, 4), ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp4d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp4d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0b, .tmp4, -1), .tmp2b, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(32), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memi(.dst0b, .tmp1), .tmp2b, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse2, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .reg = .rcx } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", ._pd, .mova, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._pd, .cmp, .tmp3x, .memia(.src1x, .tmp0, .add_size), .sp(switch (cc) {
+                                        else => unreachable,
+                                        .l => .lt,
+                                        .le => .le,
+                                    }), ._ },
+                                    .{ ._, ._pd, .movmsk, .tmp4d, .tmp3x, ._, ._ },
+                                    .{ ._, ._l, .ro, .tmp4b, .tmp1b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2b, .tmp4b, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1d, .lead(.tmp1, 2), ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp4d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp4d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0b, .tmp4, -1), .tmp2b, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memi(.dst0b, .tmp1), .tmp2b, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .x87, .cmov, .slow_incdec, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                                    .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none }, .commute = .{ 0, 1 } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .reg = .rcx } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                                    .{ .type = .f64, .kind = .{ .reg = .st7 } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", ._, .xor, .tmp3d, .tmp3d, ._, ._ },
+                                    .{ ._, .f_, .ld, .memia(.src1q, .tmp0, .add_size), ._, ._, ._ },
+                                    .{ ._, .f_, .ld, .memia(.src0q, .tmp0, .add_size), ._, ._, ._ },
+                                    .{ ._, .f_p, .ucomi, .tmp4t, .tmp5t, ._, ._ },
+                                    .{ ._, .f_p, .st, .tmp5t, ._, ._, ._ },
+                                    .{ ._, .fromCond(switch (cc) {
+                                        else => unreachable,
+                                        .l => .a,
+                                        .le => .ae,
+                                    }), .set, .tmp3b, ._, ._, ._ },
+                                    .{ ._, ._l, .ro, .tmp3b, .tmp1b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2b, .tmp3b, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1d, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp3d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp3d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0b, .tmp3, -1), .tmp2b, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(8), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memi(.dst0b, .tmp1), .tmp2b, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .x87, .cmov, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                                    .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none }, .commute = .{ 0, 1 } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .reg = .rcx } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                                    .{ .type = .f64, .kind = .{ .reg = .st7 } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", ._, .xor, .tmp3d, .tmp3d, ._, ._ },
+                                    .{ ._, .f_, .ld, .memia(.src1q, .tmp0, .add_size), ._, ._, ._ },
+                                    .{ ._, .f_, .ld, .memia(.src0q, .tmp0, .add_size), ._, ._, ._ },
+                                    .{ ._, .f_p, .ucomi, .tmp4t, .tmp5t, ._, ._ },
+                                    .{ ._, .f_p, .st, .tmp5t, ._, ._, ._ },
+                                    .{ ._, .fromCond(switch (cc) {
+                                        else => unreachable,
+                                        .l => .a,
+                                        .le => .ae,
+                                    }), .set, .tmp3b, ._, ._, ._ },
+                                    .{ ._, ._l, .ro, .tmp3b, .tmp1b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2b, .tmp3b, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1d, ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp3d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp3d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0b, .tmp3, -1), .tmp2b, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(8), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memi(.dst0b, .tmp1), .tmp2b, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .x87, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                                    .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none }, .commute = .{ 0, 1 } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .reg = .rcx } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                                    .{ .type = .f64, .kind = .{ .reg = .st7 } },
+                                    .{ .type = .u8, .kind = .{ .reg = .ah } },
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", ._, .xor, .tmp3d, .tmp3d, ._, ._ },
+                                    .{ ._, .f_, .ld, .memia(.src1q, .tmp0, .add_size), ._, ._, ._ },
+                                    .{ ._, .f_, .ld, .memia(.src0q, .tmp0, .add_size), ._, ._, ._ },
+                                    .{ ._, .f_pp, .ucom, ._, ._, ._, ._ },
+                                    .{ ._, .fn_sw, .st, .tmp6w, ._, ._, ._ },
+                                    switch (cc) {
+                                        else => unreachable,
+                                        .l => .{ ._, ._, .@"test", .tmp6b, .si(0b1_000_001), ._, ._ },
+                                        .le => .{ ._, ._r, .sh, .tmp6b, .ui(1), ._, ._ },
+                                    },
+                                    .{ ._, .fromCond(switch (cc) {
+                                        else => unreachable,
+                                        .l => .z,
+                                        .le => .nc,
+                                    }), .set, .tmp3b, ._, ._, ._ },
+                                    .{ ._, ._l, .ro, .tmp3b, .tmp1b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2b, .tmp3b, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1d, ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp3d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp3d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0b, .tmp3, -1), .tmp2b, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(8), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memi(.dst0b, .tmp1), .tmp2b, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .x87, .cmov, .slow_incdec, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none }, .commute = .{ 0, 1 } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .reg = .rcx } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                                    .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", ._, .xor, .tmp3d, .tmp3d, ._, ._ },
+                                    .{ ._, .f_, .ld, .memia(.src1t, .tmp0, .add_size), ._, ._, ._ },
+                                    .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ },
+                                    .{ ._, .f_p, .ucomi, .tmp4t, .tmp5t, ._, ._ },
+                                    .{ ._, .f_p, .st, .tmp5t, ._, ._, ._ },
+                                    .{ ._, .fromCond(switch (cc) {
+                                        else => unreachable,
+                                        .l => .a,
+                                        .le => .ae,
+                                    }), .set, .tmp3b, ._, ._, ._ },
+                                    .{ ._, ._l, .ro, .tmp3b, .tmp1b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2b, .tmp3b, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1d, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp3d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp3d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0b, .tmp3, -1), .tmp2b, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memi(.dst0b, .tmp1), .tmp2b, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .x87, .cmov, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none }, .commute = .{ 0, 1 } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .reg = .rcx } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                                    .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                                    .unused,
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", ._, .xor, .tmp3d, .tmp3d, ._, ._ },
+                                    .{ ._, .f_, .ld, .memia(.src1t, .tmp0, .add_size), ._, ._, ._ },
+                                    .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ },
+                                    .{ ._, .f_p, .ucomi, .tmp4t, .tmp5t, ._, ._ },
+                                    .{ ._, .f_p, .st, .tmp5t, ._, ._, ._ },
+                                    .{ ._, .fromCond(switch (cc) {
+                                        else => unreachable,
+                                        .l => .a,
+                                        .le => .ae,
+                                    }), .set, .tmp3b, ._, ._, ._ },
+                                    .{ ._, ._l, .ro, .tmp3b, .tmp1b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2b, .tmp3b, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1d, ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp3d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp3d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0b, .tmp3, -1), .tmp2b, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memi(.dst0b, .tmp1), .tmp2b, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .x87, null, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none }, .commute = .{ 0, 1 } },
+                                },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .reg = .rcx } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f80, .kind = .{ .reg = .st6 } },
+                                    .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                                    .{ .type = .u8, .kind = .{ .reg = .ah } },
+                                    .unused,
+                                    .unused,
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", ._, .xor, .tmp3d, .tmp3d, ._, ._ },
+                                    .{ ._, .f_, .ld, .memia(.src1t, .tmp0, .add_size), ._, ._, ._ },
+                                    .{ ._, .f_, .ld, .memia(.src0t, .tmp0, .add_size), ._, ._, ._ },
+                                    .{ ._, .f_pp, .ucom, ._, ._, ._, ._ },
+                                    .{ ._, .fn_sw, .st, .tmp6w, ._, ._, ._ },
+                                    switch (cc) {
+                                        else => unreachable,
+                                        .l => .{ ._, ._, .@"test", .tmp6b, .si(0b1_000_001), ._, ._ },
+                                        .le => .{ ._, ._r, .sh, .tmp6b, .ui(1), ._, ._ },
+                                    },
+                                    .{ ._, .fromCond(switch (cc) {
+                                        else => unreachable,
+                                        .l => .z,
+                                        .le => .nc,
+                                    }), .set, .tmp3b, ._, ._, ._ },
+                                    .{ ._, ._l, .ro, .tmp3b, .tmp1b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2b, .tmp3b, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1d, ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp3d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp3d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0b, .tmp3, -1), .tmp2b, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memi(.dst0b, .tmp1), .tmp2b, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, .slow_incdec, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .any,
+                                },
+                                .dst_constraints = .{.{ .bool_vec = .dword }},
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u32, .kind = .{ .reg = .edx } },
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .rc = .general_purpose }},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"0:", .v_dqa, .mov, .tmp2x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_dqa, .mov, .tmp3x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp5d, .tmp5d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp7b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp1d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp7d, .tmp6b, ._, ._ },
+                                    .{ ._, ._, .@"or", .dst0d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1d, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .avx, .slow_incdec, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .any,
+                                },
+                                .dst_constraints = .{.{ .bool_vec = .dword }},
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u32, .kind = .{ .reg = .edx } },
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .rc = .general_purpose }},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"0:", .v_dqa, .mov, .tmp2x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_dqa, .mov, .tmp3x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp5d, .tmp5d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp7b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp1d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp7d, .tmp6b, ._, ._ },
+                                    .{ ._, ._, .@"or", .dst0d, .tmp7d, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1d, ._, ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse2, .slow_incdec, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .any,
+                                },
+                                .dst_constraints = .{.{ .bool_vec = .dword }},
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u32, .kind = .{ .reg = .edx } },
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .rc = .general_purpose }},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"0:", ._dqa, .mov, .tmp2x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._dqa, .mov, .tmp3x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp5d, .tmp5d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp7b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp1d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp7d, .tmp6b, ._, ._ },
+                                    .{ ._, ._, .@"or", .dst0d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1d, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse2, .slow_incdec, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .any,
+                                },
+                                .dst_constraints = .{.{ .bool_vec = .dword }},
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u32, .kind = .{ .reg = .edx } },
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .rc = .general_purpose }},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"0:", ._dqa, .mov, .tmp2x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._dqa, .mov, .tmp3x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp5d, .tmp5d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp7b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp1d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp7d, .tmp6b, ._, ._ },
+                                    .{ ._, ._, .@"or", .dst0d, .tmp7d, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1d, ._, ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse, .slow_incdec, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .any,
+                                },
+                                .dst_constraints = .{.{ .bool_vec = .dword }},
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u32, .kind = .{ .reg = .edx } },
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .rc = .general_purpose }},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"0:", ._ps, .mova, .tmp2x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._ps, .mova, .tmp3x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp5d, .tmp5d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp7b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp1d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp7d, .tmp6b, ._, ._ },
+                                    .{ ._, ._, .@"or", .dst0d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1d, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .sse2, .slow_incdec, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .any,
+                                },
+                                .dst_constraints = .{.{ .bool_vec = .dword }},
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u32, .kind = .{ .reg = .edx } },
+                                    .unused,
+                                },
+                                .dst_temps = .{.{ .rc = .general_purpose }},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .xor, .dst0d, .dst0d, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ .@"0:", ._ps, .mova, .tmp2x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._ps, .mova, .tmp3x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp7d, .tmp7d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp5d, .tmp5d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp7b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp1d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp7d, .tmp6b, ._, ._ },
+                                    .{ ._, ._, .@"or", .dst0d, .tmp7d, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1d, ._, ._, ._ },
+                                    .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .@"64bit", .avx, .slow_incdec, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u64, .kind = .{ .reg = .rdx } },
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", .v_dqa, .mov, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_dqa, .mov, .tmp4x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp6d, .tmp6d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp8b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp7d, .tmp1d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp8q, .tmp7b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1d, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp6d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0q, .tmp6, -8), .tmp2q, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(6), ._, ._ },
+                                    .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp1), .tmp2q, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .@"64bit", .avx, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u64, .kind = .{ .reg = .rdx } },
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", .v_dqa, .mov, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, .v_dqa, .mov, .tmp4x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp6d, .tmp6d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp8b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp7d, .tmp1d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp8q, .tmp7b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1d, ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp6d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0q, .tmp6, -8), .tmp2q, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(6), ._, ._ },
+                                    .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp1), .tmp2q, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .@"64bit", .sse2, .slow_incdec, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u64, .kind = .{ .reg = .rdx } },
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", ._dqa, .mov, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._dqa, .mov, .tmp4x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp6d, .tmp6d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp8b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp7d, .tmp1d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp8q, .tmp7b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1d, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp6d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0q, .tmp6, -8), .tmp2q, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(6), ._, ._ },
+                                    .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp1), .tmp2q, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .@"64bit", .sse2, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u64, .kind = .{ .reg = .rdx } },
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", ._dqa, .mov, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._dqa, .mov, .tmp4x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp6d, .tmp6d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp8b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp7d, .tmp1d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp8q, .tmp7b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1d, ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp6d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0q, .tmp6, -8), .tmp2q, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(6), ._, ._ },
+                                    .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp1), .tmp2q, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .@"64bit", .sse, .slow_incdec, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u64, .kind = .{ .reg = .rdx } },
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", ._ps, .mova, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._ps, .mova, .tmp4x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp6d, .tmp6d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp8b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp7d, .tmp1d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp8q, .tmp7b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ },
+                                    .{ ._, ._, .lea, .tmp1d, .lead(.tmp1, 1), ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp6d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0q, .tmp6, -8), .tmp2q, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(6), ._, ._ },
+                                    .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp1), .tmp2q, ._, ._ },
+                                } },
+                            }, .{
+                                .required_features = .{ .@"64bit", .sse, null, null },
+                                .src_constraints = .{
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                    .any,
+                                },
+                                .patterns = &.{
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
+                                },
+                                .call_frame = .{ .alignment = .@"16" },
+                                .extra_temps = .{
+                                    .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                                    .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                                    .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
+                                    .{ .type = .i32, .kind = .{ .reg = .eax } },
+                                    .{ .type = .u8, .kind = .{ .reg = .cl } },
+                                    .{ .type = .u64, .kind = .{ .reg = .rdx } },
+                                },
+                                .dst_temps = .{.mem},
+                                .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                                .each = .{ .once = &.{
+                                    .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                                    .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"0:", ._ps, .mova, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._ps, .mova, .tmp4x, .memia(.src1x, .tmp0, .add_size), ._, ._ },
+                                    .{ ._, ._, .call, .tmp5d, ._, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp8d, .tmp8d, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp6d, .tmp6d, ._, ._ },
+                                    .{ ._, .fromCond(cc), .set, .tmp8b, ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp7d, .tmp1d, ._, ._ },
+                                    .{ ._, ._l, .sh, .tmp8q, .tmp7b, ._, ._ },
+                                    .{ ._, ._, .@"or", .tmp2q, .tmp8q, ._, ._ },
+                                    .{ ._, ._c, .in, .tmp1d, ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._nz, .j, .@"1f", ._, ._, ._ },
+                                    .{ ._, ._, .mov, .tmp6d, .tmp1d, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp6d, .ui(3), ._, ._ },
+                                    .{ ._, ._, .mov, .memid(.dst0q, .tmp6, -8), .tmp2q, ._, ._ },
+                                    .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                                    .{ .@"1:", ._, .add, .tmp0p, .si(16), ._, ._ },
+                                    .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                                    .{ ._, ._, .@"test", .tmp1d, .si(0b111111), ._, ._ },
+                                    .{ ._, ._z, .j, .@"0f", ._, ._, ._ },
+                                    .{ ._, ._r, .sh, .tmp1d, .ui(6), ._, ._ },
+                                    .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp1), .tmp2q, ._, ._ },
+                                } },
+                            } },
+                        });
+                    },
                     .eq, .neq => |cmp_op| cg.select(&res, &.{ty_pl.ty.toType()}, &ops, switch (@as(Condition, switch (cmp_op) {
                         else => unreachable,
                         .eq => .e,
@@ -15057,11 +24083,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         else => unreachable,
                         inline .e, .ne => |cc| comptime &.{ .{
                             .required_features = .{ .avx2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte } },
+                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_ymm, .mem } },
-                                .{ .src = .{ .mem, .to_ymm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_ymm, .to_ymm } },
+                                .{ .src = .{ .to_ymm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_ymm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_ymm, .to_ymm, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{ .ref = .src0, .rc = .sse, .info = .{
                                 .kind = .all,
@@ -15077,11 +24103,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word } },
+                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_ymm, .mem } },
-                                .{ .src = .{ .mem, .to_ymm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_ymm, .to_ymm } },
+                                .{ .src = .{ .to_ymm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_ymm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_ymm, .to_ymm, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{ .ref = .src0, .rc = .sse, .info = .{
                                 .kind = .all,
@@ -15097,11 +24123,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_ymm, .mem } },
-                                .{ .src = .{ .mem, .to_ymm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_ymm, .to_ymm } },
+                                .{ .src = .{ .to_ymm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_ymm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_ymm, .to_ymm, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{ .ref = .src0, .rc = .sse, .info = .{
                                 .kind = .all,
@@ -15117,11 +24143,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_ymm, .mem } },
-                                .{ .src = .{ .mem, .to_ymm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_ymm, .to_ymm } },
+                                .{ .src = .{ .to_ymm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_ymm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_ymm, .to_ymm, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{ .ref = .src0, .rc = .sse, .info = .{
                                 .kind = .all,
@@ -15137,11 +24163,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte } },
+                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_xmm, .mem } },
-                                .{ .src = .{ .mem, .to_xmm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_xmm, .to_xmm } },
+                                .{ .src = .{ .to_xmm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_xmm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_xmm, .to_xmm, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{ .ref = .src0, .rc = .sse, .info = .{
                                 .kind = .all,
@@ -15157,11 +24183,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word } },
+                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_xmm, .mem } },
-                                .{ .src = .{ .mem, .to_xmm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_xmm, .to_xmm } },
+                                .{ .src = .{ .to_xmm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_xmm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_xmm, .to_xmm, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{ .ref = .src0, .rc = .sse, .info = .{
                                 .kind = .all,
@@ -15177,11 +24203,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_xmm, .mem } },
-                                .{ .src = .{ .mem, .to_xmm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_xmm, .to_xmm } },
+                                .{ .src = .{ .to_xmm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_xmm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_xmm, .to_xmm, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{ .ref = .src0, .rc = .sse, .info = .{
                                 .kind = .all,
@@ -15197,11 +24223,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_xmm, .mem } },
-                                .{ .src = .{ .mem, .to_xmm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_xmm, .to_xmm } },
+                                .{ .src = .{ .to_xmm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_xmm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_xmm, .to_xmm, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{ .ref = .src0, .rc = .sse, .info = .{
                                 .kind = .all,
@@ -15217,11 +24243,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte } },
+                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mut_xmm, .mem } },
-                                .{ .src = .{ .mem, .to_mut_xmm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_xmm, .to_xmm } },
+                                .{ .src = .{ .to_mut_xmm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_xmm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_xmm, .to_xmm, .none } },
                             },
                             .dst_temps = .{.{ .ref_mask = .{ .ref = .src0, .info = .{
                                 .kind = .all,
@@ -15237,11 +24263,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word } },
+                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mut_xmm, .mem } },
-                                .{ .src = .{ .mem, .to_mut_xmm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_xmm, .to_xmm } },
+                                .{ .src = .{ .to_mut_xmm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_xmm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_xmm, .to_xmm, .none } },
                             },
                             .dst_temps = .{.{ .ref_mask = .{ .ref = .src0, .info = .{
                                 .kind = .all,
@@ -15257,11 +24283,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mut_xmm, .mem } },
-                                .{ .src = .{ .mem, .to_mut_xmm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_xmm, .to_xmm } },
+                                .{ .src = .{ .to_mut_xmm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_xmm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_xmm, .to_xmm, .none } },
                             },
                             .dst_temps = .{.{ .ref_mask = .{ .ref = .src0, .info = .{
                                 .kind = .all,
@@ -15277,11 +24303,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse4_1, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mut_xmm, .mem } },
-                                .{ .src = .{ .mem, .to_mut_xmm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_xmm, .to_xmm } },
+                                .{ .src = .{ .to_mut_xmm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_xmm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_xmm, .to_xmm, .none } },
                             },
                             .dst_temps = .{.{ .ref_mask = .{ .ref = .src0, .info = .{
                                 .kind = .all,
@@ -15297,11 +24323,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .mmx, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte } },
+                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mut_mm, .mem } },
-                                .{ .src = .{ .mem, .to_mut_mm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_mm, .to_mm } },
+                                .{ .src = .{ .to_mut_mm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_mm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_mm, .to_mm, .none } },
                             },
                             .dst_temps = .{.{ .ref_mask = .{ .ref = .src0, .info = .{
                                 .kind = .all,
@@ -15317,11 +24343,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .mmx, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word } },
+                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mut_mm, .mem } },
-                                .{ .src = .{ .mem, .to_mut_mm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_mm, .to_mm } },
+                                .{ .src = .{ .to_mut_mm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_mm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_mm, .to_mm, .none } },
                             },
                             .dst_temps = .{.{ .ref_mask = .{ .ref = .src0, .info = .{
                                 .kind = .all,
@@ -15337,11 +24363,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .mmx, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mut_mm, .mem } },
-                                .{ .src = .{ .mem, .to_mut_mm }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_mm, .to_mm } },
+                                .{ .src = .{ .to_mut_mm, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_mm, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_mm, .to_mm, .none } },
                             },
                             .dst_temps = .{.{ .ref_mask = .{ .ref = .src0, .info = .{
                                 .kind = .all,
@@ -15356,17 +24382,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, .p_d, .cmpeq, .dst0q, .src1q, ._, ._ },
                             } },
                         }, .{
-                            .src_constraints = .{ .{ .bool_vec = .byte }, .{ .bool_vec = .byte } },
+                            .src_constraints = .{ .{ .bool_vec = .byte }, .{ .bool_vec = .byte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .mut_mem, .imm8 } },
-                                .{ .src = .{ .imm8, .mut_mem }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_gpr, .imm8 } },
-                                .{ .src = .{ .imm8, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .mut_mem, .to_gpr } },
-                                .{ .src = .{ .to_gpr, .mut_mem }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_gpr, .mem } },
-                                .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                                .{ .src = .{ .mut_mem, .imm8, .none } },
+                                .{ .src = .{ .imm8, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_gpr, .imm8, .none } },
+                                .{ .src = .{ .imm8, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .mut_mem, .to_gpr, .none } },
+                                .{ .src = .{ .to_gpr, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
                             },
                             .dst_temps = .{.{ .ref = .src0 }},
                             .clobbers = .{ .eflags = true },
@@ -15381,17 +24407,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 },
                             } },
                         }, .{
-                            .src_constraints = .{ .{ .bool_vec = .word }, .{ .bool_vec = .word } },
+                            .src_constraints = .{ .{ .bool_vec = .word }, .{ .bool_vec = .word }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .mut_mem, .imm16 } },
-                                .{ .src = .{ .imm16, .mut_mem }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_gpr, .imm16 } },
-                                .{ .src = .{ .imm16, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .mut_mem, .to_gpr } },
-                                .{ .src = .{ .to_gpr, .mut_mem }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_gpr, .mem } },
-                                .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                                .{ .src = .{ .mut_mem, .imm16, .none } },
+                                .{ .src = .{ .imm16, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_gpr, .imm16, .none } },
+                                .{ .src = .{ .imm16, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .mut_mem, .to_gpr, .none } },
+                                .{ .src = .{ .to_gpr, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
                             },
                             .dst_temps = .{.{ .ref = .src0 }},
                             .clobbers = .{ .eflags = true },
@@ -15406,17 +24432,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 },
                             } },
                         }, .{
-                            .src_constraints = .{ .{ .bool_vec = .dword }, .{ .bool_vec = .dword } },
+                            .src_constraints = .{ .{ .bool_vec = .dword }, .{ .bool_vec = .dword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .mut_mem, .imm32 } },
-                                .{ .src = .{ .imm32, .mut_mem }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_gpr, .imm32 } },
-                                .{ .src = .{ .imm32, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .mut_mem, .to_gpr } },
-                                .{ .src = .{ .to_gpr, .mut_mem }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_gpr, .mem } },
-                                .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                                .{ .src = .{ .mut_mem, .imm32, .none } },
+                                .{ .src = .{ .imm32, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_gpr, .imm32, .none } },
+                                .{ .src = .{ .imm32, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .mut_mem, .to_gpr, .none } },
+                                .{ .src = .{ .to_gpr, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
                             },
                             .dst_temps = .{.{ .ref = .src0 }},
                             .clobbers = .{ .eflags = true },
@@ -15432,17 +24458,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .@"64bit", null, null, null },
-                            .src_constraints = .{ .{ .bool_vec = .qword }, .{ .bool_vec = .qword } },
+                            .src_constraints = .{ .{ .bool_vec = .qword }, .{ .bool_vec = .qword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .mut_mem, .simm32 } },
-                                .{ .src = .{ .simm32, .mut_mem }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_gpr, .simm32 } },
-                                .{ .src = .{ .simm32, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .mut_mem, .to_gpr } },
-                                .{ .src = .{ .to_gpr, .mut_mem }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_gpr, .mem } },
-                                .{ .src = .{ .mem, .to_mut_gpr }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_gpr, .to_gpr } },
+                                .{ .src = .{ .mut_mem, .simm32, .none } },
+                                .{ .src = .{ .simm32, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_gpr, .simm32, .none } },
+                                .{ .src = .{ .simm32, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .mut_mem, .to_gpr, .none } },
+                                .{ .src = .{ .to_gpr, .mut_mem, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_gpr, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_gpr, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_gpr, .to_gpr, .none } },
                             },
                             .dst_temps = .{.{ .ref = .src0 }},
                             .clobbers = .{ .eflags = true },
@@ -15457,9 +24483,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 },
                             } },
                         }, .{
-                            .src_constraints = .{ .any_bool_vec, .any_bool_vec },
+                            .src_constraints = .{ .any_bool_vec, .any_bool_vec, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -15496,9 +24522,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte } },
+                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -15541,9 +24567,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word } },
+                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -15588,9 +24614,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -15633,9 +24659,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -15702,9 +24728,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte } },
+                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -15747,9 +24773,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word } },
+                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -15794,9 +24820,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -15863,9 +24889,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -15932,9 +24958,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte } },
+                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -15977,9 +25003,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word } },
+                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16024,9 +25050,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse2, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16093,9 +25119,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse4_1, null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16162,9 +25188,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse, .mmx, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte } },
+                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16207,9 +25233,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse, .mmx, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word } },
+                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16280,9 +25306,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse, .mmx, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16354,10 +25380,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 },
                             } },
                         }, .{
-                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte } },
+                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte }, .any },
                             .dst_constraints = .{.{ .bool_vec = .byte }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16386,10 +25412,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                             } },
                         }, .{
-                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word } },
+                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word }, .any },
                             .dst_constraints = .{.{ .bool_vec = .byte }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16418,10 +25444,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                             } },
                         }, .{
-                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword }, .any },
                             .dst_constraints = .{.{ .bool_vec = .byte }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16451,10 +25477,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .@"64bit", null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword }, .any },
                             .dst_constraints = .{.{ .bool_vec = .byte }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16483,10 +25509,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                             } },
                         }, .{
-                            .src_constraints = .{ .any_scalar_int, .any_scalar_int },
+                            .src_constraints = .{ .any_scalar_int, .any_scalar_int, .any },
                             .dst_constraints = .{.{ .bool_vec = .byte }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -16522,10 +25548,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
                             } },
                         }, .{
-                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte } },
+                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte }, .any },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16555,10 +25581,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                             } },
                         }, .{
-                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word } },
+                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word }, .any },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16588,10 +25614,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                             } },
                         }, .{
-                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword }, .any },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16622,10 +25648,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .@"64bit", null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword }, .any },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16655,10 +25681,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                             } },
                         }, .{
-                            .src_constraints = .{ .any_scalar_int, .any_scalar_int },
+                            .src_constraints = .{ .any_scalar_int, .any_scalar_int, .any },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -16696,10 +25722,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .@"64bit", null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte } },
+                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte }, .any },
                             .dst_constraints = .{.{ .bool_vec = .qword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16730,10 +25756,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .@"64bit", null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word } },
+                            .src_constraints = .{ .{ .scalar_int_is = .word }, .{ .scalar_int_is = .word }, .any },
                             .dst_constraints = .{.{ .bool_vec = .qword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16763,10 +25789,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .@"64bit", null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .dword }, .{ .scalar_int_is = .dword }, .any },
                             .dst_constraints = .{.{ .bool_vec = .qword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16797,10 +25823,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .@"64bit", null, null, null },
-                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword } },
+                            .src_constraints = .{ .{ .scalar_int_is = .qword }, .{ .scalar_int_is = .qword }, .any },
                             .dst_constraints = .{.{ .bool_vec = .qword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16831,10 +25857,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .@"64bit", null, null, null },
-                            .src_constraints = .{ .any_scalar_int, .any_scalar_int },
+                            .src_constraints = .{ .any_scalar_int, .any_scalar_int, .any },
                             .dst_constraints = .{.{ .bool_vec = .qword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -16871,9 +25897,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
                             } },
                         }, .{
-                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte } },
+                            .src_constraints = .{ .{ .scalar_int_is = .byte }, .{ .scalar_int_is = .byte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -16917,9 +25943,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_sse, .to_sse } },
+                                .{ .src = .{ .to_sse, .to_sse, .none } },
                             },
                             .extra_temps = .{
                                 .{ .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
@@ -16940,7 +25967,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .each = .{ .once = &.{
                                 .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
                                 .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
-                                .{ ._, .v_ss, .cmp, .dst0x, .dst0x, .tmp0x, .vp(switch (cc) {
+                                .{ ._, .v_ss, .cmp, .dst0x, .dst0x, .tmp0d, .vp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
@@ -16951,12 +25978,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .qword, .is = .word } },
                                 .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .mem, .mem } },
-                                .{ .src = .{ .sse, .mem } },
-                                .{ .src = .{ .mem, .sse } },
-                                .{ .src = .{ .to_sse, .to_sse } },
+                                .{ .src = .{ .mem, .mem, .none } },
+                                .{ .src = .{ .sse, .mem, .none } },
+                                .{ .src = .{ .mem, .sse, .none } },
+                                .{ .src = .{ .to_sse, .to_sse, .none } },
                             },
                             .extra_temps = .{
                                 .{ .kind = .{ .rc = .sse } },
@@ -16988,12 +26016,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .xword, .is = .word } },
                                 .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .mem, .mem } },
-                                .{ .src = .{ .to_sse, .mem } },
-                                .{ .src = .{ .mem, .to_sse } },
-                                .{ .src = .{ .to_sse, .to_sse } },
+                                .{ .src = .{ .mem, .mem, .none } },
+                                .{ .src = .{ .to_sse, .mem, .none } },
+                                .{ .src = .{ .mem, .to_sse, .none } },
+                                .{ .src = .{ .to_sse, .to_sse, .none } },
                             },
                             .extra_temps = .{
                                 .{ .kind = .{ .rc = .sse } },
@@ -17025,11 +26054,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .dword, .is = .dword } },
                                 .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_sse, .mem } },
-                                .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_sse, .to_sse } },
+                                .{ .src = .{ .to_sse, .mem, .none } },
+                                .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_sse, .to_sse, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{
                                 .ref = .src0,
@@ -17037,7 +26067,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .info = .{ .kind = .all, .scalar = .dword },
                             } }},
                             .each = .{ .once = &.{
-                                .{ ._, .v_ss, .cmp, .dst0x, .src0x, .src1x, .vp(switch (cc) {
+                                .{ ._, .v_ss, .cmp, .dst0x, .src0x, .src1d, .vp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
@@ -17048,18 +26078,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .dword, .is = .dword } },
                                 .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mut_sse, .mem } },
-                                .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_sse, .to_sse } },
+                                .{ .src = .{ .to_mut_sse, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                             },
                             .dst_temps = .{.{ .ref_mask = .{
                                 .ref = .src0,
                                 .info = .{ .kind = .all, .scalar = .dword },
                             } }},
                             .each = .{ .once = &.{
-                                .{ ._, ._ss, .cmp, .dst0x, .src1x, .vp(switch (cc) {
+                                .{ ._, ._ss, .cmp, .dst0x, .src1d, .sp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
@@ -17070,11 +26101,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .xword, .is = .dword } },
                                 .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_sse, .mem } },
-                                .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_sse, .to_sse } },
+                                .{ .src = .{ .to_sse, .mem, .none } },
+                                .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_sse, .to_sse, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{
                                 .ref = .src0,
@@ -17093,18 +26125,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .xword, .is = .dword } },
                                 .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mut_sse, .mem } },
-                                .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_sse, .to_sse } },
+                                .{ .src = .{ .to_mut_sse, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                             },
                             .dst_temps = .{.{ .ref_mask = .{
                                 .ref = .src0,
                                 .info = .{ .kind = .all, .scalar = .dword },
                             } }},
                             .each = .{ .once = &.{
-                                .{ ._, ._ps, .cmp, .dst0x, .src1x, .vp(switch (cc) {
+                                .{ ._, ._ps, .cmp, .dst0x, .src1x, .sp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
@@ -17115,11 +26148,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .yword, .is = .dword } },
                                 .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_sse, .mem } },
-                                .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_sse, .to_sse } },
+                                .{ .src = .{ .to_sse, .mem, .none } },
+                                .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_sse, .to_sse, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{
                                 .ref = .src0,
@@ -17138,11 +26172,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .qword, .is = .qword } },
                                 .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_sse, .mem } },
-                                .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_sse, .to_sse } },
+                                .{ .src = .{ .to_sse, .mem, .none } },
+                                .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_sse, .to_sse, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{
                                 .ref = .src0,
@@ -17150,7 +26185,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .info = .{ .kind = .all, .scalar = .qword },
                             } }},
                             .each = .{ .once = &.{
-                                .{ ._, .v_sd, .cmp, .dst0x, .src0x, .src1x, .vp(switch (cc) {
+                                .{ ._, .v_sd, .cmp, .dst0x, .src0x, .src1q, .vp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
@@ -17161,18 +26196,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .qword, .is = .qword } },
                                 .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mut_sse, .mem } },
-                                .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_sse, .to_sse } },
+                                .{ .src = .{ .to_mut_sse, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                             },
                             .dst_temps = .{.{ .ref_mask = .{
                                 .ref = .src0,
                                 .info = .{ .kind = .all, .scalar = .qword },
                             } }},
                             .each = .{ .once = &.{
-                                .{ ._, ._sd, .cmp, .dst0x, .src1x, .vp(switch (cc) {
+                                .{ ._, ._sd, .cmp, .dst0x, .src1q, .sp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
@@ -17183,11 +26219,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .xword, .is = .qword } },
                                 .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_sse, .mem } },
-                                .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_sse, .to_sse } },
+                                .{ .src = .{ .to_sse, .mem, .none } },
+                                .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_sse, .to_sse, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{
                                 .ref = .src0,
@@ -17206,18 +26243,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .xword, .is = .qword } },
                                 .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mut_sse, .mem } },
-                                .{ .src = .{ .mem, .to_mut_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_mut_sse, .to_sse } },
+                                .{ .src = .{ .to_mut_sse, .mem, .none } },
+                                .{ .src = .{ .mem, .to_mut_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mut_sse, .to_sse, .none } },
                             },
                             .dst_temps = .{.{ .ref_mask = .{
                                 .ref = .src0,
                                 .info = .{ .kind = .all, .scalar = .qword },
                             } }},
                             .each = .{ .once = &.{
-                                .{ ._, ._pd, .cmp, .dst0x, .src1x, .vp(switch (cc) {
+                                .{ ._, ._pd, .cmp, .dst0x, .src1x, .sp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
@@ -17228,11 +26266,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .scalar_float = .{ .of = .yword, .is = .qword } },
                                 .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_sse, .mem } },
-                                .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_sse, .to_sse } },
+                                .{ .src = .{ .to_sse, .mem, .none } },
+                                .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_sse, .to_sse, .none } },
                             },
                             .dst_temps = .{.{ .mut_rc_mask = .{
                                 .ref = .src0,
@@ -17251,15 +26290,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                                .{ .type = .vector_8_f16, .kind = .{ .rc = .sse } },
-                                .{ .type = .vector_8_f16, .kind = .{ .rc = .sse } },
+                                .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                                .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
                                 .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                                 .unused,
                                 .unused,
@@ -17289,15 +26329,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                                .{ .type = .vector_8_f16, .kind = .{ .rc = .sse } },
-                                .{ .type = .vector_8_f16, .kind = .{ .rc = .sse } },
+                                .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                                .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
                                 .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                                 .unused,
                                 .unused,
@@ -17327,21 +26368,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqhf2",
-                                    .ne => "__nehf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u32, .kind = .{ .reg = .edx } },
@@ -17372,21 +26410,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqhf2",
-                                    .ne => "__nehf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u32, .kind = .{ .reg = .edx } },
@@ -17417,21 +26452,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqhf2",
-                                    .ne => "__nehf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u32, .kind = .{ .reg = .edx } },
@@ -17463,21 +26495,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqhf2",
-                                    .ne => "__nehf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u32, .kind = .{ .reg = .edx } },
@@ -17509,21 +26538,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqhf2",
-                                    .ne => "__nehf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u32, .kind = .{ .reg = .edx } },
@@ -17557,21 +26583,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqhf2",
-                                    .ne => "__nehf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u32, .kind = .{ .reg = .edx } },
@@ -17605,9 +26628,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -17615,11 +26639,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqhf2",
-                                    .ne => "__nehf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u64, .kind = .{ .reg = .rdx } },
@@ -17659,9 +26679,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -17669,11 +26690,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqhf2",
-                                    .ne => "__nehf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u64, .kind = .{ .reg = .rdx } },
@@ -17713,9 +26730,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -17723,11 +26741,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqhf2",
-                                    .ne => "__nehf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u64, .kind = .{ .reg = .rdx } },
@@ -17768,9 +26782,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -17778,11 +26793,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqhf2",
-                                    .ne => "__nehf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u64, .kind = .{ .reg = .rdx } },
@@ -17823,9 +26834,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -17833,11 +26845,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqhf2",
-                                    .ne => "__nehf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u64, .kind = .{ .reg = .rdx } },
@@ -17880,9 +26888,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
                                 .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -17890,11 +26899,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqhf2",
-                                    .ne => "__nehf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmphf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u64, .kind = .{ .reg = .rdx } },
@@ -17937,9 +26942,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
                                 .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -17974,9 +26980,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
                                 .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18011,9 +27018,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
                                 .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18033,12 +27041,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
                                 .{ .@"0:", ._ps, .mova, .tmp2x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
                                 .{ ._, ._ps, .mova, .tmp3x, .memiad(.src0x, .tmp0, .add_size, 16), ._, ._ },
-                                .{ ._, ._ps, .cmp, .tmp2x, .memia(.src1x, .tmp0, .add_size), .vp(switch (cc) {
+                                .{ ._, ._ps, .cmp, .tmp2x, .memia(.src1x, .tmp0, .add_size), .sp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
                                 }), ._ },
-                                .{ ._, ._ps, .cmp, .tmp3x, .memiad(.src1x, .tmp0, .add_size, 16), .vp(switch (cc) {
+                                .{ ._, ._ps, .cmp, .tmp3x, .memiad(.src1x, .tmp0, .add_size, 16), .sp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
@@ -18056,9 +27064,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
                                 .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18077,14 +27086,14 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
                                 .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
                                 .{ .@"0:", ._ps, .mova, .tmp2x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                                .{ ._, ._ps, .cmp, .tmp2x, .memia(.src1x, .tmp0, .add_size), .vp(switch (cc) {
+                                .{ ._, ._ps, .cmp, .tmp2x, .memia(.src1x, .tmp0, .add_size), .sp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
                                 }), ._ },
                                 .{ ._, ._ps, .movmsk, .tmp3d, .tmp2x, ._, ._ },
                                 .{ ._, ._ps, .mova, .tmp2x, .memiad(.src0x, .tmp0, .add_size, 16), ._, ._ },
-                                .{ ._, ._ps, .cmp, .tmp2x, .memiad(.src1x, .tmp0, .add_size, 16), .vp(switch (cc) {
+                                .{ ._, ._ps, .cmp, .tmp2x, .memiad(.src1x, .tmp0, .add_size, 16), .sp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
@@ -18102,9 +27111,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18124,7 +27134,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
                                 .{ ._, ._mp, .j, .@"1f", ._, ._, ._ },
                                 .{ .@"0:", ._ps, .mova, .tmp2x, .memiad(.src0x, .tmp0, .add_size, -16), ._, ._ },
-                                .{ ._, ._ps, .cmp, .tmp2x, .memiad(.src1x, .tmp0, .add_size, -16), .vp(switch (cc) {
+                                .{ ._, ._ps, .cmp, .tmp2x, .memiad(.src1x, .tmp0, .add_size, -16), .sp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
@@ -18135,7 +27145,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._, .mov, .lea(.tmp1b), .tmp3b, ._, ._ },
                                 .{ ._, ._, .lea, .tmp1p, .lead(.tmp1, 1), ._, ._ },
                                 .{ .@"1:", ._ps, .mova, .tmp2x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                                .{ ._, ._ps, .cmp, .tmp2x, .memia(.src1x, .tmp0, .add_size), .vp(switch (cc) {
+                                .{ ._, ._ps, .cmp, .tmp2x, .memia(.src1x, .tmp0, .add_size), .sp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
@@ -18150,9 +27160,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } },
                                 .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18196,9 +27207,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } },
                                 .{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18242,9 +27254,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
                                 .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18291,9 +27304,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18313,7 +27327,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
                                 .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
                                 .{ .@"0:", ._pd, .mova, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
-                                .{ ._, ._pd, .cmp, .tmp3x, .memia(.src1x, .tmp0, .add_size), .vp(switch (cc) {
+                                .{ ._, ._pd, .cmp, .tmp3x, .memia(.src1x, .tmp0, .add_size), .sp(switch (cc) {
                                     else => unreachable,
                                     .e => .eq,
                                     .ne => .neq,
@@ -18340,9 +27354,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
                                 .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18350,8 +27365,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                                .{ .type = .f80, .kind = .{ .reg = .st6 } },
-                                .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                                .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                                .{ .type = .f64, .kind = .{ .reg = .st7 } },
                                 .unused,
                                 .unused,
                             },
@@ -18399,9 +27414,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
                                 .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18409,8 +27425,8 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                                .{ .type = .f80, .kind = .{ .reg = .st6 } },
-                                .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                                .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                                .{ .type = .f64, .kind = .{ .reg = .st7 } },
                                 .unused,
                                 .unused,
                             },
@@ -18458,17 +27474,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
                                 .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .u32, .kind = .{ .reg = .rcx } },
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                                .{ .type = .f80, .kind = .{ .reg = .st6 } },
-                                .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                                .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                                .{ .type = .f64, .kind = .{ .reg = .st7 } },
                                 .{ .type = .u8, .kind = .{ .reg = .ah } },
                                 .unused,
                                 .unused,
@@ -18508,9 +27525,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18567,9 +27585,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18626,9 +27645,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .extra_temps = .{
                                 .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -18676,10 +27696,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                .any,
                             },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -18687,11 +27708,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqtf2",
-                                    .ne => "__netf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u32, .kind = .{ .reg = .edx } },
@@ -18721,10 +27738,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                .any,
                             },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -18732,11 +27750,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqtf2",
-                                    .ne => "__netf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u32, .kind = .{ .reg = .edx } },
@@ -18766,10 +27780,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                .any,
                             },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -18777,11 +27792,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqtf2",
-                                    .ne => "__netf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u32, .kind = .{ .reg = .edx } },
@@ -18811,10 +27822,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                .any,
                             },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -18822,11 +27834,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqtf2",
-                                    .ne => "__netf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u32, .kind = .{ .reg = .edx } },
@@ -18856,10 +27864,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                .any,
                             },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -18867,11 +27876,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqtf2",
-                                    .ne => "__netf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u32, .kind = .{ .reg = .edx } },
@@ -18901,10 +27906,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                .any,
                             },
                             .dst_constraints = .{.{ .bool_vec = .dword }},
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -18912,11 +27918,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqtf2",
-                                    .ne => "__netf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u32, .kind = .{ .reg = .edx } },
@@ -18946,9 +27948,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -18957,11 +27960,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqtf2",
-                                    .ne => "__netf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u64, .kind = .{ .reg = .rdx } },
@@ -19000,9 +27999,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -19011,11 +28011,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqtf2",
-                                    .ne => "__netf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u64, .kind = .{ .reg = .rdx } },
@@ -19054,9 +28050,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -19065,11 +28062,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqtf2",
-                                    .ne => "__netf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u64, .kind = .{ .reg = .rdx } },
@@ -19108,9 +28101,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -19119,11 +28113,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqtf2",
-                                    .ne => "__netf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u64, .kind = .{ .reg = .rdx } },
@@ -19162,9 +28152,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -19173,11 +28164,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqtf2",
-                                    .ne => "__netf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u64, .kind = .{ .reg = .rdx } },
@@ -19216,9 +28203,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             .src_constraints = .{
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
                                 .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                                .any,
                             },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem } },
+                                .{ .src = .{ .to_mem, .to_mem, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -19227,11 +28215,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
                                 .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
-                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (cc) {
-                                    else => unreachable,
-                                    .e => "__eqtf2",
-                                    .ne => "__netf2",
-                                } } } },
+                                .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__cmptf2" } } },
                                 .{ .type = .i32, .kind = .{ .reg = .eax } },
                                 .{ .type = .u8, .kind = .{ .reg = .cl } },
                                 .{ .type = .u64, .kind = .{ .reg = .rdx } },
@@ -19266,31 +28250,1583 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .{ ._, ._, .mov, .memsi(.dst0q, .@"8", .tmp1), .tmp2q, ._, ._ },
                             } },
                         } },
-                    }) catch |err| switch (err) {
-                        error.SelectFailed => return cg.fail("failed to select {s} {s} {} {} {}", .{
-                            @tagName(air_tag),
-                            @tagName(extra.compareOperator()),
-                            cg.typeOf(extra.lhs).fmt(pt),
-                            ops[0].tracking(cg),
-                            ops[1].tracking(cg),
-                        }),
-                        else => |e| return e,
-                    },
-                    .gte => unreachable,
-                    .gt => unreachable,
-                }
-                try res[0].finish(inst, &.{ extra.lhs, extra.rhs }, &ops, cg);
+                    }),
+                }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        @tagName(extra.compareOperator()),
+                        cg.typeOf(extra.lhs).fmt(pt),
+                        ops[0].tracking(cg),
+                        ops[1].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ extra.lhs, extra.rhs }, &ops, cg);
+            },
+
+            .sqrt => |air_tag| if (use_old) try cg.airSqrt(inst) else {
+                const un_op = air_datas[@intFromEnum(inst)].un_op;
+                var ops = try cg.tempsFromOperands(inst, .{un_op});
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{cg.typeOf(un_op)}, &ops, comptime &.{ .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ss, .sqrt, .dst0x, .dst0x, .dst0d, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__sqrth" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .word } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .sqrt, .dst0x, .dst0x, ._, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                        .{ ._, .v_ps, .sqrt, .dst0y, .dst0y, ._, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .sqrt, .tmp1y, .tmp1y, ._, ._ },
+                        .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__sqrth" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ },
+                        .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__sqrth" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__sqrth" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .tmp3d, .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp3w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__sqrth" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .xor, .dst0x, .dst0x, .dst0x, ._ },
+                        .{ ._, .v_ss, .sqrt, .dst0x, .dst0x, .src0d, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ss, .sqrt, .dst0x, .src0x, .src0d, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .xor, .dst0x, .dst0x, ._, ._ },
+                        .{ ._, ._ss, .sqrt, .dst0x, .src0d, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._ss, .sqrt, .dst0x, .src0d, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "sqrtf" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .sqrt, .dst0x, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .sqrt, .dst0x, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .sqrt, .dst0y, .src0y, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .sqrt, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .sqrt, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "sqrtf" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .v_ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "sqrtf" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .xor, .dst0x, .dst0x, .dst0x, ._ },
+                        .{ ._, .v_sd, .sqrt, .dst0x, .dst0x, .src0q, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_sd, .sqrt, .dst0x, .src0x, .src0q, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._pd, .xor, .dst0x, .dst0x, ._, ._ },
+                        .{ ._, ._sd, .sqrt, .dst0x, .src0q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._sd, .sqrt, .dst0x, .src0q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "sqrt" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .sqrt, .dst0x, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._pd, .sqrt, .dst0x, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .sqrt, .dst0y, .src0y, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_pd, .sqrt, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._pd, .sqrt, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "sqrt" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .v_sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "sqrt" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, ._sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "sqrt" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .movl, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, .x87, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__sqrtx" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .reg = .st0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, .v_dqa, .mov, .tmp0x, .mem(.src0x), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .mem(.tmp1x), .tmp0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, .x87, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__sqrtx" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .reg = .st0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._dqa, .mov, .tmp0x, .mem(.src0x), ._, ._ },
+                        .{ ._, ._dqa, .mov, .mem(.tmp1x), .tmp0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, .x87, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__sqrtx" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .reg = .st0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .mova, .tmp0x, .mem(.src0x), ._, ._ },
+                        .{ ._, ._ps, .mova, .mem(.tmp1x), .tmp0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, .x87, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__sqrtx" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, .x87, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__sqrtx" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, .x87, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__sqrtx" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "sqrtq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "sqrtq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "sqrtq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "sqrtq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(un_op).fmt(pt),
+                        ops[0].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{un_op}, &ops, cg);
+            },
+            .sin, .cos, .tan, .exp, .exp2, .log, .log2, .log10, .round => |air_tag| if (use_old) try cg.airUnaryMath(inst, air_tag) else {
+                const un_op = air_datas[@intFromEnum(inst)].un_op;
+                var ops = try cg.tempsFromOperands(inst, .{un_op});
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{cg.typeOf(un_op)}, &ops, switch (air_tag) {
+                    else => unreachable,
+                    inline .sin, .cos, .tan, .exp, .exp2, .log, .log2, .log10, .round => |name| comptime &.{ .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__" ++ @tagName(name) ++ "h" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__" ++ @tagName(name) ++ "h" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ },
+                            .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__" ++ @tagName(name) ++ "h" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                            .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__" ++ @tagName(name) ++ "h" } } },
+                            .{ .type = .f16, .kind = .{ .reg = .ax } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                            .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, .p_w, .extr, .tmp3d, .tmp1x, .ui(0), ._ },
+                            .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp3w, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .ax } },
+                            .{ .type = .f32, .kind = .mem },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__" ++ @tagName(name) ++ "h" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                            .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
+                            .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
+                            .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = @tagName(name) ++ "f" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = @tagName(name) ++ "f" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, .v_ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = @tagName(name) ++ "f" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = @tagName(name) } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = @tagName(name) } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, .v_sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = @tagName(name) } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = @tagName(name) } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
+                            .{ ._, ._ps, .movl, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, .x87, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__" ++ @tagName(name) ++ "x" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .reg = .st0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, .v_dqa, .mov, .tmp0x, .mem(.src0x), ._, ._ },
+                            .{ ._, .v_dqa, .mov, .mem(.tmp1x), .tmp0x, ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, .x87, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__" ++ @tagName(name) ++ "x" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .reg = .st0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._dqa, .mov, .tmp0x, .mem(.src0x), ._, ._ },
+                            .{ ._, ._dqa, .mov, .mem(.tmp1x), .tmp0x, ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, .x87, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__" ++ @tagName(name) ++ "x" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .reg = .st0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._ps, .mova, .tmp0x, .mem(.src0x), ._, ._ },
+                            .{ ._, ._ps, .mova, .mem(.tmp1x), .tmp0x, ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, .x87, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__" ++ @tagName(name) ++ "x" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                            .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, .x87, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__" ++ @tagName(name) ++ "x" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                            .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, .x87, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__" ++ @tagName(name) ++ "x" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._ps, .mova, .mem(.tmp2x), .tmp1x, ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                            .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = @tagName(name) ++ "q" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = @tagName(name) ++ "q" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = @tagName(name) ++ "q" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = @tagName(name) ++ "q" } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    } },
+                }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(un_op).fmt(pt),
+                        ops[0].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{un_op}, &ops, cg);
             },
-
             .abs => |air_tag| if (use_old) try cg.airAbs(inst) else {
                 const ty_op = air_datas[@intFromEnum(inst)].ty_op;
                 var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
                 var res: [1]Temp = undefined;
                 cg.select(&res, &.{ty_op.ty.toType()}, &ops, comptime &.{ .{
                     .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .int = .byte }, .any },
+                    .src_constraints = .{ .{ .int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -19300,9 +29836,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._s, .cmov, .dst0d, .src0d, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .byte }, .any },
+                    .src_constraints = .{ .{ .int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -19312,9 +29848,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .neg, .dst0b, ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .byte }, .any },
+                    .src_constraints = .{ .{ .int = .byte }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -19325,9 +29861,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .int = .word }, .any },
+                    .src_constraints = .{ .{ .int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -19338,9 +29874,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .int = .word }, .any },
+                    .src_constraints = .{ .{ .int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -19350,9 +29886,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._s, .cmov, .dst0d, .src0d, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .word }, .any },
+                    .src_constraints = .{ .{ .int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -19362,9 +29898,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .neg, .dst0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .word }, .any },
+                    .src_constraints = .{ .{ .int = .word }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -19375,10 +29911,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .int = .dword }, .any },
+                    .src_constraints = .{ .{ .int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -19388,9 +29924,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._s, .cmov, .dst0d, .src0d, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .dword }, .any },
+                    .src_constraints = .{ .{ .int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -19400,9 +29936,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .neg, .dst0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .dword }, .any },
+                    .src_constraints = .{ .{ .int = .dword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -19413,10 +29949,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .{ .int = .qword }, .any },
+                    .src_constraints = .{ .{ .int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
@@ -19427,9 +29963,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .int = .qword }, .any },
+                    .src_constraints = .{ .{ .int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -19440,9 +29976,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .int = .qword }, .any },
+                    .src_constraints = .{ .{ .int = .qword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
@@ -19453,9 +29989,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_int, .any },
+                    .src_constraints = .{ .any_int, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -19486,10 +30022,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .mmx, .ssse3, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_mm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_mm, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .mmx } }},
                     .each = .{ .once = &.{
@@ -19497,10 +30033,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .mmx, .ssse3, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_mm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_mm, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .mmx } }},
                     .each = .{ .once = &.{
@@ -19508,10 +30044,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .mmx, .ssse3, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_mm, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_mm, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .mmx } }},
                     .each = .{ .once = &.{
@@ -19519,10 +30055,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .ssse3, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
@@ -19530,10 +30066,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .ssse3, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
@@ -19541,10 +30077,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .ssse3, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
@@ -19552,10 +30088,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
@@ -19563,10 +30099,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
@@ -19574,10 +30110,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
@@ -19585,10 +30121,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
@@ -19596,10 +30132,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
@@ -19607,10 +30143,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
@@ -19618,9 +30154,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -19644,9 +30180,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .word } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -19670,9 +30206,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -19696,9 +30232,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -19722,9 +30258,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -19748,9 +30284,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -19774,9 +30310,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .ssse3, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -19800,9 +30336,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .ssse3, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -19826,9 +30362,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .ssse3, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -19852,9 +30388,61 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .mmx, .ssse3, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .p_b, .abs, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._q, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .mmx, .ssse3, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .word } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .p_w, .abs, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._q, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .mmx, .ssse3, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -19870,21 +30458,498 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .p_b, .abs, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._q, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", .p_d, .abs, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._q, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, .slow_incdec, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ ._, ._, .movsx, .tmp2d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ },
+                        .{ ._, ._s, .cmov, .tmp1d, .tmp2d, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ ._, ._, .movsx, .tmp2d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ },
+                        .{ ._, ._s, .cmov, .tmp1d, .tmp2d, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ },
+                        .{ ._, ._ns, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .neg, .tmp1b, ._, ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ },
+                        .{ ._, ._ns, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .neg, .tmp1b, ._, ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ ._, ._, .sub, .tmp1w, .memia(.src0w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._s, .cmov, .tmp1w, .memia(.src0w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0w, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .@"test", .tmp1d, .tmp1d, ._, ._ },
+                        .{ ._, ._ns, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .neg, .tmp1d, ._, ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .cmov, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ ._, ._, .sub, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._s, .cmov, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .@"test", .tmp1d, .tmp1d, ._, ._ },
+                        .{ ._, ._ns, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .neg, .tmp1d, ._, ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0d, .tmp0, .add_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .cmov, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ ._, ._, .sub, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._s, .cmov, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._, .@"test", .tmp1q, .tmp1q, ._, ._ },
+                        .{ ._, ._ns, .j, .@"1f", ._, ._, ._ },
+                        .{ ._, ._, .neg, .tmp1q, ._, ._, ._ },
+                        .{ .@"1:", ._, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .sa(.none, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2q, .memiad(.src0q, .tmp0, .add_src0_elem_size, -8), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp2q, .ui(63), ._, ._ },
+                        .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ },
+                        .{ .@"1:", ._, .mov, .tmp4q, .memi(.src0q, .tmp0), ._, ._ },
+                        .{ ._, ._, .xor, .tmp4q, .tmp2q, ._, ._ },
+                        .{ ._, ._r, .sh, .tmp3b, .ui(1), ._, ._ },
+                        .{ ._, ._, .sbb, .tmp4q, .tmp2q, ._, ._ },
+                        .{ ._, ._c, .set, .tmp3b, ._, ._, ._ },
+                        .{ ._, ._, .mov, .memi(.dst0q, .tmp0), .tmp4q, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0d, .lead(.tmp0, 8), ._, ._ },
+                        .{ ._, ._, .sub, .tmp1d, .si(8), ._, ._ },
+                        .{ ._, ._a, .j, .@"1b", ._, ._, ._ },
+                        .{ ._, ._, .cmp, .tmp0d, .sa(.src0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .v_ps, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._ps, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .v_pd, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._pd, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .v_pd, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_x87, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .x87 } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_, .abs, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .mmx, .ssse3, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .word } }, .any },
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_any_float = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .rc = .sse } },
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -19893,24 +30958,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .p_w, .abs, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._q, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .mmx, .ssse3, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .dword } }, .any },
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_any_float = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .rc = .sse } },
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -19919,25 +30980,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .p_d, .abs, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._q, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_any_float = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -19945,28 +31002,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ ._, ._, .movsx, .tmp2d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ },
-                        .{ ._, ._s, .cmov, .tmp1d, .tmp2d, ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._ps, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_any_float = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -19974,27 +31024,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ ._, ._, .movsx, .tmp2d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .sub, .tmp1b, .tmp2b, ._, ._ },
-                        .{ ._, ._s, .cmov, .tmp1d, .tmp2d, ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_any_float = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -20003,28 +31046,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ },
-                        .{ ._, ._ns, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .neg, .tmp1b, ._, ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .v_pd, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .{ .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -20032,28 +31069,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .v_ps, .mova, .tmp2y, .lea(.tmp0y), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .@"test", .tmp1b, .tmp1b, ._, ._ },
-                        .{ ._, ._ns, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .neg, .tmp1b, ._, ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0b, .tmp0, .add_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", .v_ps, .@"and", .tmp3y, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._ },
+                        .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_size), .tmp3y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any },
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -20061,26 +31096,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp2x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ ._, ._, .sub, .tmp1w, .memia(.src0w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._s, .cmov, .tmp1w, .memia(.src0w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, ._ps, .@"and", .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any },
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .{ .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -20088,28 +31124,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .v_pd, .mova, .tmp2y, .lea(.tmp0y), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0w, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .@"test", .tmp1d, .tmp1d, ._, ._ },
-                        .{ ._, ._ns, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .neg, .tmp1d, ._, ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0w, .tmp0, .add_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ .@"0:", .v_pd, .@"and", .tmp3y, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._ },
+                        .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_size), .tmp3y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .cmov, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any },
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -20117,26 +31151,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._pd, .mova, .tmp2x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ ._, ._, .sub, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._s, .cmov, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", ._pd, .mova, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, ._pd, .@"and", .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any },
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_any_float = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .{ .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -20144,28 +31179,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2y, .lea(.tmp0y), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .@"test", .tmp1d, .tmp1d, ._, ._ },
-                        .{ ._, ._ns, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .neg, .tmp1d, ._, ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0d, .tmp0, .add_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", .vp_, .@"and", .tmp3y, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp3y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .cmov, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any },
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_any_float = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .{ .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -20173,27 +31206,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .v_pd, .mova, .tmp2y, .lea(.tmp0y), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ ._, ._, .sub, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._s, .cmov, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ .@"0:", .v_pd, .@"and", .tmp3y, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._ },
+                        .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_size), .tmp3y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any },
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_any_float = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -20201,63 +31233,1137 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_size), ._, ._ },
-                        .{ ._, ._, .@"test", .tmp1q, .tmp1q, ._, ._ },
-                        .{ ._, ._ns, .j, .@"1f", ._, ._, ._ },
-                        .{ ._, ._, .neg, .tmp1q, ._, ._, ._ },
-                        .{ .@"1:", ._, .mov, .memia(.dst0q, .tmp0, .add_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, .p_, .@"and", .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_int, .any },
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_any_float = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .rc = .sse } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .sa(.none, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2q, .memiad(.src0q, .tmp0, .add_src0_elem_size, -8), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp2q, .ui(63), ._, ._ },
-                        .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ },
-                        .{ .@"1:", ._, .mov, .tmp4q, .memi(.src0q, .tmp0), ._, ._ },
-                        .{ ._, ._, .xor, .tmp4q, .tmp2q, ._, ._ },
-                        .{ ._, ._r, .sh, .tmp3b, .ui(1), ._, ._ },
-                        .{ ._, ._, .sbb, .tmp4q, .tmp2q, ._, ._ },
-                        .{ ._, ._c, .set, .tmp3b, ._, ._, ._ },
-                        .{ ._, ._, .mov, .memi(.dst0q, .tmp0), .tmp4q, ._, ._ },
-                        .{ ._, ._, .lea, .tmp0d, .lead(.tmp0, 8), ._, ._ },
-                        .{ ._, ._, .sub, .tmp1d, .si(8), ._, ._ },
-                        .{ ._, ._a, .j, .@"1b", ._, ._, ._ },
-                        .{ ._, ._, .cmp, .tmp0d, .sa(.src0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._b, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp2x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, ._ps, .@"and", .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(ty_op.operand).fmt(pt),
+                        ops[0].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .floor, .ceil, .trunc_float => |air_tag| if (use_old) try cg.airRound(inst, .{ .direction = switch (air_tag) {
+                else => unreachable,
+                .floor => .down,
+                .ceil => .up,
+                .trunc_float => .zero,
+            }, .precision = .inexact }) else {
+                const un_op = air_datas[@intFromEnum(inst)].un_op;
+                var ops = try cg.tempsFromOperands(inst, .{un_op});
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{cg.typeOf(un_op)}, &ops, switch (@as(bits.RoundMode.Direction, switch (air_tag) {
+                    else => unreachable,
+                    .floor => .down,
+                    .ceil => .up,
+                    .trunc_float => .zero,
+                })) {
+                    else => unreachable,
+                    inline .down, .up, .zero => |direction| comptime &.{ .{
+                        .required_features = .{ .f16c, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                            .{ ._, .v_ss, .round, .dst0x, .dst0x, .dst0d, .rm(.{ .direction = direction, .precision = .inexact }) },
+                            .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "__floorh",
+                                .up => "__ceilh",
+                                .zero => "__trunch",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .f16c, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .none, .none } },
+                            .{ .src = .{ .to_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                            .{ ._, .v_ps, .round, .dst0x, .dst0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .f16c, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .none, .none } },
+                            .{ .src = .{ .to_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                            .{ ._, .v_ps, .round, .dst0y, .dst0y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .f16c, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_ps, .round, .tmp1y, .tmp1y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                            .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "__floorh",
+                                .up => "__ceilh",
+                                .zero => "__trunch",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ },
+                            .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "__floorh",
+                                .up => "__ceilh",
+                                .zero => "__trunch",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                            .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "__floorh",
+                                .up => "__ceilh",
+                                .zero => "__trunch",
+                            } } } },
+                            .{ .type = .f16, .kind = .{ .reg = .ax } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                            .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, .p_w, .extr, .tmp3d, .tmp1x, .ui(0), ._ },
+                            .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp3w, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f16, .kind = .{ .reg = .ax } },
+                            .{ .type = .f32, .kind = .mem },
+                            .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "__floorh",
+                                .up => "__ceilh",
+                                .zero => "__trunch",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                            .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                            .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                            .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
+                            .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
+                            .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .rc = .sse }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .xor, .dst0x, .dst0x, .dst0x, ._ },
+                            .{ ._, .v_ss, .round, .dst0x, .dst0x, .src0d, .rm(.{ .direction = direction, .precision = .inexact }) },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ss, .round, .dst0x, .src0x, .src0d, .rm(.{ .direction = direction, .precision = .inexact }) },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .rc = .sse }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._ps, .xor, .dst0x, .dst0x, ._, ._ },
+                            .{ ._, ._ss, .round, .dst0x, .src0d, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mut_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._ss, .round, .dst0x, .src0d, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "floorf",
+                                .up => "ceilf",
+                                .zero => "truncf",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .none, .none } },
+                            .{ .src = .{ .to_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .round, .dst0x, .src0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .none, .none } },
+                            .{ .src = .{ .to_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._ps, .round, .dst0x, .src0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .none, .none } },
+                            .{ .src = .{ .to_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_ps, .round, .dst0y, .src0y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_ps, .round, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), .rm(.{
+                                .direction = direction,
+                                .precision = .inexact,
+                            }), ._ },
+                            .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .round, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), .rm(.{
+                                .direction = direction,
+                                .precision = .inexact,
+                            }), ._ },
+                            .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "floorf",
+                                .up => "ceilf",
+                                .zero => "truncf",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, .v_ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "floorf",
+                                .up => "ceilf",
+                                .zero => "truncf",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .rc = .sse }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_pd, .xor, .dst0x, .dst0x, .dst0x, ._ },
+                            .{ ._, .v_sd, .round, .dst0x, .dst0x, .src0q, .rm(.{ .direction = direction, .precision = .inexact }) },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_sd, .round, .dst0x, .src0x, .src0q, .rm(.{ .direction = direction, .precision = .inexact }) },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .rc = .sse }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._pd, .xor, .dst0x, .dst0x, ._, ._ },
+                            .{ ._, ._sd, .round, .dst0x, .src0q, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mut_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._sd, .round, .dst0x, .src0q, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "floor",
+                                .up => "ceil",
+                                .zero => "trunc",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .none, .none } },
+                            .{ .src = .{ .to_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_pd, .round, .dst0x, .src0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .none, .none } },
+                            .{ .src = .{ .to_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, ._pd, .round, .dst0x, .src0x, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .mem, .none, .none } },
+                            .{ .src = .{ .to_sse, .none, .none } },
+                        },
+                        .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                        .each = .{ .once = &.{
+                            .{ ._, .v_pd, .round, .dst0y, .src0y, .rm(.{ .direction = direction, .precision = .inexact }), ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_pd, .round, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), .rm(.{
+                                .direction = direction,
+                                .precision = .inexact,
+                            }), ._ },
+                            .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse4_1, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._pd, .round, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), .rm(.{
+                                .direction = direction,
+                                .precision = .inexact,
+                            }), ._ },
+                            .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "floor",
+                                .up => "ceil",
+                                .zero => "trunc",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, .v_sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "floor",
+                                .up => "ceil",
+                                .zero => "trunc",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "floor",
+                                .up => "ceil",
+                                .zero => "trunc",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
+                            .{ ._, ._ps, .movl, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, .x87, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "__floorx",
+                                .up => "__ceilx",
+                                .zero => "__truncx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .reg = .st0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, .v_dqa, .mov, .tmp0x, .mem(.src0x), ._, ._ },
+                            .{ ._, .v_dqa, .mov, .mem(.tmp1x), .tmp0x, ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, .x87, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "__floorx",
+                                .up => "__ceilx",
+                                .zero => "__truncx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .reg = .st0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._dqa, .mov, .tmp0x, .mem(.src0x), ._, ._ },
+                            .{ ._, ._dqa, .mov, .mem(.tmp1x), .tmp0x, ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, .x87, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "__floorx",
+                                .up => "__ceilx",
+                                .zero => "__truncx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .reg = .st0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._ps, .mova, .tmp0x, .mem(.src0x), ._, ._ },
+                            .{ ._, ._ps, .mova, .mem(.tmp1x), .tmp0x, ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, .x87, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "__floorx",
+                                .up => "__ceilx",
+                                .zero => "__truncx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, .v_dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                            .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, .x87, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "__floorx",
+                                .up => "__ceilx",
+                                .zero => "__truncx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                            .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, .x87, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .size = 16, .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "__floorx",
+                                .up => "__ceilx",
+                                .zero => "__truncx",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._ps, .mova, .mem(.tmp2x), .tmp1x, ._, ._ },
+                            .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                            .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                            .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "floorq",
+                                .up => "ceilq",
+                                .zero => "truncq",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.{ .ref = .src0 }},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .avx, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "floorq",
+                                .up => "ceilq",
+                                .zero => "truncq",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse2, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "floorq",
+                                .up => "ceilq",
+                                .zero => "truncq",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
+                    }, .{
+                        .required_features = .{ .sse, null, null, null },
+                        .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                        .patterns = &.{
+                            .{ .src = .{ .to_mem, .none, .none } },
+                        },
+                        .call_frame = .{ .alignment = .@"16" },
+                        .extra_temps = .{
+                            .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                            .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                            .{ .type = .usize, .kind = .{ .symbol = &.{ .name = switch (direction) {
+                                else => unreachable,
+                                .down => "floorq",
+                                .up => "ceilq",
+                                .zero => "truncq",
+                            } } } },
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                            .unused,
+                        },
+                        .dst_temps = .{.mem},
+                        .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                        .each = .{ .once = &.{
+                            .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                            .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                            .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                            .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                            .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                            .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        } },
                     } },
-                }, .{
+                }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(un_op).fmt(pt),
+                        ops[0].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{un_op}, &ops, cg);
+            },
+            .neg, .neg_optimized => |air_tag| if (use_old) try cg.airFloatSign(inst, .neg) else {
+                const un_op = air_datas[@intFromEnum(inst)].un_op;
+                var ops = try cg.tempsFromOperands(inst, .{un_op});
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{cg.typeOf(un_op)}, &ops, comptime &.{ .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -20269,17 +32375,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .v_ps, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
+                        .{ ._, .v_ps, .xor, .dst0x, .src0x, .lea(.tmp0x), ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -20291,17 +32397,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, ._ps, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._ps, .xor, .dst0x, .lea(.tmp0x), ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -20313,17 +32419,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .v_ps, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
+                        .{ ._, .v_ps, .xor, .dst0y, .src0y, .lea(.tmp0y), ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -20335,17 +32441,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .v_pd, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
+                        .{ ._, .v_pd, .xor, .dst0x, .src0x, .lea(.tmp0x), ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -20357,17 +32463,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, ._pd, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._pd, .xor, .dst0x, .lea(.tmp0x), ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -20379,14 +32485,14 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .v_pd, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
+                        .{ ._, .v_pd, .xor, .dst0y, .src0y, .lea(.tmp0y), ._ },
                     } },
                 }, .{
                     .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_x87, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_x87, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .f80, .kind = .{ .reg = .st7 } },
@@ -20402,18 +32508,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .x87 } }},
                     .each = .{ .once = &.{
                         .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
-                        .{ ._, .f_, .abs, ._, ._, ._, ._ },
+                        .{ ._, .f_, .chs, ._, ._, ._, ._ },
                         .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_any_float = .xword }, .any },
+                    .src_constraints = .{ .{ .scalar_any_float = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -20425,17 +32531,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
+                        .{ ._, .vp_, .xor, .dst0x, .src0x, .lea(.tmp0x), ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_any_float = .xword }, .any },
+                    .src_constraints = .{ .{ .scalar_any_float = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -20447,17 +32553,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, .p_, .xor, .dst0x, .lea(.tmp0x), ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_any_float = .xword }, .any },
+                    .src_constraints = .{ .{ .scalar_any_float = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -20469,17 +32575,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, ._ps, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._ps, .xor, .dst0x, .lea(.tmp0x), ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_any_float = .yword }, .any },
+                    .src_constraints = .{ .{ .scalar_any_float = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -20491,17 +32597,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
+                        .{ ._, .vp_, .xor, .dst0y, .src0y, .lea(.tmp0y), ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_any_float = .yword }, .any },
+                    .src_constraints = .{ .{ .scalar_any_float = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
                         .unused,
                         .unused,
                         .unused,
@@ -20513,17 +32619,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .v_pd, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
+                        .{ ._, .v_pd, .xor, .dst0y, .src0y, .lea(.tmp0y), ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
                         .{ .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .rc = .sse } },
                         .unused,
@@ -20537,20 +32643,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
                         .{ ._, .v_ps, .mova, .tmp2y, .lea(.tmp0y), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_ps, .@"and", .tmp3y, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._ },
+                        .{ .@"0:", .v_ps, .xor, .tmp3y, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._ },
                         .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_size), .tmp3y, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .{ .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .rc = .sse } },
                         .unused,
@@ -20565,20 +32671,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._ps, .mova, .tmp2x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
                         .{ .@"0:", ._ps, .mova, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, ._ps, .@"and", .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._ps, .xor, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
                         .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
                         .{ .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .rc = .sse } },
                         .unused,
@@ -20592,20 +32698,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
                         .{ ._, .v_pd, .mova, .tmp2y, .lea(.tmp0y), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_pd, .@"and", .tmp3y, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._ },
+                        .{ .@"0:", .v_pd, .xor, .tmp3y, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._ },
                         .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_size), .tmp3y, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .{ .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .rc = .sse } },
                         .unused,
@@ -20620,20 +32726,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._pd, .mova, .tmp2x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
                         .{ .@"0:", ._pd, .mova, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, ._pd, .@"and", .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._pd, .xor, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
                         .{ ._, ._pd, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_any_float = .yword }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_any_float = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
                         .{ .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .rc = .sse } },
                         .unused,
@@ -20647,20 +32753,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
                         .{ ._, .v_dqa, .mov, .tmp2y, .lea(.tmp0y), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .vp_, .@"and", .tmp3y, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp3y, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._ },
                         .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_size), .tmp3y, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_any_float = .yword }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_any_float = .yword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .yword } } },
                         .{ .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .rc = .sse } },
                         .unused,
@@ -20674,20 +32780,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
                         .{ ._, .v_pd, .mova, .tmp2y, .lea(.tmp0y), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
-                        .{ .@"0:", .v_pd, .@"and", .tmp3y, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._ },
+                        .{ .@"0:", .v_pd, .xor, .tmp3y, .tmp2y, .memia(.src0y, .tmp0, .add_size), ._ },
                         .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_size), .tmp3y, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_any_float = .xword }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_any_float = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .{ .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .rc = .sse } },
                         .unused,
@@ -20702,20 +32808,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
                         .{ .@"0:", ._dqa, .mov, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, .p_, .@"and", .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, .p_, .xor, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
                         .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_any_float = .xword }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_any_float = .xword }, .any, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .smax_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .src0, .vectorize_to = .xword } } },
                         .{ .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .rc = .sse } },
                         .unused,
@@ -20730,7 +32836,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._ps, .mova, .tmp2x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_size), ._, ._ },
                         .{ .@"0:", ._ps, .mova, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, ._ps, .@"and", .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
+                        .{ ._, ._ps, .xor, .tmp3x, .memia(.src0x, .tmp0, .add_size), ._, ._ },
                         .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_size), .tmp3x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
@@ -20738,12 +32844,12 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                 } }) catch |err| switch (err) {
                     error.SelectFailed => return cg.fail("failed to select {s} {} {}", .{
                         @tagName(air_tag),
-                        cg.typeOf(ty_op.operand).fmt(pt),
+                        cg.typeOf(un_op).fmt(pt),
                         ops[0].tracking(cg),
                     }),
                     else => |e| return e,
                 };
-                try res[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+                try res[0].finish(inst, &.{un_op}, &ops, cg);
             },
 
             .cmp_lt,
@@ -20772,9 +32878,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     }) {
                         inline false, true => |strict| comptime &.{ .{
                             .required_features = .{ .f16c, null, null, null },
-                            .src_constraints = .{ .{ .float = .word }, .{ .float = .word } },
+                            .src_constraints = .{ .{ .float = .word }, .{ .float = .word }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_sse, .to_sse }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_sse, .to_sse, .none }, .commute = .{ 0, 1 } },
                             },
                             .extra_temps = .{
                                 .{ .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } },
@@ -20799,9 +32905,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse, null, null, null },
-                            .src_constraints = .{ .{ .float = .word }, .{ .float = .word } },
+                            .src_constraints = .{ .{ .float = .word }, .{ .float = .word }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 } } },
+                                .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -20826,10 +32932,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx, null, null, null },
-                            .src_constraints = .{ .{ .float = .dword }, .{ .float = .dword } },
+                            .src_constraints = .{ .{ .float = .dword }, .{ .float = .dword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_sse, .to_sse }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_sse, .to_sse, .none }, .commute = .{ 0, 1 } },
                             },
                             .dst_temps = .{.{ .cc = switch (strict) {
                                 true => .a,
@@ -20841,10 +32947,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse, null, null, null },
-                            .src_constraints = .{ .{ .float = .dword }, .{ .float = .dword } },
+                            .src_constraints = .{ .{ .float = .dword }, .{ .float = .dword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_sse, .to_sse }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_sse, .to_sse, .none }, .commute = .{ 0, 1 } },
                             },
                             .dst_temps = .{.{ .cc = switch (strict) {
                                 true => .a,
@@ -20856,10 +32962,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .avx, null, null, null },
-                            .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword } },
+                            .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_sse, .to_sse }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_sse, .to_sse, .none }, .commute = .{ 0, 1 } },
                             },
                             .dst_temps = .{.{ .cc = switch (strict) {
                                 true => .a,
@@ -20871,10 +32977,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse2, null, null, null },
-                            .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword } },
+                            .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_sse, .to_sse }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_sse, .to_sse, .none }, .commute = .{ 0, 1 } },
                             },
                             .dst_temps = .{.{ .cc = switch (strict) {
                                 true => .a,
@@ -20886,13 +32992,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .x87, .cmov, null, null },
-                            .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword } },
+                            .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mem, .to_mem, .none }, .commute = .{ 0, 1 } },
                             },
                             .extra_temps = .{
-                                .{ .type = .f80, .kind = .{ .reg = .st6 } },
-                                .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                                .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                                .{ .type = .f64, .kind = .{ .reg = .st7 } },
                                 .unused,
                                 .unused,
                                 .unused,
@@ -20914,13 +33020,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sahf, .x87, null, null },
-                            .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword } },
+                            .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mem, .to_mem, .none }, .commute = .{ 0, 1 } },
                             },
                             .extra_temps = .{
-                                .{ .type = .f80, .kind = .{ .reg = .st6 } },
-                                .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                                .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                                .{ .type = .f64, .kind = .{ .reg = .st7 } },
                                 .{ .type = .u8, .kind = .{ .reg = .ah } },
                                 .unused,
                                 .unused,
@@ -20943,13 +33049,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .x87, null, null, null },
-                            .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword } },
+                            .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_mem, .to_mem }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_mem, .to_mem, .none }, .commute = .{ 0, 1 } },
                             },
                             .extra_temps = .{
-                                .{ .type = .f80, .kind = .{ .reg = .st6 } },
-                                .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                                .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                                .{ .type = .f64, .kind = .{ .reg = .st7 } },
                                 .{ .type = .u8, .kind = .{ .reg = .ah } },
                                 .unused,
                                 .unused,
@@ -20975,10 +33081,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .x87, .cmov, null, null },
-                            .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte } },
+                            .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_x87, .mem }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_x87, .to_x87 }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_x87, .to_x87, .none }, .commute = .{ 0, 1 } },
                             },
                             .extra_temps = .{
                                 .{ .type = .f80, .kind = .{ .reg = .st7 } },
@@ -21002,9 +33108,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sahf, .x87, null, null },
-                            .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte } },
+                            .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .mem, .mem }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .mem, .mem, .none }, .commute = .{ 0, 1 } },
                             },
                             .extra_temps = .{
                                 .{ .type = .f80, .kind = .{ .reg = .st6 } },
@@ -21031,10 +33137,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sahf, .x87, null, null },
-                            .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte } },
+                            .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_x87, .mem }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_x87, .to_x87 }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_x87, .to_x87, .none }, .commute = .{ 0, 1 } },
                             },
                             .extra_temps = .{
                                 .{ .type = .f80, .kind = .{ .reg = .st6 } },
@@ -21060,9 +33166,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .x87, null, null, null },
-                            .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte } },
+                            .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .mem, .mem }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .mem, .mem, .none }, .commute = .{ 0, 1 } },
                             },
                             .extra_temps = .{
                                 .{ .type = .f80, .kind = .{ .reg = .st6 } },
@@ -21092,10 +33198,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .x87, null, null, null },
-                            .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte } },
+                            .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .to_x87, .mem }, .commute = .{ 0, 1 } },
-                                .{ .src = .{ .to_x87, .to_x87 }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                                .{ .src = .{ .to_x87, .to_x87, .none }, .commute = .{ 0, 1 } },
                             },
                             .extra_temps = .{
                                 .{ .type = .f80, .kind = .{ .reg = .st6 } },
@@ -21124,9 +33230,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             } },
                         }, .{
                             .required_features = .{ .sse, null, null, null },
-                            .src_constraints = .{ .{ .float = .xword }, .{ .float = .xword } },
+                            .src_constraints = .{ .{ .float = .xword }, .{ .float = .xword }, .any },
                             .patterns = &.{
-                                .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 } } },
+                                .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                             },
                             .call_frame = .{ .alignment = .@"16" },
                             .extra_temps = .{
@@ -21204,15 +33310,15 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         switch (Condition.fromCompareOperatorUnsigned(cmp_op)) {
                             else => unreachable,
                             inline .e, .ne => |cc| comptime &.{.{
-                                .src_constraints = .{ .{ .size = .byte }, .{ .size = .byte } },
+                                .src_constraints = .{ .{ .size = .byte }, .{ .size = .byte }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .mem, .imm8 } },
-                                    .{ .src = .{ .imm8, .mem }, .commute = .{ 0, 1 } },
-                                    .{ .src = .{ .to_gpr, .imm8 } },
-                                    .{ .src = .{ .imm8, .to_gpr }, .commute = .{ 0, 1 } },
-                                    .{ .src = .{ .mem, .to_gpr } },
-                                    .{ .src = .{ .to_gpr, .mem }, .commute = .{ 0, 1 } },
-                                    .{ .src = .{ .to_gpr, .to_gpr } },
+                                    .{ .src = .{ .mem, .imm8, .none } },
+                                    .{ .src = .{ .imm8, .mem, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_gpr, .imm8, .none } },
+                                    .{ .src = .{ .imm8, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .mem, .to_gpr, .none } },
+                                    .{ .src = .{ .to_gpr, .mem, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_gpr, .to_gpr, .none } },
                                 },
                                 .dst_temps = .{.{ .rc = .general_purpose }},
                                 .clobbers = .{ .eflags = true },
@@ -21254,9 +33360,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         }) {
                             inline false, true => |optimized| comptime &.{ .{
                                 .required_features = .{ .f16c, null, null, null },
-                                .src_constraints = .{ .{ .float = .word }, .{ .float = .word } },
+                                .src_constraints = .{ .{ .float = .word }, .{ .float = .word }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .to_sse, .to_sse } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
                                 },
                                 .extra_temps = .{
                                     .{ .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } },
@@ -21277,13 +33383,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 .each = .{ .once = &.{
                                     .{ ._, .v_ps, .cvtph2, .tmp0x, .src0q, ._, ._ },
                                     .{ ._, .v_ps, .cvtph2, .tmp1x, .src1q, ._, ._ },
-                                    .{ ._, .v_ss, .ucomi, .tmp0x, .tmp1x, ._, ._ },
+                                    .{ ._, .v_ss, .ucomi, .tmp0x, .tmp1d, ._, ._ },
                                 } },
                             }, .{
                                 .required_features = .{ .sse, null, null, null },
-                                .src_constraints = .{ .{ .float = .word }, .{ .float = .word } },
+                                .src_constraints = .{ .{ .float = .word }, .{ .float = .word }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 } } },
+                                    .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                                 },
                                 .call_frame = .{ .alignment = .@"16" },
                                 .extra_temps = .{
@@ -21305,11 +33411,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .avx, null, null, null },
-                                .src_constraints = .{ .{ .float = .dword }, .{ .float = .dword } },
+                                .src_constraints = .{ .{ .float = .dword }, .{ .float = .dword }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .to_sse, .mem } },
-                                    .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                    .{ .src = .{ .to_sse, .to_sse } },
+                                    .{ .src = .{ .to_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
                                 },
                                 .dst_temps = .{.{ .cc = switch (optimized) {
                                     false => .z_and_np,
@@ -21321,11 +33427,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .sse, null, null, null },
-                                .src_constraints = .{ .{ .float = .dword }, .{ .float = .dword } },
+                                .src_constraints = .{ .{ .float = .dword }, .{ .float = .dword }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .to_sse, .mem } },
-                                    .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                    .{ .src = .{ .to_sse, .to_sse } },
+                                    .{ .src = .{ .to_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
                                 },
                                 .dst_temps = .{.{ .cc = switch (optimized) {
                                     false => .z_and_np,
@@ -21337,11 +33443,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .avx, null, null, null },
-                                .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword } },
+                                .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .to_sse, .mem } },
-                                    .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                    .{ .src = .{ .to_sse, .to_sse } },
+                                    .{ .src = .{ .to_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
                                 },
                                 .dst_temps = .{.{ .cc = switch (optimized) {
                                     false => .z_and_np,
@@ -21353,11 +33459,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .sse2, null, null, null },
-                                .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword } },
+                                .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .to_sse, .mem } },
-                                    .{ .src = .{ .mem, .to_sse }, .commute = .{ 0, 1 } },
-                                    .{ .src = .{ .to_sse, .to_sse } },
+                                    .{ .src = .{ .to_sse, .mem, .none } },
+                                    .{ .src = .{ .mem, .to_sse, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_sse, .to_sse, .none } },
                                 },
                                 .dst_temps = .{.{ .cc = switch (optimized) {
                                     false => .z_and_np,
@@ -21369,13 +33475,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .x87, .cmov, null, null },
-                                .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword } },
+                                .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .to_mem, .to_mem }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_mem, .to_mem, .none }, .commute = .{ 0, 1 } },
                                 },
                                 .extra_temps = .{
-                                    .{ .type = .f80, .kind = .{ .reg = .st6 } },
-                                    .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                                    .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                                    .{ .type = .f64, .kind = .{ .reg = .st7 } },
                                     .unused,
                                     .unused,
                                     .unused,
@@ -21397,13 +33503,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .sahf, .x87, null, null },
-                                .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword } },
+                                .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .to_mem, .to_mem }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .to_mem, .to_mem, .none }, .commute = .{ 0, 1 } },
                                 },
                                 .extra_temps = .{
-                                    .{ .type = .f80, .kind = .{ .reg = .st6 } },
-                                    .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                                    .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                                    .{ .type = .f64, .kind = .{ .reg = .st7 } },
                                     .{ .type = .u8, .kind = .{ .reg = .ah } },
                                     .unused,
                                     .unused,
@@ -21426,13 +33532,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .x87, null, null, null },
-                                .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword } },
+                                .src_constraints = .{ .{ .float = .qword }, .{ .float = .qword }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .to_mem, .to_mem } },
+                                    .{ .src = .{ .to_mem, .to_mem, .none } },
                                 },
                                 .extra_temps = .{
-                                    .{ .type = .f80, .kind = .{ .reg = .st6 } },
-                                    .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                                    .{ .type = .f64, .kind = .{ .reg = .st6 } },
+                                    .{ .type = .f64, .kind = .{ .reg = .st7 } },
                                     .{ .type = .u8, .kind = .{ .reg = .ah } },
                                     .unused,
                                     .unused,
@@ -21465,11 +33571,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .x87, .cmov, null, null },
-                                .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte } },
+                                .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .to_x87, .mem }, .commute = .{ 0, 1 } },
-                                    .{ .src = .{ .mem, .to_x87 } },
-                                    .{ .src = .{ .to_x87, .to_x87 } },
+                                    .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .mem, .to_x87, .none } },
+                                    .{ .src = .{ .to_x87, .to_x87, .none } },
                                 },
                                 .extra_temps = .{
                                     .{ .type = .f80, .kind = .{ .reg = .st7 } },
@@ -21493,9 +33599,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .sahf, .x87, null, null },
-                                .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte } },
+                                .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .mem, .mem } },
+                                    .{ .src = .{ .mem, .mem, .none } },
                                 },
                                 .extra_temps = .{
                                     .{ .type = .f80, .kind = .{ .reg = .st6 } },
@@ -21522,11 +33628,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .sahf, .x87, null, null },
-                                .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte } },
+                                .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .to_x87, .mem }, .commute = .{ 0, 1 } },
-                                    .{ .src = .{ .mem, .to_x87 } },
-                                    .{ .src = .{ .to_x87, .to_x87 } },
+                                    .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .mem, .to_x87, .none } },
+                                    .{ .src = .{ .to_x87, .to_x87, .none } },
                                 },
                                 .extra_temps = .{
                                     .{ .type = .f80, .kind = .{ .reg = .st6 } },
@@ -21552,9 +33658,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .x87, null, null, null },
-                                .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte } },
+                                .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .mem, .mem } },
+                                    .{ .src = .{ .mem, .mem, .none } },
                                 },
                                 .extra_temps = .{
                                     .{ .type = .f80, .kind = .{ .reg = .st6 } },
@@ -21591,11 +33697,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .x87, null, null, null },
-                                .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte } },
+                                .src_constraints = .{ .{ .float = .tbyte }, .{ .float = .tbyte }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .to_x87, .mem }, .commute = .{ 0, 1 } },
-                                    .{ .src = .{ .mem, .to_x87 } },
-                                    .{ .src = .{ .to_x87, .to_x87 } },
+                                    .{ .src = .{ .to_x87, .mem, .none }, .commute = .{ 0, 1 } },
+                                    .{ .src = .{ .mem, .to_x87, .none } },
+                                    .{ .src = .{ .to_x87, .to_x87, .none } },
                                 },
                                 .extra_temps = .{
                                     .{ .type = .f80, .kind = .{ .reg = .st6 } },
@@ -21630,9 +33736,9 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                                 } },
                             }, .{
                                 .required_features = .{ .sse, null, null, null },
-                                .src_constraints = .{ .{ .float = .xword }, .{ .float = .xword } },
+                                .src_constraints = .{ .{ .float = .xword }, .{ .float = .xword }, .any },
                                 .patterns = &.{
-                                    .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 } } },
+                                    .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .none } },
                                 },
                                 .call_frame = .{ .alignment = .@"16" },
                                 .extra_temps = .{
@@ -21663,278 +33769,1020 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                             },
                         }
                     },
-                    .int => res[0] = ops[0].cmpInts(cmp_op, &ops[1], cg) catch |err| break :err err,
-                }) catch |err| switch (err) {
-                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
-                        @tagName(air_tag),
-                        cg.typeOf(bin_op.lhs).fmt(pt),
-                        ops[0].tracking(cg),
-                        ops[1].tracking(cg),
-                    }),
-                    else => |e| return e,
-                };
-                if (opt_info) |*oi| {
-                    for (ops) |op| for (res) |r| {
-                        if (op.index == r.index) break;
-                    } else try op.die(cg);
-                    try cg.genCopy(.bool, oi.res[0].tracking(cg).short, res[0].tracking(cg).short, .{});
-                    try res[0].die(cg);
-                    res[0] = oi.res[0];
-                    try cg.restoreState(oi.state, &oi.deaths, .{
-                        .emit_instructions = true,
-                        .update_tracking = true,
-                        .resurrect = true,
-                        .close_scope = true,
-                    });
-                    cg.performReloc(oi.reloc);
-                    @memset(&ops, res[0]);
-                }
-                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
-            },
-
-            .cond_br => try cg.airCondBr(inst),
-            .switch_br => try cg.airSwitchBr(inst),
-            .loop_switch_br => try cg.airLoopSwitchBr(inst),
-            .switch_dispatch => try cg.airSwitchDispatch(inst),
-            .@"try", .try_cold => try cg.airTry(inst),
-            .try_ptr, .try_ptr_cold => try cg.airTryPtr(inst),
-            .dbg_stmt => if (cg.debug_output != .none) {
-                const dbg_stmt = air_datas[@intFromEnum(inst)].dbg_stmt;
-                _ = try cg.addInst(.{
-                    .tag = .pseudo,
-                    .ops = .pseudo_dbg_line_stmt_line_column,
-                    .data = .{ .line_column = .{
-                        .line = dbg_stmt.line,
-                        .column = dbg_stmt.column,
+                    .int => res[0] = ops[0].cmpInts(cmp_op, &ops[1], cg) catch |err| break :err err,
+                }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        cg.typeOf(bin_op.lhs).fmt(pt),
+                        ops[0].tracking(cg),
+                        ops[1].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                if (opt_info) |*oi| {
+                    for (ops) |op| for (res) |r| {
+                        if (op.index == r.index) break;
+                    } else try op.die(cg);
+                    try cg.genCopy(.bool, oi.res[0].tracking(cg).short, res[0].tracking(cg).short, .{});
+                    try res[0].die(cg);
+                    res[0] = oi.res[0];
+                    try cg.restoreState(oi.state, &oi.deaths, .{
+                        .emit_instructions = true,
+                        .update_tracking = true,
+                        .resurrect = true,
+                        .close_scope = true,
+                    });
+                    cg.performReloc(oi.reloc);
+                    @memset(&ops, res[0]);
+                }
+                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+
+            .cond_br => try cg.airCondBr(inst),
+            .switch_br => try cg.airSwitchBr(inst),
+            .loop_switch_br => try cg.airLoopSwitchBr(inst),
+            .switch_dispatch => try cg.airSwitchDispatch(inst),
+            .@"try", .try_cold => try cg.airTry(inst),
+            .try_ptr, .try_ptr_cold => try cg.airTryPtr(inst),
+            .dbg_stmt => if (cg.debug_output != .none) {
+                const dbg_stmt = air_datas[@intFromEnum(inst)].dbg_stmt;
+                _ = try cg.addInst(.{
+                    .tag = .pseudo,
+                    .ops = .pseudo_dbg_line_stmt_line_column,
+                    .data = .{ .line_column = .{
+                        .line = dbg_stmt.line,
+                        .column = dbg_stmt.column,
+                    } },
+                });
+            },
+            .dbg_empty_stmt => if (cg.debug_output != .none) {
+                if (cg.mir_instructions.len > 0) {
+                    const prev_mir_op = &cg.mir_instructions.items(.ops)[cg.mir_instructions.len - 1];
+                    if (prev_mir_op.* == .pseudo_dbg_line_line_column)
+                        prev_mir_op.* = .pseudo_dbg_line_stmt_line_column;
+                }
+                try cg.asmOpOnly(.{ ._, .nop });
+            },
+            .dbg_inline_block => {
+                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
+                const extra = cg.air.extraData(Air.DbgInlineBlock, ty_pl.payload);
+                const old_inline_func = cg.inline_func;
+                defer cg.inline_func = old_inline_func;
+                cg.inline_func = extra.data.func;
+                if (cg.debug_output != .none) _ = try cg.addInst(.{
+                    .tag = .pseudo,
+                    .ops = .pseudo_dbg_enter_inline_func,
+                    .data = .{ .func = extra.data.func },
+                });
+                try cg.lowerBlock(inst, @ptrCast(cg.air.extra[extra.end..][0..extra.data.body_len]));
+                if (cg.debug_output != .none) _ = try cg.addInst(.{
+                    .tag = .pseudo,
+                    .ops = .pseudo_dbg_leave_inline_func,
+                    .data = .{ .func = old_inline_func },
+                });
+            },
+            .dbg_var_ptr,
+            .dbg_var_val,
+            .dbg_arg_inline,
+            => if (use_old) try cg.airDbgVar(inst) else if (cg.debug_output != .none) {
+                const pl_op = air_datas[@intFromEnum(inst)].pl_op;
+                var ops = try cg.tempsFromOperands(inst, .{pl_op.operand});
+                var mcv = ops[0].tracking(cg).short;
+                switch (mcv) {
+                    else => {},
+                    .eflags => |cc| switch (cc) {
+                        else => {},
+                        // These values would self destruct. Maybe we make them use their
+                        // turing complete dwarf expression interpreters for once?
+                        .z_and_np, .nz_or_p => {
+                            try cg.spillEflagsIfOccupied();
+                            mcv = ops[0].tracking(cg).short;
+                        },
+                    },
+                }
+                try cg.genLocalDebugInfo(inst, ops[0].tracking(cg).short);
+                try ops[0].die(cg);
+            },
+            .is_null_ptr => if (use_old) try cg.airIsNullPtr(inst) else {
+                const un_op = air_datas[@intFromEnum(inst)].un_op;
+                const opt_ty = cg.typeOf(un_op).childType(zcu);
+                const opt_repr_is_pl = opt_ty.optionalReprIsPayload(zcu);
+                const opt_child_ty = opt_ty.optionalChild(zcu);
+                const opt_child_abi_size: u31 = @intCast(opt_child_ty.abiSize(zcu));
+                var ops = try cg.tempsFromOperands(inst, .{un_op});
+                if (!opt_repr_is_pl) try ops[0].toOffset(opt_child_abi_size, cg);
+                while (try ops[0].toLea(cg)) {}
+                try cg.asmMemoryImmediate(
+                    .{ ._, .cmp },
+                    try ops[0].tracking(cg).short.deref().mem(cg, .{ .size = if (!opt_repr_is_pl)
+                        .byte
+                    else if (opt_child_ty.isSlice(zcu))
+                        .qword
+                    else
+                        .fromSize(opt_child_abi_size) }),
+                    .u(0),
+                );
+                const is_null = try cg.tempInit(.bool, .{ .eflags = .e });
+                try is_null.finish(inst, &.{un_op}, &ops, cg);
+            },
+            .is_non_null_ptr => if (use_old) try cg.airIsNonNullPtr(inst) else {
+                const un_op = air_datas[@intFromEnum(inst)].un_op;
+                const opt_ty = cg.typeOf(un_op).childType(zcu);
+                const opt_repr_is_pl = opt_ty.optionalReprIsPayload(zcu);
+                const opt_child_ty = opt_ty.optionalChild(zcu);
+                const opt_child_abi_size: u31 = @intCast(opt_child_ty.abiSize(zcu));
+                var ops = try cg.tempsFromOperands(inst, .{un_op});
+                if (!opt_repr_is_pl) try ops[0].toOffset(opt_child_abi_size, cg);
+                while (try ops[0].toLea(cg)) {}
+                try cg.asmMemoryImmediate(
+                    .{ ._, .cmp },
+                    try ops[0].tracking(cg).short.deref().mem(cg, .{ .size = if (!opt_repr_is_pl)
+                        .byte
+                    else if (opt_child_ty.isSlice(zcu))
+                        .qword
+                    else
+                        .fromSize(opt_child_abi_size) }),
+                    .u(0),
+                );
+                const is_non_null = try cg.tempInit(.bool, .{ .eflags = .ne });
+                try is_non_null.finish(inst, &.{un_op}, &ops, cg);
+            },
+            .is_err_ptr => if (use_old) try cg.airIsErrPtr(inst) else {
+                const un_op = air_datas[@intFromEnum(inst)].un_op;
+                const eu_ty = cg.typeOf(un_op).childType(zcu);
+                const eu_err_ty = eu_ty.errorUnionSet(zcu);
+                const eu_pl_ty = eu_ty.errorUnionPayload(zcu);
+                const eu_err_off: i32 = @intCast(codegen.errUnionErrorOffset(eu_pl_ty, zcu));
+                var ops = try cg.tempsFromOperands(inst, .{un_op});
+                try ops[0].toOffset(eu_err_off, cg);
+                while (try ops[0].toLea(cg)) {}
+                try cg.asmMemoryImmediate(
+                    .{ ._, .cmp },
+                    try ops[0].tracking(cg).short.deref().mem(cg, .{ .size = cg.memSize(eu_err_ty) }),
+                    .u(0),
+                );
+                const is_err = try cg.tempInit(.bool, .{ .eflags = .ne });
+                try is_err.finish(inst, &.{un_op}, &ops, cg);
+            },
+            .is_non_err_ptr => if (use_old) try cg.airIsNonErrPtr(inst) else {
+                const un_op = air_datas[@intFromEnum(inst)].un_op;
+                const eu_ty = cg.typeOf(un_op).childType(zcu);
+                const eu_err_ty = eu_ty.errorUnionSet(zcu);
+                const eu_pl_ty = eu_ty.errorUnionPayload(zcu);
+                const eu_err_off: i32 = @intCast(codegen.errUnionErrorOffset(eu_pl_ty, zcu));
+                var ops = try cg.tempsFromOperands(inst, .{un_op});
+                try ops[0].toOffset(eu_err_off, cg);
+                while (try ops[0].toLea(cg)) {}
+                try cg.asmMemoryImmediate(
+                    .{ ._, .cmp },
+                    try ops[0].tracking(cg).short.deref().mem(cg, .{ .size = cg.memSize(eu_err_ty) }),
+                    .u(0),
+                );
+                const is_non_err = try cg.tempInit(.bool, .{ .eflags = .e });
+                try is_non_err.finish(inst, &.{un_op}, &ops, cg);
+            },
+            .load => if (use_old) try cg.airLoad(inst) else fallback: {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                const val_ty = ty_op.ty.toType();
+                const ptr_ty = cg.typeOf(ty_op.operand);
+                const ptr_info = ptr_ty.ptrInfo(zcu);
+                if (ptr_info.packed_offset.host_size > 0 and
+                    (ptr_info.flags.vector_index == .none or val_ty.toIntern() == .bool_type))
+                    break :fallback try cg.airLoad(inst);
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                const res = try ops[0].load(val_ty, .{
+                    .disp = switch (ptr_info.flags.vector_index) {
+                        .none => 0,
+                        .runtime => unreachable,
+                        else => |vector_index| @intCast(val_ty.abiSize(zcu) * @intFromEnum(vector_index)),
+                    },
+                }, cg);
+                try res.finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .ret => try cg.airRet(inst, false),
+            .ret_safe => try cg.airRet(inst, true),
+            .ret_load => try cg.airRetLoad(inst),
+            .store, .store_safe => |air_tag| if (use_old) try cg.airStore(inst, switch (air_tag) {
+                else => unreachable,
+                .store => false,
+                .store_safe => true,
+            }) else fallback: {
+                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
+                const ptr_ty = cg.typeOf(bin_op.lhs);
+                const ptr_info = ptr_ty.ptrInfo(zcu);
+                const val_ty = cg.typeOf(bin_op.rhs);
+                if (ptr_info.packed_offset.host_size > 0 and
+                    (ptr_info.flags.vector_index == .none or val_ty.toIntern() == .bool_type))
+                    break :fallback try cg.airStore(inst, switch (air_tag) {
+                        else => unreachable,
+                        .store => false,
+                        .store_safe => true,
+                    });
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                try ops[0].store(&ops[1], .{
+                    .disp = switch (ptr_info.flags.vector_index) {
+                        .none => 0,
+                        .runtime => unreachable,
+                        else => |vector_index| @intCast(val_ty.abiSize(zcu) * @intFromEnum(vector_index)),
+                    },
+                    .safe = switch (air_tag) {
+                        else => unreachable,
+                        .store => false,
+                        .store_safe => true,
+                    },
+                }, cg);
+                for (ops) |op| try op.die(cg);
+            },
+            .unreach => {},
+            .fptrunc => |air_tag| if (use_old) try cg.airFptrunc(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{ty_op.ty.toType()}, &ops, comptime &.{ .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .src0x, .rm(.{}), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .src0x, .rm(.{}), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_, .cvtps2ph, .dst0x, .src0y, .rm(.{}), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncsfhf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .mova, .tmp1y, .memsia(.src0y, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncsfhf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ss, .mov, .tmp1x, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncsfhf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ss, .mov, .tmp1x, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncsfhf2" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ss, .mov, .tmp1x, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .tmp3d, .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp3w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncsfhf2" } } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ss, .mov, .tmp1x, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .mem(.tmp3d), .tmp1x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp4d, .mem(.tmp3d), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncdfhf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncdfhf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_sd, .mov, .tmp1x, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncdfhf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._sd, .mov, .tmp1x, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncdfhf2" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._sd, .mov, .tmp1x, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .tmp3d, .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp3w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncdfhf2" } } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .movl, .tmp1x, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .mem(.tmp3d), .tmp1x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp4d, .mem(.tmp3d), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .xor, .dst0x, .dst0x, .dst0x, ._ },
+                        .{ ._, .v_ss, .cvtsd2, .dst0x, .dst0x, .src0q, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ss, .cvtsd2, .dst0x, .src0x, .src0q, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .xor, .dst0x, .dst0x, ._, ._ },
+                        .{ ._, ._ss, .cvtsd2, .dst0x, .src0q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .f64, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .each = .{ .once = &.{
+                        .{ ._, .f_, .ld, .src0q, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0d, ._, ._, ._ },
                     } },
-                });
-            },
-            .dbg_empty_stmt => if (cg.debug_output != .none) {
-                if (cg.mir_instructions.len > 0) {
-                    const prev_mir_op = &cg.mir_instructions.items(.ops)[cg.mir_instructions.len - 1];
-                    if (prev_mir_op.* == .pseudo_dbg_line_line_column)
-                        prev_mir_op.* = .pseudo_dbg_line_stmt_line_column;
-                }
-                try cg.asmOpOnly(.{ ._, .nop });
-            },
-            .dbg_inline_block => {
-                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
-                const extra = cg.air.extraData(Air.DbgInlineBlock, ty_pl.payload);
-                const old_inline_func = cg.inline_func;
-                defer cg.inline_func = old_inline_func;
-                cg.inline_func = extra.data.func;
-                if (cg.debug_output != .none) _ = try cg.addInst(.{
-                    .tag = .pseudo,
-                    .ops = .pseudo_dbg_enter_inline_func,
-                    .data = .{ .func = extra.data.func },
-                });
-                try cg.lowerBlock(inst, @ptrCast(cg.air.extra[extra.end..][0..extra.data.body_len]));
-                if (cg.debug_output != .none) _ = try cg.addInst(.{
-                    .tag = .pseudo,
-                    .ops = .pseudo_dbg_leave_inline_func,
-                    .data = .{ .func = old_inline_func },
-                });
-            },
-            .dbg_var_ptr,
-            .dbg_var_val,
-            .dbg_arg_inline,
-            => if (use_old) try cg.airDbgVar(inst) else if (cg.debug_output != .none) {
-                const pl_op = air_datas[@intFromEnum(inst)].pl_op;
-                var ops = try cg.tempsFromOperands(inst, .{pl_op.operand});
-                var mcv = ops[0].tracking(cg).short;
-                switch (mcv) {
-                    else => {},
-                    .eflags => |cc| switch (cc) {
-                        else => {},
-                        // These values would self destruct. Maybe we make them use their
-                        // turing complete dwarf expression interpreters for once?
-                        .z_and_np, .nz_or_p => {
-                            try cg.spillEflagsIfOccupied();
-                            mcv = ops[0].tracking(cg).short;
-                        },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                }
-                try cg.genLocalDebugInfo(inst, ops[0].tracking(cg).short);
-                try ops[0].die(cg);
-            },
-            .is_null_ptr => if (use_old) try cg.airIsNullPtr(inst) else {
-                const un_op = air_datas[@intFromEnum(inst)].un_op;
-                const opt_ty = cg.typeOf(un_op).childType(zcu);
-                const opt_repr_is_pl = opt_ty.optionalReprIsPayload(zcu);
-                const opt_child_ty = opt_ty.optionalChild(zcu);
-                const opt_child_abi_size: u31 = @intCast(opt_child_ty.abiSize(zcu));
-                var ops = try cg.tempsFromOperands(inst, .{un_op});
-                if (!opt_repr_is_pl) try ops[0].toOffset(opt_child_abi_size, cg);
-                while (try ops[0].toLea(cg)) {}
-                try cg.asmMemoryImmediate(
-                    .{ ._, .cmp },
-                    try ops[0].tracking(cg).short.deref().mem(cg, .{ .size = if (!opt_repr_is_pl)
-                        .byte
-                    else if (opt_child_ty.isSlice(zcu))
-                        .qword
-                    else
-                        .fromSize(opt_child_abi_size) }),
-                    .u(0),
-                );
-                const is_null = try cg.tempInit(.bool, .{ .eflags = .e });
-                try is_null.finish(inst, &.{un_op}, &ops, cg);
-            },
-            .is_non_null_ptr => if (use_old) try cg.airIsNonNullPtr(inst) else {
-                const un_op = air_datas[@intFromEnum(inst)].un_op;
-                const opt_ty = cg.typeOf(un_op).childType(zcu);
-                const opt_repr_is_pl = opt_ty.optionalReprIsPayload(zcu);
-                const opt_child_ty = opt_ty.optionalChild(zcu);
-                const opt_child_abi_size: u31 = @intCast(opt_child_ty.abiSize(zcu));
-                var ops = try cg.tempsFromOperands(inst, .{un_op});
-                if (!opt_repr_is_pl) try ops[0].toOffset(opt_child_abi_size, cg);
-                while (try ops[0].toLea(cg)) {}
-                try cg.asmMemoryImmediate(
-                    .{ ._, .cmp },
-                    try ops[0].tracking(cg).short.deref().mem(cg, .{ .size = if (!opt_repr_is_pl)
-                        .byte
-                    else if (opt_child_ty.isSlice(zcu))
-                        .qword
-                    else
-                        .fromSize(opt_child_abi_size) }),
-                    .u(0),
-                );
-                const is_non_null = try cg.tempInit(.bool, .{ .eflags = .ne });
-                try is_non_null.finish(inst, &.{un_op}, &ops, cg);
-            },
-            .is_err_ptr => if (use_old) try cg.airIsErrPtr(inst) else {
-                const un_op = air_datas[@intFromEnum(inst)].un_op;
-                const eu_ty = cg.typeOf(un_op).childType(zcu);
-                const eu_err_ty = eu_ty.errorUnionSet(zcu);
-                const eu_pl_ty = eu_ty.errorUnionPayload(zcu);
-                const eu_err_off: i32 = @intCast(codegen.errUnionErrorOffset(eu_pl_ty, zcu));
-                var ops = try cg.tempsFromOperands(inst, .{un_op});
-                try ops[0].toOffset(eu_err_off, cg);
-                while (try ops[0].toLea(cg)) {}
-                try cg.asmMemoryImmediate(
-                    .{ ._, .cmp },
-                    try ops[0].tracking(cg).short.deref().mem(cg, .{ .size = cg.memSize(eu_err_ty) }),
-                    .u(0),
-                );
-                const is_err = try cg.tempInit(.bool, .{ .eflags = .ne });
-                try is_err.finish(inst, &.{un_op}, &ops, cg);
-            },
-            .is_non_err_ptr => if (use_old) try cg.airIsNonErrPtr(inst) else {
-                const un_op = air_datas[@intFromEnum(inst)].un_op;
-                const eu_ty = cg.typeOf(un_op).childType(zcu);
-                const eu_err_ty = eu_ty.errorUnionSet(zcu);
-                const eu_pl_ty = eu_ty.errorUnionPayload(zcu);
-                const eu_err_off: i32 = @intCast(codegen.errUnionErrorOffset(eu_pl_ty, zcu));
-                var ops = try cg.tempsFromOperands(inst, .{un_op});
-                try ops[0].toOffset(eu_err_off, cg);
-                while (try ops[0].toLea(cg)) {}
-                try cg.asmMemoryImmediate(
-                    .{ ._, .cmp },
-                    try ops[0].tracking(cg).short.deref().mem(cg, .{ .size = cg.memSize(eu_err_ty) }),
-                    .u(0),
-                );
-                const is_non_err = try cg.tempInit(.bool, .{ .eflags = .e });
-                try is_non_err.finish(inst, &.{un_op}, &ops, cg);
-            },
-            .load => if (use_old) try cg.airLoad(inst) else fallback: {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                const val_ty = ty_op.ty.toType();
-                const ptr_ty = cg.typeOf(ty_op.operand);
-                const ptr_info = ptr_ty.ptrInfo(zcu);
-                if (ptr_info.packed_offset.host_size > 0 and
-                    (ptr_info.flags.vector_index == .none or val_ty.toIntern() == .bool_type))
-                    break :fallback try cg.airLoad(inst);
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                const res = try ops[0].load(val_ty, .{
-                    .disp = switch (ptr_info.flags.vector_index) {
-                        .none => 0,
-                        .runtime => unreachable,
-                        else => |vector_index| @intCast(val_ty.abiSize(zcu) * @intFromEnum(vector_index)),
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .cvtpd2, .dst0x, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                }, cg);
-                try res.finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .ret => try cg.airRet(inst, false),
-            .ret_safe => try cg.airRet(inst, true),
-            .ret_load => try cg.airRetLoad(inst),
-            .store, .store_safe => |air_tag| if (use_old) try cg.airStore(inst, switch (air_tag) {
-                else => unreachable,
-                .store => false,
-                .store_safe => true,
-            }) else fallback: {
-                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
-                const ptr_ty = cg.typeOf(bin_op.lhs);
-                const ptr_info = ptr_ty.ptrInfo(zcu);
-                const val_ty = cg.typeOf(bin_op.rhs);
-                if (ptr_info.packed_offset.host_size > 0 and
-                    (ptr_info.flags.vector_index == .none or val_ty.toIntern() == .bool_type))
-                    break :fallback try cg.airStore(inst, switch (air_tag) {
-                        else => unreachable,
-                        .store => false,
-                        .store_safe => true,
-                    });
-                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
-                try ops[0].store(&ops[1], .{
-                    .disp = switch (ptr_info.flags.vector_index) {
-                        .none => 0,
-                        .runtime => unreachable,
-                        else => |vector_index| @intCast(val_ty.abiSize(zcu) * @intFromEnum(vector_index)),
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .cvtpd2, .dst0x, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .safe = switch (air_tag) {
-                        else => unreachable,
-                        .store => false,
-                        .store_safe => true,
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .cvtpd2, .dst0x, .src0y, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                }, cg);
-                for (ops) |op| try op.die(cg);
-            },
-            .unreach => {},
-            .fptrunc => |air_tag| if (use_old) try cg.airFptrunc(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                var res: [1]Temp = undefined;
-                cg.select(&res, &.{ty_op.ty.toType()}, &ops, comptime &.{ .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .cvtpd2, .tmp1x, .memsia(.src0y, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_2_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .cvtpd2, .tmp1x, .memsia(.src0x, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0d, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .reg = .xmm0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, .v_, .cvtps2ph, .dst0q, .src0x, .rm(.{}), ._ },
+                        .{ ._, .v_dqa, .mov, .dst0x, .mem(.src0x), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .mem(.tmp0x), .dst0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .reg = .xmm0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._dqa, .mov, .dst0x, .mem(.src0x), ._, ._ },
+                        .{ ._, ._dqa, .mov, .mem(.tmp0x), .dst0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .reg = .xmm0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .mova, .dst0x, .mem(.src0x), ._, ._ },
+                        .{ ._, ._ps, .mova, .mem(.tmp0x), .dst0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .tmp4d, .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp1x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp4d, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .word } }},
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_x87, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .each = .{ .once = &.{
-                        .{ ._, .v_, .cvtps2ph, .dst0q, .src0x, .rm(.{}), ._ },
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .word } }},
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .v_, .cvtps2ph, .dst0x, .src0y, .rm(.{}), ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memsia(.src0t, .@"4", .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0d, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_x87, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncsfhf2" } } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -21944,21 +34792,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.mem},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0q, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .word } }},
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -21971,23 +34819,47 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_ps, .mova, .tmp1y, .memsia(.src0y, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memsia(.src0t, .@"2", .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfhf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncsfhf2" } } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfhf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -21999,7 +34871,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_ss, .mov, .tmp1x, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
                         .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
                         .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
@@ -22007,16 +34879,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncsfhf2" } } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfhf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22028,7 +34900,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ss, .mov, .tmp1x, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
                         .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
                         .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
@@ -22036,16 +34908,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncsfhf2" } } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfhf2" } } },
                         .{ .type = .f16, .kind = .{ .reg = .ax } },
                         .unused,
                         .unused,
@@ -22057,7 +34929,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ss, .mov, .tmp1x, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
                         .{ ._, .p_w, .extr, .tmp3d, .tmp1x, .ui(0), ._ },
                         .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp3w, ._, ._ },
@@ -22066,16 +34938,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncsfhf2" } } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfhf2" } } },
                         .{ .type = .f32, .kind = .mem },
                         .{ .type = .f16, .kind = .{ .reg = .ax } },
                         .unused,
@@ -22087,7 +34959,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ss, .mov, .tmp1x, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
                         .{ ._, ._ss, .mov, .mem(.tmp3d), .tmp1x, ._, ._ },
                         .{ ._, ._, .mov, .tmp4d, .mem(.tmp3d), ._, ._ },
@@ -22097,14 +34969,14 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncdfhf2" } } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfsf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22121,16 +34993,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncdfhf2" } } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfsf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22142,24 +35014,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_sd, .mov, .tmp1x, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memsia(.src0x, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, .v_ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncdfhf2" } } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfsf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22171,25 +35043,107 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._sd, .mov, .tmp1x, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memsia(.src0x, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfsf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memsia(.src0x, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfdf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfdf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memsia(.src0x, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .v_sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncdfhf2" } } },
-                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfdf2" } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -22200,27 +35154,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._sd, .mov, .tmp1x, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memsia(.src0x, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .p_w, .extr, .tmp3d, .tmp1x, .ui(0), ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp3w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncdfhf2" } } },
-                        .{ .type = .f32, .kind = .mem },
-                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfdf2" } } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -22230,60 +35183,186 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
-                        .{ ._, ._ps, .movl, .tmp1x, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memsia(.src0x, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._ss, .mov, .mem(.tmp3d), .tmp1x, ._, ._ },
-                        .{ ._, ._, .mov, .tmp4d, .mem(.tmp3d), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .sse, .x87, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .tbyte } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfxf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .reg = .st0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .xor, .dst0x, .dst0x, .dst0x, ._ },
-                        .{ ._, .v_ss, .cvtsd2, .dst0x, .dst0x, .src0q, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfxf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, .v_ss, .cvtsd2, .dst0x, .src0x, .src0q, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfxf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfxf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        ty_op.ty.toType().fmt(pt),
+                        cg.typeOf(ty_op.operand).fmt(pt),
+                        ops[0].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .fpext => |air_tag| if (use_old) try cg.airFpext(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{ty_op.ty.toType()}, &ops, comptime &.{ .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._ps, .xor, .dst0x, .dst0x, ._, ._ },
-                        .{ ._, ._ss, .cvtsd2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any },
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .yword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfsf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22293,57 +35372,178 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
                     .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .f_, .ld, .src0q, ._, ._, ._ },
-                        .{ ._, .f_p, .st, .dst0d, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .mova, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfsf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ },
+                        .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .v_ss, .mov, .memsia(.dst0d, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfsf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .memsia(.dst0d, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfsf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .memsia(.dst0d, .@"2", .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .dword } }},
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtpd2, .dst0x, .src0x, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_sd, .cvtss2, .dst0x, .dst0x, .dst0d, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .dword } }},
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._ps, .cvtpd2, .dst0x, .src0x, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_pd, .cvtps2, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .yword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .dword } }},
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtpd2, .dst0x, .src0y, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_pd, .cvtps2, .dst0y, .dst0x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }},
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .zword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -22353,24 +35553,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_ps, .cvtpd2, .tmp1x, .memsia(.src0y, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0y, .src0x, ._, ._ },
+                        .{ ._, .v_pd, .cvtps2, .tmp1y, .tmp0x, ._, ._ },
+                        .{ ._, .v_f128, .extract, .tmp0x, .tmp0y, .ui(1), ._ },
+                        .{ ._, .v_pd, .mova, .mem(.dst0y), .tmp1y, ._, ._ },
+                        .{ ._, .v_pd, .cvtps2, .tmp1y, .tmp0x, ._, ._ },
+                        .{ ._, .v_pd, .mova, .memd(.dst0y, 32), .tmp1y, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfdf2" } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -22379,26 +35580,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ps, .cvtpd2, .tmp1x, .memsia(.src0x, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .f16c, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .unused,
+                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -22409,24 +35606,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .f_, .ld, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, .f_p, .st, .memia(.dst0d, .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_pd, .cvtps2, .tmp2y, .tmp1x, ._, ._ },
+                        .{ ._, .v_f128, .extract, .tmp1x, .tmp1y, .ui(1), ._ },
+                        .{ ._, .v_pd, .mova, .memsia(.dst0y, .@"4", .tmp0, .add_unaligned_size), .tmp2y, ._, ._ },
+                        .{ ._, .v_pd, .cvtps2, .tmp2y, .tmp1x, ._, ._ },
+                        .{ ._, .v_pd, .mova, .memsiad(.dst0y, .@"4", .tmp0, .add_unaligned_size, 32), .tmp2y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfdf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22434,25 +35635,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .reg = .xmm0 }},
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, .v_dqa, .mov, .dst0x, .mem(.src0x), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .mem(.tmp0x), .dst0x, ._, ._ },
-                        .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ },
+                        .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .v_sd, .mov, .memsia(.dst0q, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfdf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22460,25 +35665,59 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .reg = .xmm0 }},
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._dqa, .mov, .dst0x, .mem(.src0x), ._, ._ },
-                        .{ ._, ._dqa, .mov, .mem(.tmp0x), .dst0x, ._, ._ },
-                        .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, ._sd, .mov, .memsia(.dst0q, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfdf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, ._ps, .movl, .memsia(.dst0q, .@"4", .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .f16c, .x87, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .f32, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f32, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -22486,56 +35725,50 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .reg = .xmm0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.{ .rc = .x87 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._ps, .mova, .dst0x, .mem(.src0x), ._, ._ },
-                        .{ ._, ._ps, .mova, .mem(.tmp0x), .dst0x, ._, ._ },
-                        .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src0q, ._, ._ },
+                        .{ ._, .v_ss, .mov, .mem(.tmp1d), .tmp0x, ._, ._ },
+                        .{ ._, .f_, .ld, .mem(.tmp1d), ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .sse, .x87, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .tbyte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfxf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
+                    .dst_temps = .{.{ .reg = .st0 }},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfxf2" } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -22545,28 +35778,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ },
+                        .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memsia(.dst0t, .@"8", .tmp0, .add_unaligned_size), ._, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
-                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfxf2" } } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -22575,29 +35809,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, .p_w, .extr, .tmp4d, .tmp1x, .ui(0), ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memsia(.dst0t, .@"8", .tmp0, .add_unaligned_size), ._, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__truncxfhf2" } } },
                         .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfxf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22606,26 +35840,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ps, .mova, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._ps, .mova, .mem(.tmp2x), .tmp1x, ._, ._ },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp1x, ._, ._ },
-                        .{ ._, ._, .mov, .tmp4d, .mem(.tmp2d), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memsia(.dst0t, .@"8", .tmp0, .add_unaligned_size), ._, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_x87, .none } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22635,22 +35869,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
-                        .{ ._, .f_p, .st, .dst0d, ._, ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22659,26 +35894,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .f_, .ld, .memsia(.src0t, .@"4", .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, .f_p, .st, .memia(.dst0d, .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ },
+                        .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_x87, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .unused,
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22687,47 +35924,92 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, .f_, .ld, .src0t, ._, ._, ._ },
-                        .{ ._, .f_p, .st, .dst0q, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhftf2" } } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .f_, .ld, .memsia(.src0t, .@"2", .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, .f_p, .st, .memia(.dst0q, .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, ._ps, .mova, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .xor, .dst0x, .dst0x, .dst0x, ._ },
+                        .{ ._, .v_sd, .cvtss2, .dst0x, .dst0x, .src0d, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_sd, .cvtss2, .dst0x, .src0x, .src0d, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .sse }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._pd, .xor, .dst0x, .dst0x, ._, ._ },
+                        .{ ._, ._sd, .cvtss2, .dst0x, .src0d, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfhf2" } } },
+                        .{ .type = .f32, .kind = .{ .reg = .st7 } },
                         .unused,
                         .unused,
                         .unused,
@@ -22737,23 +36019,58 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.mem},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        .{ ._, .f_, .ld, .src0d, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0q, ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .cvtps2, .dst0x, .src0q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .qword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._pd, .cvtps2, .dst0x, .src0q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .yword, .is = .qword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .cvtps2, .dst0y, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfhf2" } } },
+                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -22762,27 +36079,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_pd, .cvtps2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_pd, .mova, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfhf2" } } },
+                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -22791,28 +36106,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._pd, .cvtps2, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._pd, .mova, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfhf2" } } },
-                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -22820,57 +36133,74 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .p_w, .extr, .tmp3d, .tmp1x, .ui(0), ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp3w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memsia(.dst0q, .@"2", .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .tbyte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfhf2" } } },
-                        .{ .type = .f32, .kind = .mem },
-                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ps, .mova, .tmp1x, .memsia(.src0x, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._ss, .mov, .mem(.tmp3d), .tmp1x, ._, ._ },
-                        .{ ._, ._, .mov, .tmp4d, .mem(.tmp3d), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp4w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, .f_, .ld, .src0d, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f32, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memsia(.dst0t, .@"4", .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfsf2" } } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendsftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22887,16 +36217,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfsf2" } } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendsftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22907,25 +36237,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memsia(.src0x, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .v_ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfsf2" } } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendsftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22936,25 +36266,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memsia(.src0x, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfsf2" } } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendsftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22965,23 +36295,73 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ps, .mova, .tmp1x, .memsia(.src0x, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .mova, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
+                }, .{
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .f64, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .each = .{ .once = &.{
+                        .{ ._, .f_, .ld, .src0q, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .x87, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .st7 } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .f_, .ld, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memsia(.dst0t, .@"2", .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfdf2" } } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extenddftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -22998,16 +36378,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfdf2" } } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extenddftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -23018,25 +36398,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memsia(.src0x, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .v_sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfdf2" } } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extenddftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -23047,25 +36427,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memsia(.src0x, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfdf2" } } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extenddftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -23076,50 +36456,105 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ps, .mova, .tmp1x, .memsia(.src0x, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .movl, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .mova, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfxf2" } } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendxftf2" } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
+                    },
+                    .dst_temps = .{.{ .reg = .xmm0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, .v_dqa, .mov, .dst0x, .mem(.src0x), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .mem(.tmp0x), .dst0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendxftf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .reg = .st0 }},
+                    .dst_temps = .{.{ .reg = .xmm0 }},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._dqa, .mov, .dst0x, .mem(.src0x), ._, ._ },
+                        .{ ._, ._dqa, .mov, .mem(.tmp0x), .dst0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
+                    .extra_temps = .{
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendxftf2" } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .reg = .xmm0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .each = .{ .once = &.{
+                        .{ ._, ._ps, .mova, .dst0x, .mem(.src0x), ._, ._ },
+                        .{ ._, ._ps, .mova, .mem(.tmp0x), .dst0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfxf2" } } },
-                        .unused,
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendxftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -23129,27 +36564,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
-                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfxf2" } } },
-                        .unused,
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendxftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -23159,27 +36594,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
-                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
+                    .call_frame = .{ .size = 16, .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__trunctfxf2" } } },
-                        .unused,
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendxftf2" } } },
                         .unused,
                         .unused,
                         .unused,
@@ -23189,11 +36624,11 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
-                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._ps, .mova, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
@@ -23208,138 +36643,76 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                 };
                 try res[0].finish(inst, &.{ty_op.operand}, &ops, cg);
             },
-            .fpext => |air_tag| if (use_old) try cg.airFpext(inst) else {
+            .intcast => |air_tag| if (use_old) try cg.airIntCast(inst) else {
                 const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                const dst_ty = ty_op.ty.toType();
+                const src_ty = cg.typeOf(ty_op.operand);
                 var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
                 var res: [1]Temp = undefined;
-                cg.select(&res, &.{ty_op.ty.toType()}, &ops, comptime &.{ .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
+                cg.select(&res, &.{dst_ty}, &ops, if (dst_ty.scalarType(zcu).abiSize(zcu) <= src_ty.scalarType(zcu).abiSize(zcu)) comptime &.{ .{
+                    .dst_constraints = .{.{ .int = .dword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
-                    } },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .dst_constraints = .{.{ .int = .qword }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
-                    } },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .yword, .is = .dword } }},
+                    .dst_constraints = .{.{ .int = .byte }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .rc = .general_purpose }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                        .{ ._, ._, .mov, .dst0b, .mem(.src0b), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .dst_constraints = .{.{ .int = .word }},
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none } },
-                    },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfsf2" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0w, .mem(.src0w), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } }},
+                    .dst_constraints = .{.{ .int = .dword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_ps, .mova, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0d, .mem(.src0d), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .dst_constraints = .{.{ .int = .qword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfsf2" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ },
-                        .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .v_ss, .mov, .memsia(.dst0d, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0q, .mem(.src0q), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .dst_constraints = .{.{ .remainder_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfsf2" } } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -23348,180 +36721,109 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
-                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._ss, .mov, .memsia(.dst0d, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .ax } },
-                        .{ .type = .f32, .kind = .mem },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfsf2" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .byte } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
-                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
-                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
-                        .{ ._, ._ss, .mov, .memsia(.dst0d, .@"2", .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
-                        .{ ._, .v_sd, .cvtss2, .dst0x, .dst0x, .dst0d, ._ },
+                        .{ ._, .vp_b, .ackssw, .dst0x, .src0x, .dst0x, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
-                        .{ ._, .v_pd, .cvtps2, .dst0x, .dst0q, ._, ._ },
+                        .{ ._, .vp_b, .ackusw, .dst0x, .src0x, .dst0x, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .yword, .is = .qword } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
-                        .{ ._, .v_pd, .cvtps2, .dst0y, .dst0x, ._, ._ },
+                        .{ ._, .p_b, .ackssw, .dst0x, .dst0x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .zword, .is = .qword } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
-                    .dst_temps = .{.mem},
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtph2, .tmp0y, .src0x, ._, ._ },
-                        .{ ._, .v_pd, .cvtps2, .tmp1y, .tmp0x, ._, ._ },
-                        .{ ._, .v_f128, .extract, .tmp0x, .tmp0y, .ui(1), ._ },
-                        .{ ._, .v_pd, .mova, .mem(.dst0y), .tmp1y, ._, ._ },
-                        .{ ._, .v_pd, .cvtps2, .tmp1y, .tmp0x, ._, ._ },
-                        .{ ._, .v_pd, .mova, .memd(.dst0y, 32), .tmp1y, ._, ._ },
+                        .{ ._, .p_b, .ackusw, .dst0x, .dst0x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none } },
-                    },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfdf2" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        .{ ._, .vp_b, .ackssw, .dst0y, .src0y, .dst0y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .zword, .is = .qword } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_f32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_pd, .cvtps2, .tmp2y, .tmp1x, ._, ._ },
-                        .{ ._, .v_f128, .extract, .tmp1x, .tmp1y, .ui(1), ._ },
-                        .{ ._, .v_pd, .mova, .memsia(.dst0y, .@"4", .tmp0, .add_unaligned_size), .tmp2y, ._, ._ },
-                        .{ ._, .v_pd, .cvtps2, .tmp2y, .tmp1x, ._, ._ },
-                        .{ ._, .v_pd, .mova, .memsiad(.dst0y, .@"4", .tmp0, .add_unaligned_size, 32), .tmp2y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .vp_b, .ackusw, .dst0y, .src0y, .dst0y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfdf2" } } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -23530,28 +36832,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ },
-                        .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .v_sd, .mov, .memsia(.dst0q, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0w, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfdf2" } } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -23560,108 +36858,97 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
-                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._sd, .mov, .memsia(.dst0q, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0w, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .dword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .ax } },
-                        .{ .type = .f32, .kind = .mem },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfdf2" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_w, .ackssd, .dst0x, .src0x, .dst0x, ._ },
+                        .{ ._, .vp_b, .ackssw, .dst0x, .dst0x, .dst0x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .dword, .is = .byte } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
-                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
-                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
-                        .{ ._, ._ps, .movl, .memsia(.dst0q, .@"4", .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .vp_w, .ackusd, .dst0x, .src0x, .dst0x, ._ },
+                        .{ ._, .vp_b, .ackusw, .dst0x, .dst0x, .dst0x, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .f16c, .x87, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .dword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .f32, .kind = .{ .mut_rc = .{ .ref = .src0, .rc = .sse } } },
-                        .{ .type = .f32, .kind = .mem },
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_w, .ackssd, .dst0x, .dst0x, ._, ._ },
+                        .{ ._, .p_b, .ackssw, .dst0x, .dst0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .dword, .is = .byte } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .x87 }},
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src0q, ._, ._ },
-                        .{ ._, .v_ss, .mov, .mem(.tmp1d), .tmp0x, ._, ._ },
-                        .{ ._, .f_, .ld, .mem(.tmp1d), ._, ._, ._ },
-                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
+                        .{ ._, .p_w, .ackusd, .dst0x, .dst0x, ._, ._ },
+                        .{ ._, .p_b, .ackusw, .dst0x, .dst0x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfxf2" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_w, .ackssd, .dst0y, .src0y, .dst0y, ._ },
+                        .{ ._, .vp_b, .ackssw, .dst0y, .dst0y, .dst0y, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .byte } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .reg = .st0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        .{ ._, .vp_w, .ackusd, .dst0y, .src0y, .dst0y, ._ },
+                        .{ ._, .vp_b, .ackusw, .dst0y, .dst0y, .dst0y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfxf2" } } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -23670,29 +36957,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ },
-                        .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
-                        .{ ._, .f_p, .st, .memsia(.dst0t, .@"8", .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfxf2" } } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -23701,60 +36983,50 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
-                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
-                        .{ ._, .f_p, .st, .memsia(.dst0t, .@"8", .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .ax } },
-                        .{ .type = .f32, .kind = .mem },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhfxf2" } } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
-                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
-                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
-                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
-                        .{ ._, .f_p, .st, .memsia(.dst0t, .@"8", .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhftf2" } } },
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -23763,23 +37035,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhftf2" } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -23788,28 +37063,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ },
-                        .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhftf2" } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -23818,152 +37091,111 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
-                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f16, .kind = .{ .reg = .ax } },
-                        .{ .type = .f32, .kind = .mem },
-                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendhftf2" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
-                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
-                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
-                        .{ ._, ._ps, .mova, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
-                    .each = .{ .once = &.{
-                        .{ ._, .v_pd, .xor, .dst0x, .dst0x, .dst0x, ._ },
-                        .{ ._, .v_sd, .cvtss2, .dst0x, .dst0x, .src0d, ._ },
-                    } },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .qword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_sd, .cvtss2, .dst0x, .src0x, .src0d, ._ },
+                        .{ ._, .vp_w, .ackssd, .dst0x, .src0x, .dst0x, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .sse }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._pd, .xor, .dst0x, .dst0x, ._, ._ },
-                        .{ ._, ._sd, .cvtss2, .dst0x, .src0d, ._, ._ },
+                        .{ ._, .vp_w, .ackusd, .dst0x, .src0x, .dst0x, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .qword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
-                    .dst_temps = .{.mem},
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .f_, .ld, .src0d, ._, ._, ._ },
-                        .{ ._, .f_p, .st, .dst0q, ._, ._, ._ },
+                        .{ ._, .p_w, .ackssd, .dst0x, .dst0x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_pd, .cvtps2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .p_w, .ackusd, .dst0x, .dst0x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._pd, .cvtps2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .vp_w, .ackssd, .dst0y, .src0y, .dst0y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .yword, .is = .qword } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_pd, .cvtps2, .dst0y, .src0x, ._, ._ },
+                        .{ ._, .vp_w, .ackusd, .dst0y, .src0y, .dst0y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_f64, .kind = .{ .rc = .sse } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -23975,22 +37207,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_pd, .cvtps2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_pd, .mova, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_f64, .kind = .{ .rc = .sse } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -24002,22 +37233,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._pd, .cvtps2, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._pd, .mova, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -24029,46 +37259,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .f_, .ld, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, .f_p, .st, .memsia(.dst0q, .@"2", .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .tbyte } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .each = .{ .once = &.{
-                        .{ ._, .f_, .ld, .src0d, ._, ._, ._ },
-                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -24079,106 +37285,68 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .f_, .ld, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, .f_p, .st, .memsia(.dst0t, .@"4", .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none } },
-                    },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendsftf2" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
-                    } },
+                    .each = .{ .once = &.{} },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendsftf2" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .vp_d, .shuf, .dst0x, .src0x, .ui(0b10_00_10_00), ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .call_frame = .{ .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendsftf2" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .p_d, .shuf, .dst0x, .src0x, .ui(0b10_00_10_00), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendsftf2" } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -24187,25 +37355,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._ps, .mova, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -24215,20 +37381,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .f_, .ld, .src0q, ._, ._, ._ },
-                        .{ ._, .f_p, .st, .dst0t, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .x87, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .yword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .st7 } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -24240,24 +37409,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .f_, .ld, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, .f_p, .st, .memsia(.dst0t, .@"2", .tmp0, .add_unaligned_size), ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .{ .to_reg = .xmm0 }, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extenddftf2" } } },
-                        .unused,
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -24265,23 +37432,48 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extenddftf2" } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -24290,28 +37482,58 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2q, .memi(.src0q, .tmp1), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .xword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .yword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .yword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mut_mem, .none, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
+                }, .{
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.any_scalar_int},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extenddftf2" } } },
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -24319,28 +37541,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sa(.dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sa2(.src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
+                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.any_scalar_int},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extenddftf2" } } },
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -24348,80 +37571,75 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
-                        .{ ._, ._ps, .movl, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
-                        .{ ._, ._ps, .mova, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sa(.dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sa2(.src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .xword } }},
+                } } else comptime &.{ .{
+                    .src_constraints = .{ .{ .signed_int = .byte }, .any, .any },
+                    .dst_constraints = .{.{ .signed_int = .dword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendxftf2" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .movsx, .dst0d, .src0b, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .int = .byte }, .any, .any },
+                    .dst_constraints = .{.{ .int = .dword }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .reg = .xmm0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
                     .each = .{ .once = &.{
-                        .{ ._, .v_dqa, .mov, .dst0x, .mem(.src0x), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .mem(.tmp0x), .dst0x, ._, ._ },
-                        .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                        .{ ._, ._, .movzx, .dst0d, .src0b, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .byte }, .any, .any },
+                    .dst_constraints = .{.{ .signed_int = .qword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
-                    .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendxftf2" } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .movsx, .dst0q, .src0b, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .int = .byte }, .any, .any },
+                    .dst_constraints = .{.{ .int = .qword }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .reg = .xmm0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._dqa, .mov, .dst0x, .mem(.src0x), ._, ._ },
-                        .{ ._, ._dqa, .mov, .mem(.tmp0x), .dst0x, ._, ._ },
-                        .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                        .{ ._, ._, .movzx, .dst0d, .src0b, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .byte }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendxftf2" } } },
-                        .unused,
+                        .{ .type = .i64, .kind = .{ .reg = .rax } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -24429,26 +37647,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .reg = .xmm0 }},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._ps, .mova, .dst0x, .mem(.src0x), ._, ._ },
-                        .{ ._, ._ps, .mova, .mem(.tmp0x), .dst0x, ._, ._ },
-                        .{ ._, ._, .call, .tmp1d, ._, ._, ._ },
+                        .{ ._, ._, .movsx, .tmp0q, .src0b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .int = .byte }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendxftf2" } } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -24456,29 +37677,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .movzx, .tmp0d, .src0b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .signed_int = .byte }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendxftf2" } } },
+                        .{ .type = .i32, .kind = .{ .reg = .eax } },
+                        .{ .type = .usize, .kind = .{ .reg = .edi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -24486,29 +37705,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .mem(.tmp2x), .tmp1x, ._, ._ },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .movsx, .tmp0d, .src0b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sd, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp0d, .ui(31), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_4), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .int = .byte }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .call_frame = .{ .size = 16, .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
-                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
-                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__extendxftf2" } } },
+                        .{ .type = .u32, .kind = .{ .reg = .eax } },
+                        .{ .type = .usize, .kind = .{ .reg = .edi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -24516,95 +37733,71 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._ps, .mova, .mem(.tmp2x), .tmp1x, ._, ._ },
-                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
-                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .movzx, .tmp0d, .src0b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sd, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_4), ._, ._ },
+                        .{ ._, .@"rep _sd", .sto, ._, ._, ._, ._ },
                     } },
-                } }) catch |err| switch (err) {
-                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
-                        @tagName(air_tag),
-                        ty_op.ty.toType().fmt(pt),
-                        cg.typeOf(ty_op.operand).fmt(pt),
-                        ops[0].tracking(cg),
-                    }),
-                    else => |e| return e,
-                };
-                try res[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .intcast => |air_tag| if (use_old) try cg.airIntCast(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                const dst_ty = ty_op.ty.toType();
-                const src_ty = cg.typeOf(ty_op.operand);
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                var res: [1]Temp = undefined;
-                cg.select(&res, &.{dst_ty}, &ops, if (dst_ty.scalarType(zcu).abiSize(zcu) <= src_ty.scalarType(zcu).abiSize(zcu)) comptime &.{ .{
-                    .dst_constraints = .{.{ .int = .dword }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_gpr, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .dst_constraints = .{.{ .int = .qword }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_gpr, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
                 }, .{
-                    .dst_constraints = .{.{ .int = .byte }},
+                    .src_constraints = .{ .{ .signed_int = .word }, .any, .any },
+                    .dst_constraints = .{.{ .signed_int = .dword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0b, .mem(.src0b), ._, ._ },
+                        .{ ._, ._, .movsx, .dst0d, .src0w, ._, ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.{ .int = .word }},
+                    .src_constraints = .{ .{ .int = .word }, .any, .any },
+                    .dst_constraints = .{.{ .int = .dword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0w, .mem(.src0w), ._, ._ },
+                        .{ ._, ._, .movzx, .dst0d, .src0w, ._, ._ },
                     } },
                 }, .{
-                    .dst_constraints = .{.{ .int = .dword }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .word }, .any, .any },
+                    .dst_constraints = .{.{ .signed_int = .qword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0d, .mem(.src0d), ._, ._ },
+                        .{ ._, ._, .movsx, .dst0q, .src0w, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .int = .word }, .any, .any },
                     .dst_constraints = .{.{ .int = .qword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0q, .mem(.src0q), ._, ._ },
+                        .{ ._, ._, .movzx, .dst0d, .src0w, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .dst_constraints = .{.{ .remainder_int = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .signed_int = .word }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .i64, .kind = .{ .reg = .rax } },
                         .{ .type = .usize, .kind = .{ .reg = .rdi } },
                         .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
@@ -24615,109 +37808,55 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .movsx, .tmp0q, .src0w, ._, ._ },
                         .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .byte } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .byte } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_b, .ackssw, .dst0x, .src0x, .dst0x, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .byte } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_b, .ackusw, .dst0x, .src0x, .dst0x, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{
-                        .{ ._, .p_b, .ackssw, .dst0x, .dst0x, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .byte } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{
-                        .{ ._, .p_b, .ackusw, .dst0x, .dst0x, ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .byte } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .int = .word }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_b, .ackssw, .dst0y, .src0y, .dst0y, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .byte } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                    .extra_temps = .{
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .vp_b, .ackusw, .dst0y, .src0y, .dst0y, ._ },
+                        .{ ._, ._, .movzx, .tmp0d, .src0w, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .{ .signed_int = .word }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .i32, .kind = .{ .reg = .eax } },
+                        .{ .type = .usize, .kind = .{ .reg = .edi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -24728,22 +37867,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0w, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .movsx, .tmp0d, .src0w, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sd, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp0d, .ui(31), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_4), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .{ .int = .word }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .reg = .eax } },
+                        .{ .type = .usize, .kind = .{ .reg = .edi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -24754,95 +37895,106 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0w, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .movzx, .tmp0d, .src0w, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sd, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_4), ._, ._ },
+                        .{ ._, .@"rep _sd", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .dword, .is = .byte } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .dword }, .any, .any },
+                    .dst_constraints = .{.{ .signed_int = .qword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .ackssd, .dst0x, .src0x, .dst0x, ._ },
-                        .{ ._, .vp_b, .ackssw, .dst0x, .dst0x, .dst0x, ._ },
+                        .{ ._, ._d, .movsx, .dst0q, .src0d, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .dword, .is = .byte } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .int = .dword }, .any, .any },
+                    .dst_constraints = .{.{ .int = .qword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .ackusd, .dst0x, .src0x, .dst0x, ._ },
-                        .{ ._, .vp_b, .ackusw, .dst0x, .dst0x, .dst0x, ._ },
+                        .{ ._, ._, .mov, .dst0d, .src0d, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .dword, .is = .byte } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .dword }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{
-                        .{ ._, .p_w, .ackssd, .dst0x, .dst0x, ._, ._ },
-                        .{ ._, .p_b, .ackssw, .dst0x, .dst0x, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .dword, .is = .byte } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                    .extra_temps = .{
+                        .{ .type = .i64, .kind = .{ .reg = .rax } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .p_w, .ackusd, .dst0x, .dst0x, ._, ._ },
-                        .{ ._, .p_b, .ackusw, .dst0x, .dst0x, ._, ._ },
+                        .{ ._, ._d, .movsx, .tmp0q, .src0d, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .int = .dword }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_w, .ackssd, .dst0y, .src0y, .dst0y, ._ },
-                        .{ ._, .vp_b, .ackssw, .dst0y, .dst0y, .dst0y, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .byte } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                    .extra_temps = .{
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .ackusd, .dst0y, .src0y, .dst0y, ._ },
-                        .{ ._, .vp_b, .ackusw, .dst0y, .dst0y, .dst0y, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .{ .signed_int = .dword }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .i32, .kind = .{ .reg = .eax } },
+                        .{ .type = .usize, .kind = .{ .reg = .edi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -24853,22 +38005,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sd, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp0d, .ui(31), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_4), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .{ .int = .dword }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .reg = .eax } },
+                        .{ .type = .usize, .kind = .{ .reg = .edi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -24879,23 +38033,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sd, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_4), ._, ._ },
+                        .{ ._, .@"rep _sd", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .qword }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .i64, .kind = .{ .reg = .rax } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -24906,22 +38062,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0q, .src0q, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .int = .qword }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -24932,24 +38091,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0q, .src0q, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .i64, .kind = .{ .reg = .rax } },
                         .unused,
                         .unused,
                         .unused,
@@ -24959,25 +38119,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .src0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._sq, .lod, ._, ._, ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa2(.dst0, .src0, .add_delta_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .remainder_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
                         .unused,
                         .unused,
                         .unused,
@@ -24987,135 +38150,72 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa2(.dst0, .src0, .add_delta_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
                     } },
-                }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .word } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .word } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .qword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .ackssd, .dst0x, .src0x, .dst0x, ._ },
+                        .{ ._, .vp_w, .movsxb, .dst0x, .src0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .ackusd, .dst0x, .src0x, .dst0x, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .qword, .is = .word } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{
-                        .{ ._, .p_w, .ackssd, .dst0x, .dst0x, ._, ._ },
+                        .{ ._, .vp_w, .movzxb, .dst0x, .src0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .word } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{
-                        .{ ._, .p_w, .ackusd, .dst0x, .dst0x, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .ackssd, .dst0y, .src0y, .dst0y, ._ },
+                        .{ ._, .p_w, .movsxb, .dst0x, .src0q, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any },
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .ackusd, .dst0y, .src0y, .dst0y, ._ },
+                        .{ ._, .p_w, .movzxb, .dst0x, .src0q, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
                         .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .word, .is = .word } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -25124,51 +38224,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_b, .cmpgt, .tmp0x, .src0x, ._, ._ },
+                        .{ ._, .p_, .unpcklbw, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .word, .is = .word } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -25176,70 +38248,45 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklbw, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .dword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .dword } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .shuf, .dst0x, .src0x, .ui(0b10_00_10_00), ._ },
+                        .{ ._, .vp_w, .movsxb, .dst0y, .src0x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .qword, .is = .dword } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_d, .shuf, .dst0x, .src0x, .ui(0b10_00_10_00), ._ },
+                        .{ ._, .vp_w, .movzxb, .dst0y, .src0x, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -25251,21 +38298,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_w, .movsxb, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .yword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -25277,48 +38325,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_w, .movzxb, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .yword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
                         .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -25329,45 +38352,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_w, .movsxb, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
-                }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25378,56 +38379,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2q, .memi(.src0q, .tmp1), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_w, .movzxb, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .xword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .yword, .is = .yword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .yword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mut_mem, .none } },
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.any_scalar_int},
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25437,27 +38406,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sa(.dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sa2(.src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
-                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_w, .movsxb, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.any_scalar_int},
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25467,73 +38433,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sa(.dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sa2(.src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                    } },
-                } } else comptime &.{ .{
-                    .src_constraints = .{ .{ .signed_int = .byte }, .any },
-                    .dst_constraints = .{.{ .signed_int = .dword }},
-                    .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .movsx, .dst0d, .src0b, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .int = .byte }, .any },
-                    .dst_constraints = .{.{ .int = .dword }},
-                    .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .src0b, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .byte }, .any },
-                    .dst_constraints = .{.{ .signed_int = .qword }},
-                    .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .movsx, .dst0q, .src0b, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .int = .byte }, .any },
-                    .dst_constraints = .{.{ .int = .qword }},
-                    .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .src0b, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_w, .movzxb, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .byte }, .any },
-                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .i64, .kind = .{ .reg = .rax } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25544,25 +38460,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movsx, .tmp0q, .src0b, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0w, .@"2", .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .int = .byte }, .any },
-                    .dst_constraints = .{.{ .remainder_int = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25573,24 +38486,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .tmp0d, .src0b, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0w, .@"2", .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .byte }, .any },
-                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .i32, .kind = .{ .reg = .eax } },
-                        .{ .type = .usize, .kind = .{ .reg = .edi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25601,24 +38513,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movsx, .tmp0d, .src0b, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sd, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp0d, .ui(31), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_4), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0w, .@"2", .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .byte }, .any },
-                    .dst_constraints = .{.{ .remainder_int = .{ .of = .dword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .reg = .eax } },
-                        .{ .type = .usize, .kind = .{ .reg = .edi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25629,71 +38539,71 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .tmp0d, .src0b, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sd, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_4), ._, ._ },
-                        .{ ._, .@"rep _sd", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0w, .@"2", .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .word }, .any },
-                    .dst_constraints = .{.{ .signed_int = .dword }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movsx, .dst0d, .src0w, ._, ._ },
+                        .{ ._, .vp_d, .movsxb, .dst0x, .src0d, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .word }, .any },
-                    .dst_constraints = .{.{ .int = .dword }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .src0w, ._, ._ },
+                        .{ ._, .vp_d, .movzxb, .dst0x, .src0d, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .word }, .any },
-                    .dst_constraints = .{.{ .signed_int = .qword }},
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movsx, .dst0q, .src0w, ._, ._ },
+                        .{ ._, .p_d, .movsxb, .dst0x, .src0d, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .int = .word }, .any },
-                    .dst_constraints = .{.{ .int = .qword }},
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .src0w, ._, ._ },
+                        .{ ._, .p_d, .movzxb, .dst0x, .src0d, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .word }, .any },
-                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .i64, .kind = .{ .reg = .rax } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25701,28 +38611,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movsx, .tmp0q, .src0w, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_b, .cmpgt, .tmp0x, .src0x, ._, ._ },
+                        .{ ._, .p_, .unpcklbw, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklbw, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .int = .word }, .any },
-                    .dst_constraints = .{.{ .remainder_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25730,27 +38637,47 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .tmp0d, .src0w, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklbw, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .word }, .any },
-                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_d, .movsxb, .dst0y, .src0q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_d, .movzxb, .dst0y, .src0q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .i32, .kind = .{ .reg = .eax } },
-                        .{ .type = .usize, .kind = .{ .reg = .edi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25761,24 +38688,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movsx, .tmp0d, .src0w, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sd, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp0d, .ui(31), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_4), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_d, .movsxb, .tmp1y, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"4", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .word }, .any },
-                    .dst_constraints = .{.{ .remainder_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .reg = .eax } },
-                        .{ .type = .usize, .kind = .{ .reg = .edi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25789,49 +38715,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .tmp0d, .src0w, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sd, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_4), ._, ._ },
-                        .{ ._, .@"rep _sd", .sto, ._, ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .dword }, .any },
-                    .dst_constraints = .{.{ .signed_int = .qword }},
-                    .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._d, .movsx, .dst0q, .src0d, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .int = .dword }, .any },
-                    .dst_constraints = .{.{ .int = .qword }},
-                    .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .general_purpose } }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0d, .src0d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_d, .movzxb, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"4", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .dword }, .any },
-                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .i64, .kind = .{ .reg = .rax } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25842,25 +38742,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._d, .movsx, .tmp0q, .src0d, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_d, .movsxb, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .int = .dword }, .any },
-                    .dst_constraints = .{.{ .remainder_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25871,24 +38769,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_d, .movzxb, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .dword }, .any },
-                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .i32, .kind = .{ .reg = .eax } },
-                        .{ .type = .usize, .kind = .{ .reg = .edi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25899,24 +38796,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sd, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp0d, .ui(31), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_4), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_d, .movsxb, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .dword }, .any },
-                    .dst_constraints = .{.{ .remainder_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .reg = .eax } },
-                        .{ .type = .usize, .kind = .{ .reg = .edi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25927,25 +38823,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .src0d, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sd, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_4), ._, ._ },
-                        .{ ._, .@"rep _sd", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_d, .movzxb, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .qword }, .any },
-                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .i64, .kind = .{ .reg = .rax } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25956,25 +38850,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0q, .src0q, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .int = .qword }, .any },
-                    .dst_constraints = .{.{ .remainder_int = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -25985,25 +38876,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0q, .src0q, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp0d, .tmp0d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .{ .type = .i64, .kind = .{ .reg = .rax } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -26013,28 +38903,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .src0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._sq, .lod, ._, ._, ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa2(.dst0, .src0, .add_delta_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .remainder_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .remainder_int = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -26044,68 +38929,66 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.src0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa2(.dst0, .src0, .add_delta_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .word, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .movsxb, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .vp_q, .movsxb, .dst0x, .src0w, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .movzxb, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .vp_q, .movzxb, .dst0x, .src0w, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .word, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_w, .movsxb, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .p_q, .movsxb, .dst0x, .src0w, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_w, .movzxb, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .p_q, .movzxb, .dst0x, .src0w, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .word, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
@@ -26123,13 +39006,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
                         .{ ._, .p_b, .cmpgt, .tmp0x, .src0x, ._, ._ },
                         .{ ._, .p_, .unpcklbw, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklbw, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklwd, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
@@ -26146,41 +39033,43 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpcklbw, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .movsxb, .dst0y, .src0x, ._, ._ },
+                        .{ ._, .vp_q, .movsxb, .dst0y, .src0d, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .movzxb, .dst0y, .src0x, ._, ._ },
+                        .{ ._, .vp_q, .movzxb, .dst0y, .src0d, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -26193,21 +39082,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_w, .movsxb, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ .@"0:", .vp_q, .movsxb, .tmp1y, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"8", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .yword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -26220,21 +39109,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_w, .movzxb, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ .@"0:", .vp_q, .movzxb, .tmp1y, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"8", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -26247,21 +39136,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_w, .movsxb, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ .@"0:", .vp_q, .movsxb, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -26274,21 +39163,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_w, .movzxb, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ .@"0:", .vp_q, .movzxb, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -26301,21 +39190,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_w, .movsxb, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ .@"0:", .p_q, .movsxb, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -26328,21 +39217,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_w, .movzxb, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ .@"0:", .p_q, .movzxb, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -26355,20 +39244,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0w, .@"2", .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1q, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -26381,21 +39271,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0w, .@"2", .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1q, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
                         .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
                         .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -26409,19 +39299,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0w, .@"2", .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -26435,64 +39325,68 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0w, .@"2", .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
                         .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
                         .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .movsxb, .dst0x, .src0d, ._, ._ },
+                        .{ ._, .vp_q, .movsxb, .dst0x, .src0w, ._, ._ },
+                        .{ ._, .vp_q, .movsxd, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .movzxb, .dst0x, .src0d, ._, ._ },
+                        .{ ._, .vp_q, .movzxb, .dst0x, .src0w, ._, ._ },
+                        .{ ._, .vp_q, .movzxd, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_d, .movsxb, .dst0x, .src0d, ._, ._ },
+                        .{ ._, .p_q, .movsxb, .dst0x, .src0w, ._, ._ },
+                        .{ ._, .p_q, .movsxd, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_d, .movzxb, .dst0x, .src0d, ._, ._ },
+                        .{ ._, .p_q, .movzxb, .dst0x, .src0w, ._, ._ },
+                        .{ ._, .p_q, .movzxd, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
@@ -26512,13 +39406,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, .p_, .unpcklbw, .dst0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpcklbw, .tmp0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklwd, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpckldq, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklqdq, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
@@ -26536,43 +39434,83 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpcklbw, .dst0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklqdq, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.any_scalar_signed_int},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .i64, .kind = .{ .reg = .rax } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .movsxb, .dst0y, .src0q, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp2q, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp2q, .si(63), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.any_scalar_signed_int},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .i64, .kind = .{ .reg = .rax } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .movzxb, .dst0y, .src0q, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp2q, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp2q, .si(63), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.any_scalar_int},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -26583,23 +39521,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_d, .movsxb, .tmp1y, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"4", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp2d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.any_scalar_int},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -26610,21 +39552,144 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_d, .movzxb, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"4", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp2d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_d, .movsxw, .dst0x, .src0q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_d, .movzxw, .dst0x, .src0q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_d, .movsxw, .dst0x, .src0q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_d, .movzxw, .dst0x, .src0q, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_w, .cmpgt, .tmp0x, .src0x, ._, ._ },
+                        .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_d, .movsxw, .dst0y, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .dword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_d, .movzxw, .dst0y, .src0x, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -26637,21 +39702,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_d, .movsxb, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", .vp_d, .movsxw, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -26664,17 +39729,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_d, .movzxb, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", .vp_d, .movzxw, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any },
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -26691,17 +39756,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_d, .movsxb, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", .vp_d, .movsxw, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .byte } }, .any },
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -26718,21 +39783,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_d, .movzxb, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", .vp_d, .movzxw, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -26745,20 +39810,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", .p_d, .movsxw, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -26771,21 +39837,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", .p_d, .movzxw, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -26798,16 +39863,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0d, .@"2", .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -26824,68 +39889,68 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0d, .@"2", .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .word, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movsxb, .dst0x, .src0w, ._, ._ },
+                        .{ ._, .vp_q, .movsxw, .dst0x, .src0d, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movzxb, .dst0x, .src0w, ._, ._ },
+                        .{ ._, .vp_q, .movzxw, .dst0x, .src0d, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .word, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_q, .movsxb, .dst0x, .src0w, ._, ._ },
+                        .{ ._, .p_q, .movsxw, .dst0x, .src0d, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_q, .movzxb, .dst0x, .src0w, ._, ._ },
+                        .{ ._, .p_q, .movzxw, .dst0x, .src0d, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .word, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -26898,22 +39963,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_b, .cmpgt, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, .p_, .unpcklbw, .dst0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklbw, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_w, .cmpgt, .tmp0x, .src0x, ._, ._ },
                         .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpcklwd, .tmp0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -26926,40 +39989,39 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklbw, .dst0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movsxb, .dst0y, .src0d, ._, ._ },
+                        .{ ._, .vp_q, .movsxw, .dst0y, .src0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movzxb, .dst0y, .src0d, ._, ._ },
+                        .{ ._, .vp_q, .movzxw, .dst0y, .src0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -26976,17 +40038,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_q, .movsxb, .tmp1y, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"8", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", .vp_q, .movsxw, .tmp1y, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"4", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -27003,17 +40065,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_q, .movzxb, .tmp1y, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"8", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", .vp_q, .movzxw, .tmp1y, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"4", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -27030,17 +40092,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_q, .movsxb, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ .@"0:", .vp_q, .movsxw, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -27057,17 +40119,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_q, .movzxb, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ .@"0:", .vp_q, .movzxw, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -27084,17 +40146,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_q, .movsxb, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ .@"0:", .p_q, .movsxw, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -27111,44 +40173,17 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_q, .movzxb, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"8", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1q, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", .p_q, .movzxw, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -27164,48 +40199,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1q, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1q, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0q, .@"4", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -27218,72 +40227,72 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0q, .@"8", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0q, .@"4", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movsxb, .dst0x, .src0w, ._, ._ },
+                        .{ ._, .vp_q, .movsxw, .dst0x, .src0d, ._, ._ },
                         .{ ._, .vp_q, .movsxd, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movzxb, .dst0x, .src0w, ._, ._ },
+                        .{ ._, .vp_q, .movzxw, .dst0x, .src0d, ._, ._ },
                         .{ ._, .vp_q, .movzxd, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_q, .movsxb, .dst0x, .src0w, ._, ._ },
+                        .{ ._, .p_q, .movsxw, .dst0x, .src0d, ._, ._ },
                         .{ ._, .p_q, .movsxd, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_q, .movzxb, .dst0x, .src0w, ._, ._ },
+                        .{ ._, .p_q, .movzxw, .dst0x, .src0d, ._, ._ },
                         .{ ._, .p_q, .movzxd, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -27296,9 +40305,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_b, .cmpgt, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, .p_, .unpcklbw, .dst0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklbw, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_w, .cmpgt, .tmp0x, .src0x, ._, ._ },
                         .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpcklwd, .tmp0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
@@ -27307,13 +40314,13 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -27326,48 +40333,16 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklbw, .dst0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpcklqdq, .dst0x, .tmp0x, ._, ._ },
                     } },
-                }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.any_scalar_signed_int},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .i64, .kind = .{ .reg = .rax } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp2q, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp2q, .si(63), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.any_scalar_signed_int},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -27385,51 +40360,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp2q, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp2q, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._sq, .sto, ._, ._, ._, ._ },
                         .{ ._, ._r, .sa, .tmp2q, .si(63), ._, ._ },
                         .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
                         .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.any_scalar_int},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp2d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .byte, .is = .byte } }, .any },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
                     .dst_constraints = .{.any_scalar_int},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -27447,71 +40391,71 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp2d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp2d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._sq, .sto, ._, ._, ._, ._ },
                         .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
                         .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
                         .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .movsxw, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .vp_q, .movsxd, .dst0x, .src0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .movzxw, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .vp_q, .movzxd, .dst0x, .src0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_d, .movsxw, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .p_q, .movsxd, .dst0x, .src0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_d, .movzxw, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .p_q, .movzxd, .dst0x, .src0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -27524,18 +40468,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_w, .cmpgt, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_d, .cmpgt, .tmp0x, .src0x, ._, ._ },
+                        .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -27548,42 +40492,42 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .movsxw, .dst0y, .src0x, ._, ._ },
+                        .{ ._, .vp_q, .movsxd, .dst0y, .src0x, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .movzxw, .dst0y, .src0x, ._, ._ },
+                        .{ ._, .vp_q, .movzxd, .dst0y, .src0x, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -27596,21 +40540,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_d, .movsxw, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_q, .movsxd, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .yword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -27623,21 +40567,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_d, .movzxw, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_q, .movzxd, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -27650,21 +40594,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_d, .movsxw, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_q, .movsxd, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -27677,21 +40621,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_d, .movzxw, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_q, .movzxd, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -27704,21 +40648,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_d, .movsxw, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_q, .movsxd, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -27731,20 +40675,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_d, .movzxw, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_q, .movzxd, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -27757,20 +40702,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0d, .@"2", .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ .@"0:", ._, .movsxd, .tmp1q, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0q, .@"2", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -27783,68 +40729,72 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0d, .@"2", .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memsia(.dst0q, .@"2", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movsxw, .dst0x, .src0d, ._, ._ },
+                        .{ ._, .vp_q, .movsxd, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .vp_q, .movsxd, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movzxw, .dst0x, .src0d, ._, ._ },
+                        .{ ._, .vp_q, .movzxd, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .vp_q, .movzxd, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_q, .movsxw, .dst0x, .src0d, ._, ._ },
+                        .{ ._, .p_q, .movsxd, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .p_q, .movsxd, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_q, .movzxw, .dst0x, .src0d, ._, ._ },
+                        .{ ._, .p_q, .movzxd, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .p_q, .movzxd, .dst0x, .dst0q, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -27857,20 +40807,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_w, .cmpgt, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklwd, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_d, .cmpgt, .tmp0x, .src0x, ._, ._ },
                         .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpckldq, .tmp0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklqdq, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
+                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -27883,45 +40833,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
                         .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
                         .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, .p_, .unpcklqdq, .dst0x, .tmp0x, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movsxw, .dst0y, .src0q, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movzxw, .dst0y, .src0q, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.any_scalar_signed_int},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .i64, .kind = .{ .reg = .rax } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -27932,23 +40858,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_q, .movsxw, .tmp1y, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"4", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .movsxd, .tmp2q, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp2q, .si(63), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .yword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.any_scalar_int},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -27959,24 +40889,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_q, .movzxw, .tmp1y, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"4", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.any_scalar_signed_int},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .i64, .kind = .{ .reg = .rax } },
                         .unused,
                         .unused,
                         .unused,
@@ -27985,25 +40919,32 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_q, .movsxw, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-1, .src0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._sq, .lod, ._, ._, ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp4q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sa2(.dst0, .src0, .add_delta_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
+                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.any_scalar_signed_int},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .i64, .kind = .{ .reg = .rax } },
                         .unused,
                         .unused,
                         .unused,
@@ -28012,25 +40953,32 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_q, .movzxw, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-1, .src0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._sq, .lod, ._, ._, ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp4q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sa2(.dst0, .src0, .add_delta_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.any_scalar_int},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
                         .unused,
                         .unused,
                         .unused,
@@ -28039,319 +40987,374 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_q, .movsxw, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sa(.src0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sa2(.dst0, .src0, .add_delta_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
+                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.any_scalar_int},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sa(.src0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sa2(.dst0, .src0, .add_delta_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
+                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                    } },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        dst_ty.fmt(pt),
+                        src_ty.fmt(pt),
+                        ops[0].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .trunc => |air_tag| if (use_old) try cg.airTrunc(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{ty_op.ty.toType()}, &ops, comptime &.{ .{
+                    .src_constraints = .{ .{ .signed_int = .gpr }, .any, .any },
+                    .dst_constraints = .{.{ .exact_signed_int = 1 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .@"and", .dst0d, .si(1), ._, ._ },
+                        .{ ._, ._, .neg, .dst0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .any_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .exact_signed_int = 1 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .movzx, .dst0d, .mem(.src0b), ._, ._ },
+                        .{ ._, ._, .@"and", .dst0d, .si(1), ._, ._ },
+                        .{ ._, ._, .neg, .dst0d, ._, ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .int = .gpr }, .any, .any },
+                    .dst_constraints = .{.{ .exact_int = 8 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
+                }, .{
+                    .src_constraints = .{ .any_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .exact_signed_int = 8 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .movsx, .dst0d, .mem(.src0b), ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .any_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .exact_unsigned_int = 8 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .movzx, .dst0d, .mem(.src0b), ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .signed_int = .gpr }, .any, .any },
+                    .dst_constraints = .{.{ .signed_int = .byte }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._l, .sa, .dst0b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .dst0b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .unsigned_int = .gpr }, .any, .any },
+                    .dst_constraints = .{.{ .unsigned_int = .byte }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .@"and", .dst0b, .sa(.dst0, .add_umax), ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .any_int, .any, .any },
+                    .dst_constraints = .{.{ .unsigned_int = .byte }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .movzx, .dst0d, .mem(.src0b), ._, ._ },
+                        .{ ._, ._, .@"and", .dst0b, .sa(.dst0, .add_umax), ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .{ .int = .gpr }, .any, .any },
+                    .dst_constraints = .{.{ .exact_int = 16 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
+                }, .{
+                    .src_constraints = .{ .any_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .exact_signed_int = 16 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .movsx, .dst0d, .mem(.src0w), ._, ._ },
+                    } },
+                }, .{
+                    .src_constraints = .{ .any_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .exact_unsigned_int = 16 }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_q, .movzxw, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"4", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .movzx, .dst0d, .mem(.src0w), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .fast_imm16, null, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .gpr }, .any, .any },
+                    .dst_constraints = .{.{ .unsigned_int = .word }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.mem},
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1q, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0q, .@"4", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .@"and", .dst0w, .sa(.dst0, .add_umax), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .fast_imm16, null, null, null },
+                    .src_constraints = .{ .any_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .unsigned_int = .word }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.mem},
+                    .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0q, .@"4", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .movzx, .dst0d, .mem(.src0w), ._, ._ },
+                        .{ ._, ._, .@"and", .dst0w, .sa(.dst0, .add_umax), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .int = .gpr }, .any, .any },
+                    .dst_constraints = .{.{ .exact_int = 32 }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movsxw, .dst0x, .src0d, ._, ._ },
-                        .{ ._, .vp_q, .movsxd, .dst0x, .dst0q, ._, ._ },
-                    } },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{} },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .any_int, .any, .any },
+                    .dst_constraints = .{.{ .exact_int = 32 }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .rc = .general_purpose }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movzxw, .dst0x, .src0d, ._, ._ },
-                        .{ ._, .vp_q, .movzxd, .dst0x, .dst0q, ._, ._ },
+                        .{ ._, ._, .mov, .dst0d, .mem(.src0d), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .signed_int = .gpr }, .any, .any },
+                    .dst_constraints = .{.{ .signed_int = .dword }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .p_q, .movsxw, .dst0x, .src0d, ._, ._ },
-                        .{ ._, .p_q, .movsxd, .dst0x, .dst0q, ._, ._ },
+                        .{ ._, ._l, .sa, .dst0d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .dst0d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .any_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .signed_int = .dword }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .p_q, .movzxw, .dst0x, .src0d, ._, ._ },
-                        .{ ._, .p_q, .movzxd, .dst0x, .dst0q, ._, ._ },
+                        .{ ._, ._, .mov, .dst0d, .mem(.src0d), ._, ._ },
+                        .{ ._, ._l, .sa, .dst0d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .dst0d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .unsigned_int = .gpr }, .any, .any },
+                    .dst_constraints = .{.{ .unsigned_int = .dword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_w, .cmpgt, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklwd, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpckldq, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklqdq, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, ._, .@"and", .dst0d, .sa(.dst0, .add_umax), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .any_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .unsigned_int = .dword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklwd, .dst0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklqdq, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, ._, .mov, .dst0d, .mem(.src0d), ._, ._ },
+                        .{ ._, ._, .@"and", .dst0d, .sa(.dst0, .add_umax), ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.any_scalar_signed_int},
+                    .src_constraints = .{ .any_int, .any, .any },
+                    .dst_constraints = .{.{ .exact_int = 64 }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .i64, .kind = .{ .reg = .rax } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .dst0q, .mem(.src0q), ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .signed_int = .gpr }, .any, .any },
+                    .dst_constraints = .{.{ .signed_int = .qword }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.mem},
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp2q, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp2q, .si(63), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._l, .sa, .dst0q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .dst0q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.any_scalar_int},
+                    .src_constraints = .{ .any_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .signed_int = .qword }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.mem},
+                    .dst_temps = .{.{ .rc = .general_purpose }},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp2d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .dst0q, .mem(.src0q), ._, ._ },
+                        .{ ._, ._l, .sa, .dst0q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .dst0q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .bmi2, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .gpr }, .any, .any },
+                    .dst_constraints = .{.{ .unsigned_int = .qword }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movsxd, .dst0x, .src0q, ._, ._ },
+                        .{ ._, ._, .mov, .dst0d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ ._, ._, .bzhi, .dst0q, .src0q, .dst0q, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .bmi2, null, null },
+                    .src_constraints = .{ .any_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .unsigned_int = .qword }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movzxd, .dst0x, .src0q, ._, ._ },
+                        .{ ._, ._, .mov, .dst0d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ ._, ._, .bzhi, .dst0q, .mem(.src0q), .dst0q, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .unsigned_int = .gpr }, .any, .any },
+                    .dst_constraints = .{.{ .unsigned_int = .qword }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .mem, .none, .none } },
+                        .{ .src = .{ .to_gpr, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .p_q, .movsxd, .dst0x, .src0q, ._, ._ },
+                        .{ ._, ._, .mov, .dst0q, .ua(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .@"and", .dst0q, .src0q, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .unsigned_int = .qword }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .p_q, .movzxd, .dst0x, .src0q, ._, ._ },
+                        .{ ._, ._, .mov, .dst0q, .ua(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .@"and", .dst0q, .mem(.src0q), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_int, .any, .any },
+                    .dst_constraints = .{.{ .exact_remainder_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -28359,23 +41362,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
                     .each = .{ .once = &.{
-                        .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_d, .cmpgt, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .qword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -28383,46 +41387,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{
-                        .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movsxd, .dst0y, .src0x, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .yword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
-                    },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movzxd, .dst0y, .src0x, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0q, .memad(.src0q, .add_size, -16), ._, ._ },
+                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -28433,23 +41420,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_q, .movsxd, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0q, .memad(.src0q, .add_size, -16), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp0q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp0q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .yword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -28460,23 +41452,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_q, .movzxd, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0y, .@"2", .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0q, .memad(.src0q, .add_size, -8), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp0q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp0q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -28485,25 +41480,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_q, .movsxd, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .si(0), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .bmi2, null, null },
+                    .src_constraints = .{ .any_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -28514,23 +41508,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_q, .movzxd, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._, .bzhi, .tmp2q, .memad(.src0q, .add_size, -16), .tmp2q, ._ },
+                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp2q, ._, ._ },
+                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .si(0), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .bmi2, null, null },
+                    .src_constraints = .{ .any_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -28541,23 +41538,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_q, .movsxd, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._, .bzhi, .tmp2q, .memad(.src0q, .add_size, -8), .tmp2q, ._ },
+                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp2q, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -28568,23 +41567,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .p_q, .movzxd, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memsia(.dst0x, .@"2", .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0q, .ua(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp0q, .memad(.src0q, .add_size, -16), ._, ._ },
+                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ },
+                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .si(0), ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
+                    .src_constraints = .{ .any_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -28595,23 +41597,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsxd, .tmp1q, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0q, .@"2", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0q, .ua(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp0q, .memad(.src0q, .add_size, -8), ._, ._ },
+                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -28619,77 +41623,73 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memsia(.dst0q, .@"2", .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
-                    },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movsxd, .dst0x, .src0q, ._, ._ },
-                        .{ ._, .vp_q, .movsxd, .dst0x, .dst0q, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ },
+                        .{ ._, .vp_b, .add, .dst0x, .dst0x, .lea(.tmp0x), ._ },
+                        .{ ._, .vp_, .xor, .dst0x, .dst0x, .lea(.tmp0x), ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
-                    .each = .{ .once = &.{
-                        .{ ._, .vp_q, .movzxd, .dst0x, .src0q, ._, ._ },
-                        .{ ._, .vp_q, .movzxd, .dst0x, .dst0q, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_q, .movsxd, .dst0x, .src0q, ._, ._ },
-                        .{ ._, .p_q, .movsxd, .dst0x, .dst0q, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_q, .movzxd, .dst0x, .src0q, ._, ._ },
-                        .{ ._, .p_q, .movzxd, .dst0x, .dst0q, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ },
+                        .{ ._, .p_b, .add, .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, .p_, .xor, .dst0x, .lea(.tmp0x), ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -28700,22 +41700,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_d, .cmpgt, .tmp0x, .src0x, ._, ._ },
-                        .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpckldq, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklqdq, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_int = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -28726,86 +41723,72 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_, .xor, .tmp0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpckldq, .dst0x, .tmp0x, ._, ._ },
-                        .{ ._, .p_, .unpcklqdq, .dst0x, .tmp0x, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._ps, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.any_scalar_signed_int},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .i64, .kind = .{ .reg = .rax } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .movsxd, .tmp2q, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp2q, .si(63), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ },
+                        .{ ._, .vp_b, .add, .dst0y, .dst0y, .lea(.tmp0y), ._ },
+                        .{ ._, .vp_, .xor, .dst0y, .dst0y, .lea(.tmp0y), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.any_scalar_int},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .yword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1q, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp2d, .tmp2d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.any_scalar_signed_int},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .{ .type = .i64, .kind = .{ .reg = .rax } },
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -28813,32 +41796,31 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-1, .src0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._sq, .lod, ._, ._, ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp4q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sa2(.dst0, .src0, .add_delta_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
-                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp1y, .lea(.tmp0y), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp5), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2y, .lea(.tmp0y), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .@"and", .tmp3y, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .vp_b, .add, .tmp3y, .tmp3y, .tmp2y, ._ },
+                        .{ ._, .vp_, .xor, .tmp3y, .tmp3y, .tmp2y, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp3y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.any_scalar_signed_int},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .{ .type = .i64, .kind = .{ .reg = .rax } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -28847,33 +41829,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-1, .src0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._sq, .lod, ._, ._, ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp4q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sa2(.dst0, .src0, .add_delta_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
-                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp1y, .lea(.tmp0y), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .@"and", .tmp2y, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp2y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.any_scalar_int},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -28881,30 +41858,31 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sa(.src0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sa2(.dst0, .src0, .add_delta_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
-                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp5), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .@"and", .tmp3x, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .vp_b, .add, .tmp3x, .tmp3x, .tmp2x, ._ },
+                        .{ ._, .vp_, .xor, .tmp3x, .tmp3x, .tmp2x, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.any_scalar_int},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -28913,342 +41891,425 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sa(.src0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .xor, .tmp4d, .tmp4d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sa2(.dst0, .src0, .add_delta_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .sto, ._, ._, ._, ._ },
-                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
-                    } },
-                } }) catch |err| switch (err) {
-                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
-                        @tagName(air_tag),
-                        dst_ty.fmt(pt),
-                        src_ty.fmt(pt),
-                        ops[0].tracking(cg),
-                    }),
-                    else => |e| return e,
-                };
-                try res[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .trunc => |air_tag| if (use_old) try cg.airTrunc(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                var res: [1]Temp = undefined;
-                cg.select(&res, &.{ty_op.ty.toType()}, &ops, comptime &.{ .{
-                    .src_constraints = .{ .{ .signed_int = .gpr }, .any },
-                    .dst_constraints = .{.{ .exact_signed_int = 1 }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .@"and", .dst0d, .si(1), ._, ._ },
-                        .{ ._, ._, .neg, .dst0d, ._, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .any_signed_int, .any },
-                    .dst_constraints = .{.{ .exact_signed_int = 1 }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .mem(.src0b), ._, ._ },
-                        .{ ._, ._, .@"and", .dst0d, .si(1), ._, ._ },
-                        .{ ._, ._, .neg, .dst0d, ._, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .int = .gpr }, .any },
-                    .dst_constraints = .{.{ .exact_int = 8 }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .src_constraints = .{ .any_signed_int, .any },
-                    .dst_constraints = .{.{ .exact_signed_int = 8 }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .movsx, .dst0d, .mem(.src0b), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .@"and", .tmp2x, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp2x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_unsigned_int, .any },
-                    .dst_constraints = .{.{ .exact_unsigned_int = 8 }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .mem(.src0b), ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .signed_int = .gpr }, .any },
-                    .dst_constraints = .{.{ .signed_int = .byte }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._l, .sa, .dst0b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .dst0b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp5), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp3x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .@"and", .tmp3x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .p_b, .add, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .gpr }, .any },
-                    .dst_constraints = .{.{ .unsigned_int = .byte }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .@"and", .dst0b, .sa(.dst0, .add_umax), ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .any_int, .any },
-                    .dst_constraints = .{.{ .unsigned_int = .byte }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .mem(.src0b), ._, ._ },
-                        .{ ._, ._, .@"and", .dst0b, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .@"and", .tmp2x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp2x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .gpr }, .any },
-                    .dst_constraints = .{.{ .exact_int = 16 }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .src_constraints = .{ .any_signed_int, .any },
-                    .dst_constraints = .{.{ .exact_signed_int = 16 }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movsx, .dst0d, .mem(.src0w), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp1x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp2x, .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .@"and", .tmp2x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp2x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_unsigned_int, .any },
-                    .dst_constraints = .{.{ .exact_unsigned_int = 16 }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_signed_int = .{ .of = .byte, .is = 1 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .mem(.src0w), ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .fast_imm16, null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .gpr }, .any },
-                    .dst_constraints = .{.{ .unsigned_int = .word }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .@"and", .dst0w, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1b, .si(1), ._, ._ },
+                        .{ ._, ._, .neg, .tmp1b, ._, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .fast_imm16, null, null, null },
-                    .src_constraints = .{ .any_unsigned_int, .any },
-                    .dst_constraints = .{.{ .unsigned_int = .word }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_signed_int = .{ .of = .byte, .is = 1 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .mem(.src0w), ._, ._ },
-                        .{ ._, ._, .@"and", .dst0w, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1b, .si(1), ._, ._ },
+                        .{ ._, ._, .neg, .tmp1b, ._, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .gpr }, .any },
-                    .dst_constraints = .{.{ .exact_int = 32 }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
-                    },
-                    .dst_temps = .{.{ .ref = .src0 }},
-                    .each = .{ .once = &.{} },
-                }, .{
-                    .src_constraints = .{ .any_int, .any },
-                    .dst_constraints = .{.{ .exact_int = 32 }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0d, .mem(.src0d), ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .signed_int = .gpr }, .any },
-                    .dst_constraints = .{.{ .signed_int = .dword }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._l, .sa, .dst0d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .dst0d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_signed_int, .any },
-                    .dst_constraints = .{.{ .signed_int = .dword }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0d, .mem(.src0d), ._, ._ },
-                        .{ ._, ._l, .sa, .dst0d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .dst0d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .gpr }, .any },
-                    .dst_constraints = .{.{ .unsigned_int = .dword }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .@"and", .dst0d, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_unsigned_int, .any },
-                    .dst_constraints = .{.{ .unsigned_int = .dword }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0d, .mem(.src0d), ._, ._ },
-                        .{ ._, ._, .@"and", .dst0d, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_int, .any },
-                    .dst_constraints = .{.{ .exact_int = 64 }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0q, .mem(.src0q), ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .gpr }, .any },
-                    .dst_constraints = .{.{ .signed_int = .qword }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mut_gpr, .none } },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._l, .sa, .dst0q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .dst0q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_signed_int, .any },
-                    .dst_constraints = .{.{ .signed_int = .qword }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0q, .mem(.src0q), ._, ._ },
-                        .{ ._, ._l, .sa, .dst0q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .dst0q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0b, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .bmi2, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .gpr }, .any },
-                    .dst_constraints = .{.{ .unsigned_int = .qword }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ ._, ._, .bzhi, .dst0q, .src0q, .dst0q, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0b, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .bmi2, null, null },
-                    .src_constraints = .{ .any_unsigned_int, .any },
-                    .dst_constraints = .{.{ .unsigned_int = .qword }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ ._, ._, .bzhi, .dst0q, .mem(.src0q), .dst0q, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memsia(.src0b, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .gpr }, .any },
-                    .dst_constraints = .{.{ .unsigned_int = .qword }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .mem, .none } },
-                        .{ .src = .{ .to_gpr, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0q, .ua(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .@"and", .dst0q, .src0q, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memsia(.src0b, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_unsigned_int, .any },
-                    .dst_constraints = .{.{ .unsigned_int = .qword }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0q, .ua(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .@"and", .dst0q, .mem(.src0q), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0b, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_int, .any },
-                    .dst_constraints = .{.{ .exact_remainder_int = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29257,23 +42318,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0b, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_signed_int, .any },
-                    .dst_constraints = .{.{ .exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29284,26 +42348,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp0q, .memad(.src0q, .add_size, -16), ._, ._ },
-                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_signed_int, .any },
-                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29314,28 +42374,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp0q, .memad(.src0q, .add_size, -16), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp0q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp0q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp0q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_signed_int, .any },
-                    .dst_constraints = .{.{ .remainder_signed_int = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29346,26 +42401,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp0q, .memad(.src0q, .add_size, -8), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp0q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp0q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_unsigned_int, .any },
-                    .dst_constraints = .{.{ .exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29374,24 +42427,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .si(0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .bmi2, null, null },
-                    .src_constraints = .{ .any_unsigned_int, .any },
-                    .dst_constraints = .{.{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .bmi2, .slow_incdec, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -29402,26 +42458,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._, .bzhi, .tmp2q, .memad(.src0q, .add_size, -16), .tmp2q, ._ },
-                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp2q, ._, ._ },
-                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .si(0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .bmi2, null, null },
-                    .src_constraints = .{ .any_unsigned_int, .any },
-                    .dst_constraints = .{.{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .bmi2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -29432,25 +42486,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._, .bzhi, .tmp2q, .memad(.src0q, .add_size, -8), .tmp2q, ._ },
-                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp2q, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_unsigned_int, .any },
-                    .dst_constraints = .{.{ .remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29461,26 +42514,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-2, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp0q, .ua(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp0q, .memad(.src0q, .add_size, -16), ._, ._ },
-                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -16), .tmp0q, ._, ._ },
-                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .si(0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_unsigned_int, .any },
-                    .dst_constraints = .{.{ .remainder_unsigned_int = .{ .of = .xword, .is = .xword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29491,25 +42541,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sia(-1, .dst0, .add_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp0q, .ua(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp0q, .memad(.src0q, .add_size, -8), ._, ._ },
-                        .{ ._, ._, .mov, .memad(.dst0q, .add_size, -8), .tmp0q, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .byte } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29517,24 +42566,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ },
-                        .{ ._, .vp_b, .add, .dst0x, .dst0x, .lea(.tmp0x), ._ },
-                        .{ ._, .vp_, .xor, .dst0x, .dst0x, .lea(.tmp0x), ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -29543,22 +42592,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .byte } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29566,24 +42619,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ },
-                        .{ ._, .p_b, .add, .dst0x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, .p_, .xor, .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -29592,22 +42647,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .byte } }},
+                    .required_features = .{ .bmi2, .slow_incdec, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -29615,22 +42676,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, ._ps, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), .tmp1d, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .byte } }},
+                    .required_features = .{ .bmi2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -29638,24 +42704,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ },
-                        .{ ._, .vp_b, .add, .dst0y, .dst0y, .lea(.tmp0y), ._ },
-                        .{ ._, .vp_, .xor, .dst0y, .dst0y, .lea(.tmp0y), ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), .tmp1d, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .yword, .is = .byte } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -29664,25 +42732,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .byte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_32_i8, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29690,30 +42762,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp1y, .lea(.tmp0y), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp5), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp2y, .lea(.tmp0y), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_, .@"and", .tmp3y, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._ },
-                        .{ ._, .vp_b, .add, .tmp3y, .tmp3y, .tmp2y, ._ },
-                        .{ ._, .vp_, .xor, .tmp3y, .tmp3y, .tmp2y, ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp3y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .byte } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_32_u8, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29723,28 +42790,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp1y, .lea(.tmp0y), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_, .@"and", .tmp2y, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp2y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }},
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29752,30 +42818,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp5), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_, .@"and", .tmp3x, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._ },
-                        .{ ._, .vp_b, .add, .tmp3x, .tmp3x, .tmp2x, ._ },
-                        .{ ._, .vp_, .xor, .tmp3x, .tmp3x, .tmp2x, ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }},
+                    .required_features = .{ .slow_incdec, null, null, null },
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29785,28 +42847,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_, .@"and", .tmp2x, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp2x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp2b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp2b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .byte } }},
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_16_i8, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -29814,31 +42877,28 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp5), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, .p_, .@"and", .tmp3x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .p_b, .add, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, .p_, .xor, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp2b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp2b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }},
+                    .required_features = .{ .bmi2, .slow_incdec, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -29848,27 +42908,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ },
-                        .{ ._, .p_, .@"and", .tmp2x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp2x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp3d, .memi(.src0d, .tmp1), .tmp2d, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp3b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .byte } }},
+                    .required_features = .{ .bmi2, null, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_16_u8, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -29878,26 +42938,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
-                        .{ ._, ._ps, .mova, .tmp1x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ps, .mova, .tmp2x, .tmp1x, ._, ._ },
-                        .{ ._, ._ps, .@"and", .tmp2x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp2x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp3d, .memi(.src0d, .tmp1), .tmp2d, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp3b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_signed_int = .{ .of = .byte, .is = 1 } }},
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -29909,23 +42969,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1b, .si(1), ._, ._ },
-                        .{ ._, ._, .neg, .tmp1b, ._, ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp2b, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_signed_int = .{ .of = .byte, .is = 1 } }},
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -29937,23 +42998,36 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1b, .si(1), ._, ._ },
-                        .{ ._, ._, .neg, .tmp1b, ._, ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp2b, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
                         .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
                         .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_w, .sll, .dst0x, .src0x, .uia(16, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .vp_w, .sra, .dst0x, .dst0x, .uia(16, .dst0, .sub_bit_size), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -29962,26 +43036,33 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .p_w, .sll, .dst0x, .uia(16, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, .p_w, .sra, .dst0x, .uia(16, .dst0, .sub_bit_size), ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -29990,27 +43071,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -30019,25 +43094,33 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, ._ps, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .each = .{ .once = &.{
+                        .{ ._, .vp_w, .sll, .dst0y, .src0y, .uia(16, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .vp_w, .sra, .dst0y, .dst0y, .uia(16, .dst0, .sub_bit_size), ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .yword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -30046,26 +43129,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0b, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -30078,22 +43156,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0b, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .vp_w, .sll, .tmp1y, .tmp1y, .uia(16, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .vp_w, .sra, .tmp1y, .tmp1y, .uia(16, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
+                    .required_features = .{ .avx2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
                         .unused,
                         .unused,
                         .unused,
@@ -30103,22 +43184,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp1y, .lea(.tmp0y), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0b, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", .vp_, .@"and", .tmp2y, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp2y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -30131,24 +43214,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memsia(.src0b, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .vp_w, .sll, .tmp1x, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .vp_w, .sra, .tmp1x, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
                         .unused,
                         .unused,
                         .unused,
@@ -30158,24 +43242,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memsia(.src0b, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", .vp_, .@"and", .tmp2x, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp2x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -30188,24 +43272,56 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0b, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .p_w, .sll, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, .p_w, .sra, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .@"and", .tmp2x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp2x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -30214,23 +43330,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp1x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memsia(.src0b, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp2x, .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .@"and", .tmp2x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp2x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .word, .is = 16 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30243,20 +43360,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30269,21 +43386,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .fast_imm16, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30296,22 +43415,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1w, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30324,24 +43442,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1d, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .bmi2, .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .word, .is = 16 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -30353,23 +43469,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .bmi2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -30381,23 +43495,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .bmi2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30409,21 +43524,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), .tmp1d, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .fast_imm16, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30436,22 +43552,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1w, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30464,20 +43579,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1d, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .word, .is = 16 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30490,21 +43606,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30517,23 +43632,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .bmi2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30545,24 +43661,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .bmi2, .slow_incdec, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .fast_imm16, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -30574,23 +43689,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), .tmp1d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1w, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .bmi2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -30602,22 +43716,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), .tmp1d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1d, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .word, .is = 16 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30631,20 +43744,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30658,22 +43770,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1b, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp1b, ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
+                    .required_features = .{ .bmi2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30685,23 +43798,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), .tmp1d, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .byte, .is = 8 } }},
+                    .required_features = .{ .fast_imm16, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -30713,24 +43826,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1w, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -30742,25 +43853,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp2b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp2b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1d, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .word, .is = 16 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30774,25 +43882,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp2b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp2b, .uia(8, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
                         .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .bmi2, .slow_incdec, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -30804,25 +43909,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp3d, .memi(.src0d, .tmp1), .tmp2d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp3b, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp2d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp2d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
                         .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .bmi2, null, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30836,22 +43942,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
                         .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_bit_size), ._, ._ },
                         .{ .@"0:", ._, .bzhi, .tmp3d, .memi(.src0d, .tmp1), .tmp2d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp3b, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp3w, ._, ._ },
                         .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .slow_incdec, null, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .required_features = .{ .fast_imm16, null, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30865,22 +43971,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp2b, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .@"and", .tmp2w, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
                         .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(1), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .byte, .is = .byte } }},
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -30894,30 +44000,30 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp2b, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0b, .tmp0, .add_unaligned_size), .tmp2b, ._, ._ },
+                        .{ ._, ._, .@"and", .tmp2d, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
                         .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._c, .in, .tmp0p, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .sll, .dst0x, .src0x, .uia(16, .dst0, .sub_bit_size), ._ },
-                        .{ ._, .vp_w, .sra, .dst0x, .dst0x, .uia(16, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .vp_d, .sll, .dst0x, .src0x, .uia(32, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .vp_d, .sra, .dst0x, .dst0x, .uia(32, .dst0, .sub_bit_size), ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -30937,22 +44043,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_w, .sll, .dst0x, .uia(16, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, .p_w, .sra, .dst0x, .uia(16, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, .p_d, .sll, .dst0x, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, .p_d, .sra, .dst0x, .uia(32, .dst0, .sub_bit_size), ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -30972,10 +44078,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -30995,22 +44101,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .yword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_w, .sll, .dst0y, .src0y, .uia(16, .dst0, .sub_bit_size), ._ },
-                        .{ ._, .vp_w, .sra, .dst0y, .dst0y, .uia(16, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .vp_d, .sll, .dst0y, .src0y, .uia(32, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .vp_d, .sra, .dst0y, .dst0y, .uia(32, .dst0, .sub_bit_size), ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .yword, .is = .word } }},
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .yword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -31030,14 +44136,14 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_i16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -31051,23 +44157,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .vp_w, .sll, .tmp1y, .tmp1y, .uia(16, .dst0, .sub_bit_size), ._ },
-                        .{ ._, .vp_w, .sra, .tmp1y, .tmp1y, .uia(16, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .vp_d, .sll, .tmp1y, .tmp1y, .uia(16, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .vp_d, .sra, .tmp1y, .tmp1y, .uia(16, .dst0, .sub_bit_size), ._ },
                         .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_16_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
                         .unused,
                         .unused,
@@ -31088,14 +44194,14 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -31109,23 +44215,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .vp_w, .sll, .tmp1x, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._ },
-                        .{ ._, .vp_w, .sra, .tmp1x, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .vp_d, .sll, .tmp1x, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._ },
+                        .{ ._, .vp_d, .sra, .tmp1x, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._ },
                         .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
                         .unused,
                         .unused,
@@ -31146,14 +44252,14 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_i16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
                         .unused,
                         .unused,
                         .unused,
@@ -31167,23 +44273,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .p_w, .sll, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, .p_w, .sra, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, .p_d, .sll, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, .p_d, .sra, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._, ._ },
                         .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
                         .unused,
                         .unused,
@@ -31205,15 +44311,15 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_8_u16, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
                         .unused,
                         .unused,
@@ -31234,14 +44340,14 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .word, .is = 16 } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .dword, .is = 32 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31254,20 +44360,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31280,24 +44386,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movsx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
                         .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .fast_imm16, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .bmi2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31309,21 +44415,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1w, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp2d, .memia(.src0d, .tmp0, .add_unaligned_size), .tmp1d, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31336,21 +44442,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .@"and", .tmp1d, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .word, .is = 16 } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .dword, .is = 32 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31364,19 +44470,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31392,21 +44498,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
                         .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .bmi2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31420,47 +44526,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
                         .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), .tmp1d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .fast_imm16, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1w, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31475,45 +44553,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .@"and", .tmp1d, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .word, .is = 16 } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .dword, .is = 32 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31527,23 +44579,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .bmi2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -31555,23 +44604,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .fast_imm16, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .bmi2, null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31583,21 +44633,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1w, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31612,19 +44662,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .@"and", .tmp1d, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .word, .is = 16 } }},
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .yword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .dword, .is = 32 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31638,19 +44688,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .yword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31666,21 +44716,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
                         .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .bmi2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .yword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31694,47 +44744,19 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
                         .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), .tmp1d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .fast_imm16, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
-                    },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                    },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1w, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .yword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31749,20 +44771,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
                         .{ ._, ._, .@"and", .tmp1d, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .word, .is = 16 } }},
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .dword, .is = 32 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31776,21 +44798,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
                         .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31806,23 +44828,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
                         .{ ._, ._l, .sa, .tmp2d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
                         .{ ._, ._r, .sa, .tmp2d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
                         .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .bmi2, null, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31836,22 +44858,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
                         .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_bit_size), ._, ._ },
                         .{ .@"0:", ._, .bzhi, .tmp3d, .memi(.src0d, .tmp1), .tmp2d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp3w, ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp3d, ._, ._ },
                         .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .fast_imm16, null, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -31865,22 +44886,23 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
                         .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp2w, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
+                        .{ ._, ._, .@"and", .tmp2d, .sa(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
                         .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .word, .is = .word } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u16, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -31888,36 +44910,20 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp2d, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp2w, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
-                    },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .sll, .dst0x, .src0x, .uia(32, .dst0, .sub_bit_size), ._ },
-                        .{ ._, .vp_d, .sra, .dst0x, .dst0x, .uia(32, .dst0, .sub_bit_size), ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ },
+                        .{ ._, .vp_q, .add, .dst0x, .dst0x, .lea(.tmp0x), ._ },
+                        .{ ._, .vp_, .xor, .dst0x, .dst0x, .lea(.tmp0x), ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -31937,22 +44943,36 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
                     .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, .p_d, .sll, .dst0x, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, .p_d, .sra, .dst0x, .uia(32, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ },
+                        .{ ._, .p_q, .add, .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, .p_, .xor, .dst0x, .lea(.tmp0x), ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -31972,10 +44992,10 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mut_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -31995,22 +45015,36 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                     },
                     .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, .vp_d, .sll, .dst0y, .src0y, .uia(32, .dst0, .sub_bit_size), ._ },
-                        .{ ._, .vp_d, .sra, .dst0y, .dst0y, .uia(32, .dst0, .sub_bit_size), ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
+                        .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ },
+                        .{ ._, .vp_q, .add, .dst0y, .dst0y, .lea(.tmp0y), ._ },
+                        .{ ._, .vp_, .xor, .dst0y, .dst0y, .lea(.tmp0y), ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .yword, .is = .dword } }},
+                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_sse, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
@@ -32030,18 +45064,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_i32, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -32049,25 +45083,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp1y, .lea(.tmp0y), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp5), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2y, .lea(.tmp0y), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .vp_d, .sll, .tmp1y, .tmp1y, .uia(16, .dst0, .sub_bit_size), ._ },
-                        .{ ._, .vp_d, .sra, .tmp1y, .tmp1y, .uia(16, .dst0, .sub_bit_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ .@"0:", .vp_, .@"and", .tmp3y, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .vp_q, .add, .tmp3y, .tmp3y, .tmp2y, ._ },
+                        .{ ._, .vp_, .xor, .tmp3y, .tmp3y, .tmp2y, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp3y, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_8_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
                         .unused,
                         .unused,
@@ -32088,18 +45126,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -32107,25 +45145,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp5), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .vp_d, .sll, .tmp1x, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._ },
-                        .{ ._, .vp_d, .sra, .tmp1x, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ .@"0:", .vp_, .@"and", .tmp3x, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .vp_q, .add, .tmp3x, .tmp3x, .tmp2x, ._ },
+                        .{ ._, .vp_, .xor, .tmp3x, .tmp3x, .tmp2x, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
                         .unused,
                         .unused,
@@ -32146,18 +45188,18 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_i32, .kind = .{ .rc = .sse } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
+                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
                         .unused,
                         .unused,
                         .unused,
@@ -32165,25 +45207,30 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp5), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ },
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .p_d, .sll, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, .p_d, .sra, .tmp1x, .uia(16, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp3x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .@"and", .tmp3x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .p_q, .add, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp3x, .tmp2x, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
                         .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
                         .unused,
                         .unused,
@@ -32205,15 +45252,15 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     } },
                 }, .{
                     .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .dword } }},
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_u32, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
+                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
                         .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
                         .unused,
                         .unused,
@@ -32234,14 +45281,15 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .dword, .is = 32 } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .qword, .is = 64 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32254,20 +45302,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32280,24 +45329,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .bmi2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", .bmi2, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32310,20 +45359,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp2d, .memia(.src0d, .tmp0, .add_unaligned_size), .tmp1d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp2q, .memia(.src0q, .tmp0, .add_unaligned_size), .tmp1q, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32336,21 +45386,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1d, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .ua(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1q, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .dword, .is = 32 } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .qword, .is = 64 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32363,20 +45414,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32389,24 +45441,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .bmi2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", .bmi2, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32419,20 +45471,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), .tmp1d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp2q, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), .tmp1q, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32445,21 +45498,22 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1d, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .ua(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1q, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .dword, .is = 32 } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .yword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .qword, .is = 64 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32472,20 +45526,21 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .yword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32498,24 +45553,24 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp1q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp1q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .bmi2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", .bmi2, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .yword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32528,25 +45583,83 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
                         .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), .tmp1d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp2q, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), .tmp1q, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .yword } }, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp1q, .ua(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp1q, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .qword, .is = 64 } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2q, .memi(.src0q, .tmp1), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
+                        .unused,
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                     },
@@ -32554,23 +45667,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1d, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2q, .memi(.src0q, .tmp1), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp2q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp2q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .yword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .dword, .is = 32 } }},
+                    .required_features = .{ .@"64bit", .bmi2, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32581,21 +45698,25 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_bit_size), ._, ._ },
+                        .{ .@"0:", ._, .bzhi, .tmp3q, .memi(.src0q, .tmp1), .tmp2q, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp3q, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .yword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
                         .unused,
                         .unused,
                         .unused,
@@ -32607,25 +45728,26 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
                         .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp2q, .ua(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp2q, .memi(.src0q, .tmp1), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
+                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .bmi2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .yword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_exact_remainder_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -32635,24 +45757,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp2d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), .tmp1d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sa(.dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sa2(.src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
+                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .yword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_exact_remainder_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -32662,24 +45787,27 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1d, .memsia(.src0d, .@"8", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1d, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1d, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sa(.dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sa2(.src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .dword, .is = 32 } }},
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -32689,25 +45817,32 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp3q, .lea(.tmp1q), ._, ._ },
+                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp3q, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .tmp3q, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
+                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
+                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -32717,28 +45852,32 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp2d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp2d, .uia(32, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp3q, .lea(.tmp1q), ._, ._ },
+                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp3q, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .tmp3q, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
+                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .bmi2, null, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_remainder_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -32748,26 +45887,34 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp3d, .memi(.src0d, .tmp1), .tmp2d, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp3d, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp3q, .lea(.tmp1q), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp3q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp3q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp3q, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .tmp3q, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
+                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
+                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .dword, .is = .dword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_remainder_signed_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .unused,
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -32777,199 +45924,304 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2d, .memi(.src0d, .tmp1), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp2d, .sa(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp2d, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp3q, .lea(.tmp1q), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp3q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp3q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp3q, ._, ._ },
+                        .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ },
+                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .tmp3q, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
+                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_remainder_signed_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
-                        .unused,
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ },
-                        .{ ._, .vp_q, .add, .dst0x, .dst0x, .lea(.tmp0x), ._ },
-                        .{ ._, .vp_, .xor, .dst0x, .dst0x, .lea(.tmp0x), ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp4q, .lea(.tmp1q), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp4q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp4q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
+                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_signed_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_remainder_signed_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .vp_, .@"and", .dst0x, .src0x, .lea(.tmp0x), ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp4q, .lea(.tmp1q), ._, ._ },
+                        .{ ._, ._l, .sa, .tmp4q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._r, .sa, .tmp4q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
-                        .unused,
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ },
-                        .{ ._, .p_q, .add, .dst0x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, .p_, .xor, .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sa2(.src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
+                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .p_, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sa2(.src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .ref = .src0 }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, ._ps, .@"and", .dst0x, .lea(.tmp0x), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sa(.dst0, .add_bit_size_rem_64), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .bzhi, .tmp4q, .lea(.tmp1q), .tmp3q, ._ },
+                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp4q, ._, ._ },
+                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .si(0), ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
+                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
+                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_signed_int = .{ .of = .yword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .bmi2, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
-                        .unused,
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp2), ._, ._ },
-                        .{ ._, .vp_q, .add, .dst0y, .dst0y, .lea(.tmp0y), ._ },
-                        .{ ._, .vp_, .xor, .dst0y, .dst0y, .lea(.tmp0y), ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sa(.dst0, .add_bit_size_rem_64), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .bzhi, .tmp4q, .lea(.tmp1q), .tmp3q, ._ },
+                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp4q, ._, ._ },
+                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .si(0), ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
+                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .scalar_unsigned_int = .{ .of = .yword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_sse, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .usize, .kind = .{ .rc = .general_purpose } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0 } } },
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
                         .unused,
                         .unused,
                         .unused,
+                    },
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sa(.dst0, .add_bit_size_rem_64), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .bzhi, .tmp5q, .lea(.tmp1q), .tmp3q, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
+                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", .bmi2, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_mem, .none, .none } },
+                    },
+                    .extra_temps = .{
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
+                    .dst_temps = .{.mem},
+                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp1), ._, ._ },
-                        .{ ._, .vp_, .@"and", .dst0y, .src0y, .lea(.tmp0y), ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .mov, .tmp3d, .sa(.dst0, .add_bit_size_rem_64), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .bzhi, .tmp5q, .lea(.tmp1q), .tmp3q, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_i64, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -32977,30 +46229,32 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp1y, .lea(.tmp0y), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp5), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp2y, .lea(.tmp0y), ._, ._ },
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_, .@"and", .tmp3y, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._ },
-                        .{ ._, .vp_q, .add, .tmp3y, .tmp3y, .tmp2y, ._ },
-                        .{ ._, .vp_, .xor, .tmp3y, .tmp3y, .tmp2y, ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp3y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp3q, .ua(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp3q, .lea(.tmp1q), ._, ._ },
+                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp3q, ._, ._ },
+                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .si(0), ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
+                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
+                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_4_u64, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -33010,28 +46264,34 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp1y, .lea(.tmp0y), ._, ._ },
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_, .@"and", .tmp2y, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp2y, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp3q, .ua(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp3q, .lea(.tmp1q), ._, ._ },
+                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp3q, ._, ._ },
+                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .si(0), ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
+                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -33039,31 +46299,32 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp5), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_, .@"and", .tmp3x, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._ },
-                        .{ ._, .vp_q, .add, .tmp3x, .tmp3x, .tmp2x, ._ },
-                        .{ ._, .vp_, .xor, .tmp3x, .tmp3x, .tmp2x, ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp4q, .ua(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp4q, .lea(.tmp1q), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
+                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .src_constraints = .{ .any_scalar_unsigned_int, .any, .any },
+                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .none, .none } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .unused,
+                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
+                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
+                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
                         .unused,
                         .unused,
                         .unused,
@@ -33072,118 +46333,456 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                     .dst_temps = .{.mem},
                     .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
-                        .{ ._, .v_dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", .vp_, .@"and", .tmp2x, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._ },
-                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp2x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
+                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
+                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
+                        .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ },
+                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
+                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp4q, .ua(.dst0, .add_umax), ._, ._ },
+                        .{ ._, ._, .@"and", .tmp4q, .lea(.tmp1q), ._, ._ },
+                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
+                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
+                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                    } },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                        @tagName(air_tag),
+                        ty_op.ty.toType().fmt(pt),
+                        cg.typeOf(ty_op.operand).fmt(pt),
+                        ops[0].tracking(cg),
+                    }),
+                    else => |e| return e,
+                };
+                try res[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .optional_payload_ptr => if (use_old) try cg.airOptionalPayloadPtr(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                const ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .optional_payload_ptr_set => if (use_old) try cg.airOptionalPayloadPtrSet(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                const opt_ty = cg.typeOf(ty_op.operand).childType(zcu);
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                if (!opt_ty.optionalReprIsPayload(zcu)) {
+                    const opt_child_ty = opt_ty.optionalChild(zcu);
+                    const opt_child_abi_size: i32 = @intCast(opt_child_ty.abiSize(zcu));
+                    try ops[0].toOffset(opt_child_abi_size, cg);
+                    var has_value = try cg.tempInit(.bool, .{ .immediate = 1 });
+                    try ops[0].store(&has_value, .{}, cg);
+                    try has_value.die(cg);
+                    try ops[0].toOffset(-opt_child_abi_size, cg);
+                }
+                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .unwrap_errunion_payload_ptr => if (use_old) try cg.airUnwrapErrUnionPayloadPtr(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                const eu_ty = cg.typeOf(ty_op.operand).childType(zcu);
+                const eu_pl_ty = eu_ty.errorUnionPayload(zcu);
+                const eu_pl_off: i32 = @intCast(codegen.errUnionPayloadOffset(eu_pl_ty, zcu));
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                try ops[0].toOffset(eu_pl_off, cg);
+                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .unwrap_errunion_err_ptr => if (use_old) try cg.airUnwrapErrUnionErrPtr(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                const eu_ty = cg.typeOf(ty_op.operand).childType(zcu);
+                const eu_pl_ty = eu_ty.errorUnionPayload(zcu);
+                const eu_err_off: i32 = @intCast(codegen.errUnionErrorOffset(eu_pl_ty, zcu));
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                try ops[0].toOffset(eu_err_off, cg);
+                const err = try ops[0].load(eu_ty.errorUnionSet(zcu), .{}, cg);
+                try err.finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .errunion_payload_ptr_set => if (use_old) try cg.airErrUnionPayloadPtrSet(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                const eu_ty = cg.typeOf(ty_op.operand).childType(zcu);
+                const eu_err_ty = eu_ty.errorUnionSet(zcu);
+                const eu_pl_ty = eu_ty.errorUnionPayload(zcu);
+                const eu_err_off: i32 = @intCast(codegen.errUnionErrorOffset(eu_pl_ty, zcu));
+                const eu_pl_off: i32 = @intCast(codegen.errUnionPayloadOffset(eu_pl_ty, zcu));
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                try ops[0].toOffset(eu_err_off, cg);
+                var no_err = try cg.tempInit(eu_err_ty, .{ .immediate = 0 });
+                try ops[0].store(&no_err, .{}, cg);
+                try no_err.die(cg);
+                try ops[0].toOffset(eu_pl_off - eu_err_off, cg);
+                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .struct_field_ptr => if (use_old) try cg.airStructFieldPtr(inst) else {
+                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
+                const extra = cg.air.extraData(Air.StructField, ty_pl.payload).data;
+                var ops = try cg.tempsFromOperands(inst, .{extra.struct_operand});
+                try ops[0].toOffset(cg.fieldOffset(
+                    cg.typeOf(extra.struct_operand),
+                    ty_pl.ty.toType(),
+                    extra.field_index,
+                ), cg);
+                try ops[0].finish(inst, &.{extra.struct_operand}, &ops, cg);
+            },
+            .struct_field_ptr_index_0,
+            .struct_field_ptr_index_1,
+            .struct_field_ptr_index_2,
+            .struct_field_ptr_index_3,
+            => |air_tag| if (use_old) try cg.airStructFieldPtrIndex(inst, switch (air_tag) {
+                else => unreachable,
+                .struct_field_ptr_index_0 => 0,
+                .struct_field_ptr_index_1 => 1,
+                .struct_field_ptr_index_2 => 2,
+                .struct_field_ptr_index_3 => 3,
+            }) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                try ops[0].toOffset(cg.fieldOffset(
+                    cg.typeOf(ty_op.operand),
+                    ty_op.ty.toType(),
+                    switch (air_tag) {
+                        else => unreachable,
+                        .struct_field_ptr_index_0 => 0,
+                        .struct_field_ptr_index_1 => 1,
+                        .struct_field_ptr_index_2 => 2,
+                        .struct_field_ptr_index_3 => 3,
+                    },
+                ), cg);
+                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .struct_field_val => if (use_old) try cg.airStructFieldVal(inst) else fallback: {
+                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
+                const extra = cg.air.extraData(Air.StructField, ty_pl.payload).data;
+                const agg_ty = cg.typeOf(extra.struct_operand);
+                const field_ty = ty_pl.ty.toType();
+                const field_off: u31 = switch (agg_ty.containerLayout(zcu)) {
+                    .auto, .@"extern" => @intCast(agg_ty.structFieldOffset(extra.field_index, zcu)),
+                    .@"packed" => break :fallback try cg.airStructFieldVal(inst),
+                };
+                var ops = try cg.tempsFromOperands(inst, .{extra.struct_operand});
+                // hack around Sema OPV bugs
+                var res = if (field_ty.hasRuntimeBitsIgnoreComptime(zcu))
+                    try ops[0].read(field_ty, .{ .disp = field_off }, cg)
+                else
+                    try cg.tempInit(field_ty, .none);
+                try res.finish(inst, &.{extra.struct_operand}, &ops, cg);
+            },
+            .set_union_tag => if (use_old) try cg.airSetUnionTag(inst) else {
+                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
+                const union_ty = cg.typeOf(bin_op.lhs).childType(zcu);
+                const union_layout = union_ty.unionGetLayout(zcu);
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                // hack around Sema OPV bugs
+                if (union_layout.tag_size > 0) try ops[0].store(&ops[1], .{
+                    .disp = @intCast(union_layout.tagOffset()),
+                }, cg);
+                const res = try cg.tempInit(.void, .none);
+                try res.finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .get_union_tag => if (use_old) try cg.airGetUnionTag(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                const union_ty = cg.typeOf(ty_op.operand);
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                const union_layout = union_ty.unionGetLayout(zcu);
+                assert(union_layout.tag_size > 0);
+                const res = try ops[0].read(ty_op.ty.toType(), .{
+                    .disp = @intCast(union_layout.tagOffset()),
+                }, cg);
+                try res.finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .slice => if (use_old) try cg.airSlice(inst) else {
+                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
+                const bin_op = cg.air.extraData(Air.Bin, ty_pl.payload).data;
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                try ops[0].toPair(&ops[1], cg);
+                try ops[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .slice_len => if (use_old) try cg.airSliceLen(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                try ops[0].toSliceLen(cg);
+                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .slice_ptr => if (use_old) try cg.airSlicePtr(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                try ops[0].toSlicePtr(cg);
+                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .ptr_slice_len_ptr => if (use_old) try cg.airPtrSliceLenPtr(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                try ops[0].toOffset(8, cg);
+                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .ptr_slice_ptr_ptr => if (use_old) try cg.airPtrSlicePtrPtr(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                try ops[0].toOffset(0, cg);
+                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .slice_elem_val, .ptr_elem_val => |air_tag| if (use_old) switch (air_tag) {
+                else => unreachable,
+                .slice_elem_val => try cg.airSliceElemVal(inst),
+                .ptr_elem_val => try cg.airPtrElemVal(inst),
+            } else {
+                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
+                const res_ty = cg.typeOf(bin_op.lhs).elemType2(zcu);
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                try ops[0].toSlicePtr(cg);
+                var res: [1]Temp = undefined;
+                if (res_ty.hasRuntimeBitsIgnoreComptime(zcu)) cg.select(&res, &.{res_ty}, &ops, comptime &.{ .{
+                    .dst_constraints = .{.{ .int = .byte }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .simm32, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .movzx, .dst0d, .leaa(.src0b, .add_src0_elem_size_times_src1), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .dst_constraints = .{.{ .int = .byte }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_i64, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .{ .kind = .{ .smin_mem = .{ .ref = .dst0 } } },
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .movzx, .dst0d, .leai(.src0b, .src1), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .int = .word }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .simm32, .none } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp4), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp5), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp2x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp3x, .tmp1x, ._, ._ },
-                        .{ ._, .p_, .@"and", .tmp3x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, .p_q, .add, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, .p_, .xor, .tmp3x, .tmp2x, ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp3x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .movzx, .dst0d, .leaa(.src0w, .add_src0_elem_size_times_src1), ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .dst_constraints = .{.{ .int = .word }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .movzx, .dst0d, .leasi(.src0w, .@"2", .src1), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .int = .dword }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .simm32, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .dst0d, .leaa(.src0d, .add_src0_elem_size_times_src1), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .int = .dword }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .dst0d, .leasi(.src0d, .@"4", .src1), ._, ._ },
+                    } },
+                }, .{
+                    .dst_constraints = .{.{ .int = .qword }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .simm32, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .dst0q, .leaa(.src0q, .add_src0_elem_size_times_src1), ._, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .@"64bit", null, null, null },
+                    .dst_constraints = .{.{ .int = .qword }},
+                    .patterns = &.{
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
+                    },
+                    .dst_temps = .{.{ .rc = .general_purpose }},
+                    .each = .{ .once = &.{
+                        .{ ._, ._, .mov, .dst0q, .leasi(.src0q, .@"8", .src1), ._, ._ },
+                    } },
+                } }) catch |err| switch (err) {
+                    error.SelectFailed => {
+                        const elem_size = res_ty.abiSize(zcu);
+                        while (true) for (&ops) |*op| {
+                            if (try op.toRegClass(true, .general_purpose, cg)) break;
+                        } else break;
+                        const lhs_reg = ops[0].unwrap(cg).temp.tracking(cg).short.register.to64();
+                        const rhs_reg = ops[1].unwrap(cg).temp.tracking(cg).short.register.to64();
+                        if (!std.math.isPowerOfTwo(elem_size)) {
+                            try cg.spillEflagsIfOccupied();
+                            try cg.asmRegisterRegisterImmediate(
+                                .{ .i_, .mul },
+                                rhs_reg,
+                                rhs_reg,
+                                .u(elem_size),
+                            );
+                            try cg.asmRegisterMemory(.{ ._, .lea }, lhs_reg, .{
+                                .base = .{ .reg = lhs_reg },
+                                .mod = .{ .rm = .{ .size = .qword, .index = rhs_reg } },
+                            });
+                        } else if (elem_size > 8) {
+                            try cg.spillEflagsIfOccupied();
+                            try cg.asmRegisterImmediate(
+                                .{ ._l, .sh },
+                                rhs_reg,
+                                .u(std.math.log2_int(u64, elem_size)),
+                            );
+                            try cg.asmRegisterMemory(.{ ._, .lea }, lhs_reg, .{
+                                .base = .{ .reg = lhs_reg },
+                                .mod = .{ .rm = .{ .size = .qword, .index = rhs_reg } },
+                            });
+                        } else try cg.asmRegisterMemory(.{ ._, .lea }, lhs_reg, .{
+                            .base = .{ .reg = lhs_reg },
+                            .mod = .{ .rm = .{
+                                .size = .qword,
+                                .index = rhs_reg,
+                                .scale = .fromFactor(@intCast(elem_size)),
+                            } },
+                        });
+                        res[0] = try ops[0].load(res_ty, .{}, cg);
+                    },
+                    else => |e| return e,
+                } else {
+                    // hack around Sema OPV bugs
+                    res[0] = try cg.tempInit(res_ty, .none);
+                }
+                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .slice_elem_ptr, .ptr_elem_ptr => |air_tag| if (use_old) switch (air_tag) {
+                else => unreachable,
+                .slice_elem_ptr => try cg.airSliceElemPtr(inst),
+                .ptr_elem_ptr => try cg.airPtrElemPtr(inst),
+            } else {
+                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
+                const bin_op = cg.air.extraData(Air.Bin, ty_pl.payload).data;
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
+                try ops[0].toSlicePtr(cg);
+                const dst_ty = ty_pl.ty.toType();
+                if (dst_ty.ptrInfo(zcu).flags.vector_index == .none) zero_offset: {
+                    const elem_size = dst_ty.childType(zcu).abiSize(zcu);
+                    // hack around Sema OPV bugs
+                    if (elem_size == 0) break :zero_offset;
+                    while (true) for (&ops) |*op| {
+                        if (try op.toRegClass(true, .general_purpose, cg)) break;
+                    } else break;
+                    const lhs_reg = ops[0].unwrap(cg).temp.tracking(cg).short.register.to64();
+                    const rhs_reg = ops[1].unwrap(cg).temp.tracking(cg).short.register.to64();
+                    if (!std.math.isPowerOfTwo(elem_size)) {
+                        try cg.spillEflagsIfOccupied();
+                        try cg.asmRegisterRegisterImmediate(
+                            .{ .i_, .mul },
+                            rhs_reg,
+                            rhs_reg,
+                            .u(elem_size),
+                        );
+                        try cg.asmRegisterMemory(.{ ._, .lea }, lhs_reg, .{
+                            .base = .{ .reg = lhs_reg },
+                            .mod = .{ .rm = .{ .size = .qword, .index = rhs_reg } },
+                        });
+                    } else if (elem_size > 8) {
+                        try cg.spillEflagsIfOccupied();
+                        try cg.asmRegisterImmediate(
+                            .{ ._l, .sh },
+                            rhs_reg,
+                            .u(std.math.log2_int(u64, elem_size)),
+                        );
+                        try cg.asmRegisterMemory(.{ ._, .lea }, lhs_reg, .{
+                            .base = .{ .reg = lhs_reg },
+                            .mod = .{ .rm = .{ .size = .qword, .index = rhs_reg } },
+                        });
+                    } else try cg.asmRegisterMemory(.{ ._, .lea }, lhs_reg, .{
+                        .base = .{ .reg = lhs_reg },
+                        .mod = .{ .rm = .{
+                            .size = .qword,
+                            .index = rhs_reg,
+                            .scale = .fromFactor(@intCast(elem_size)),
+                        } },
+                    });
+                }
+                try ops[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
+            },
+            .array_to_slice => if (use_old) try cg.airArrayToSlice(inst) else {
+                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
+                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
+                var len = try cg.tempInit(.usize, .{
+                    .immediate = cg.typeOf(ty_op.operand).childType(zcu).arrayLen(zcu),
+                });
+                try ops[0].toPair(&len, cg);
+                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
+            },
+            .error_set_has_value => return cg.fail("TODO implement error_set_has_value", .{}),
+            .union_init => if (use_old) try cg.airUnionInit(inst) else {
+                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
+                const extra = cg.air.extraData(Air.UnionInit, ty_pl.payload).data;
+                const union_ty = ty_pl.ty.toType();
+                var ops = try cg.tempsFromOperands(inst, .{extra.init});
+                var res = try cg.tempAllocMem(union_ty);
+                const union_layout = union_ty.unionGetLayout(zcu);
+                if (union_layout.tag_size > 0) {
+                    var tag_temp = try cg.tempFromValue(try pt.enumValueFieldIndex(
+                        union_ty.unionTagTypeSafety(zcu).?,
+                        extra.field_index,
+                    ));
+                    try res.write(&tag_temp, .{
+                        .disp = @intCast(union_layout.tagOffset()),
+                    }, cg);
+                    try tag_temp.die(cg);
+                }
+                try res.write(&ops[0], .{
+                    .disp = @intCast(union_layout.payloadOffset()),
+                }, cg);
+                try res.finish(inst, &.{extra.init}, &ops, cg);
+            },
+            .mul_add => |air_tag| if (use_old) try cg.airMulAdd(inst) else {
+                const pl_op = air_datas[@intFromEnum(inst)].pl_op;
+                const bin_op = cg.air.extraData(Air.Bin, pl_op.payload).data;
+                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs, pl_op.operand });
+                var res: [1]Temp = undefined;
+                cg.select(&res, &.{cg.typeOf(bin_op.lhs)}, &ops, comptime &.{ .{
+                    .required_features = .{ .fma, .f16c, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
-                        .{ ._, ._dqa, .mov, .tmp1x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._dqa, .mov, .tmp2x, .tmp1x, ._, ._ },
-                        .{ ._, .p_, .@"and", .tmp2x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp2x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .sse, null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .qword } }},
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .to_sse, .to_sse } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .type = .vector_2_u64, .kind = .{ .rc = .sse } },
-                        .{ .kind = .{ .umax_mem = .{ .ref = .dst0, .to_signedness = .unsigned } } },
+                        .{ .type = .f16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .{ .type = .f16, .kind = .{ .mut_rc = .{ .ref = .src2, .rc = .sse } } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .lea, .tmp0p, .mem(.tmp3), ._, ._ },
-                        .{ ._, ._ps, .mova, .tmp1x, .lea(.tmp0x), ._, ._ },
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._ps, .mova, .tmp2x, .tmp1x, ._, ._ },
-                        .{ ._, ._ps, .@"and", .tmp2x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp2x, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp1x, .src2q, ._, ._ },
+                        .{ ._, .v_ss, .fmadd213, .dst0x, .tmp0x, .tmp1d, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .qword, .is = 64 } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .scalar_float = .{ .of = .word, .is = .word } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .{ .to_reg = .xmm2 } } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmah" } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -33192,25 +46791,31 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .fma, .f16c, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .word } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .mem, .mem } },
+                        .{ .src = .{ .to_sse, .mem, .mem } },
+                        .{ .src = .{ .mem, .to_sse, .mem } },
+                        .{ .src = .{ .mem, .mem, .to_sse } },
+                        .{ .src = .{ .to_sse, .to_sse, .mem } },
+                        .{ .src = .{ .to_sse, .mem, .to_sse } },
+                        .{ .src = .{ .mem, .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .to_sse, .to_sse } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .{ .type = .vector_4_f16, .kind = .{ .mut_rc = .{ .ref = .src2, .rc = .sse } } },
                         .unused,
                         .unused,
                         .unused,
@@ -33219,28 +46824,35 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0x, .src0q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0x, .src1q, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp1x, .src2q, ._, ._ },
+                        .{ ._, .v_ps, .fmadd213, .dst0x, .tmp0x, .tmp1x, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0q, .dst0x, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .bmi2, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .fma, .f16c, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .word } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .mem, .mem, .mem } },
+                        .{ .src = .{ .to_sse, .mem, .mem } },
+                        .{ .src = .{ .mem, .to_sse, .mem } },
+                        .{ .src = .{ .mem, .mem, .to_sse } },
+                        .{ .src = .{ .to_sse, .to_sse, .mem } },
+                        .{ .src = .{ .to_sse, .mem, .to_sse } },
+                        .{ .src = .{ .mem, .to_sse, .to_sse } },
+                        .{ .src = .{ .to_sse, .to_sse, .to_sse } },
                     },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .{ .type = .vector_8_f16, .kind = .{ .mut_rc = .{ .ref = .src2, .rc = .sse } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -33248,28 +46860,29 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .mut_rc = .{ .ref = .src0, .rc = .sse } }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp2q, .memia(.src0q, .tmp0, .add_unaligned_size), .tmp1q, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .dst0y, .src0x, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp0y, .src1x, ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp1y, .src2x, ._, ._ },
+                        .{ ._, .v_ps, .fmadd213, .dst0y, .tmp0y, .tmp1y, ._ },
+                        .{ ._, .v_, .cvtps2ph, .dst0x, .dst0y, .rm(.{}), ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .fma, .f16c, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .word } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
+                        .{ .type = .vector_8_f16, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .{ .type = .vector_8_f16, .kind = .{ .mut_rc = .{ .ref = .src2, .rc = .sse } } },
+                        .{ .type = .vector_8_f16, .kind = .{ .mut_rc = .{ .ref = .src2, .rc = .sse } } },
                         .unused,
                         .unused,
                         .unused,
@@ -33277,221 +46890,232 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .ua(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1q, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .cvtph2, .tmp1y, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp2y, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .cvtph2, .tmp3y, .memia(.src2x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .fmadd213, .tmp1y, .tmp2y, .tmp3y, ._ },
+                        .{ ._, .v_, .cvtps2ph, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1y, .rm(.{}), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .qword, .is = 64 } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm2 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmah" } } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .vp_, .xor, .tmp3x, .tmp3x, .tmp3x, ._ },
+                        .{ ._, .vp_w, .insr, .tmp1x, .tmp3x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, .vp_w, .insr, .tmp2x, .tmp3x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, .vp_w, .insr, .tmp3x, .tmp3x, .memia(.src2w, .tmp0, .add_unaligned_size), .ui(0) },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, .vp_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .sse4_1, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm2 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmah" } } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp3x, .tmp3x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp3x, .memia(.src2w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .bmi2, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm2 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmah" } } },
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp2q, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), .tmp1q, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, .p_, .xor, .tmp3x, .tmp3x, ._, ._ },
+                        .{ ._, .p_w, .insr, .tmp1x, .memia(.src0w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp2x, .memia(.src1w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, .p_w, .insr, .tmp3x, .memia(.src2w, .tmp0, .add_unaligned_size), .ui(0), ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, .p_w, .extr, .tmp5d, .tmp1x, .ui(0), ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp5w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .xword, .is = .xword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                        .{ .multiple_scalar_float = .{ .of = .word, .is = .word } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                        .{ .type = .f16, .kind = .{ .reg = .ax } },
+                        .{ .type = .f32, .kind = .mem },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .f16, .kind = .{ .reg = .xmm2 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmah" } } },
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .ua(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1q, .memsia(.src0q, .@"2", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._, .movzx, .tmp1d, .memia(.src0w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .movzx, .tmp1d, .memia(.src1w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp4x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .movzx, .tmp1d, .memia(.src2w, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .mov, .mem(.tmp2d), .tmp1d, ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp5x, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .call, .tmp6d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .mem(.tmp2d), .tmp3x, ._, ._ },
+                        .{ ._, ._, .mov, .tmp1d, .mem(.tmp2d), ._, ._ },
+                        .{ ._, ._, .mov, .memia(.dst0w, .tmp0, .add_unaligned_size), .tmp1w, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(2), ._, ._ },
                         .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_int = .{ .of = .yword, .is = .yword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .qword, .is = 64 } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .to_sse } },
+                        .{ .src = .{ .mem, .to_mut_sse, .to_sse }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mut_sse, .sse, .sse } },
+                        .{ .src = .{ .sse, .mut_sse, .sse }, .commute = .{ 0, 1 } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ss, .fmadd132, .dst0x, .src2x, .src1d, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_signed_int = .{ .of = .yword, .is = .yword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .to_sse, .mem } },
+                        .{ .src = .{ .to_sse, .to_mut_sse, .mem }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mut_sse, .sse, .sse } },
+                        .{ .src = .{ .sse, .mut_sse, .sse }, .commute = .{ 0, 1 } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp1q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp1q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ss, .fmadd213, .dst0x, .src1x, .src2d, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .bmi2, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .yword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .to_mut_sse } },
+                        .{ .src = .{ .mem, .to_sse, .to_mut_sse }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .to_mut_sse } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src2 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .tmp1d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp2q, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), .tmp1q, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ss, .fmadd231, .dst0x, .src0x, .src1d, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .multiple_scalar_unsigned_int = .{ .of = .yword, .is = .yword } }, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .dword, .is = .dword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .{ .to_reg = .xmm2 } } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaf" } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -33500,178 +47124,126 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp1q, .ua(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp1q, .memsia(.src0q, .@"4", .tmp0, .add_unaligned_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1q, ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_exact_int = .{ .of = .qword, .is = 64 } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .to_sse } },
+                        .{ .src = .{ .mem, .to_mut_sse, .to_sse }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mut_sse, .sse, .sse } },
+                        .{ .src = .{ .sse, .mut_sse, .sse }, .commute = .{ 0, 1 } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2q, .memi(.src0q, .tmp1), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .fmadd132, .dst0x, .src2x, .src1x, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_signed_int = .{ .of = .qword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .i64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .to_sse, .mem } },
+                        .{ .src = .{ .to_sse, .to_mut_sse, .mem }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mut_sse, .sse, .sse } },
+                        .{ .src = .{ .sse, .mut_sse, .sse }, .commute = .{ 0, 1 } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2q, .memi(.src0q, .tmp1), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp2q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp2q, .uia(64, .dst0, .sub_bit_size), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .fmadd213, .dst0x, .src1x, .src2x, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .bmi2, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .dword } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .to_mut_sse } },
+                        .{ .src = .{ .mem, .to_sse, .to_mut_sse }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .to_mut_sse } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src2 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ ._, ._, .mov, .tmp2d, .sa(.dst0, .add_bit_size), ._, ._ },
-                        .{ .@"0:", ._, .bzhi, .tmp3q, .memi(.src0q, .tmp1), .tmp2q, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp3q, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .fmadd231, .dst0x, .src0x, .src1x, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .multiple_scalar_unsigned_int = .{ .of = .qword, .is = .qword } }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u64, .kind = .{ .rc = .general_purpose } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .to_sse } },
+                        .{ .src = .{ .mem, .to_mut_sse, .to_sse }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mut_sse, .sse, .sse } },
+                        .{ .src = .{ .sse, .mut_sse, .sse }, .commute = .{ 0, 1 } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0p, .sa(.dst0, .sub_unaligned_size), ._, ._ },
-                        .{ ._, ._, .xor, .tmp1d, .tmp1d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp2q, .ua(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp2q, .memi(.src0q, .tmp1), ._, ._ },
-                        .{ ._, ._, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp2q, ._, ._ },
-                        .{ ._, ._, .lea, .tmp1d, .leaa(.tmp1, .add_src0_elem_size), ._, ._ },
-                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
-                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .fmadd132, .dst0y, .src2y, .src1y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.{ .scalar_exact_remainder_int = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .to_sse, .mem } },
+                        .{ .src = .{ .to_sse, .to_mut_sse, .mem }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mut_sse, .sse, .sse } },
+                        .{ .src = .{ .sse, .mut_sse, .sse }, .commute = .{ 0, 1 } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_ps, .fmadd213, .dst0y, .src1y, .src2y, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .dword } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .to_mut_sse } },
+                        .{ .src = .{ .mem, .to_sse, .to_mut_sse }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .to_mut_sse } },
+                    },
+                    .dst_temps = .{.{ .ref = .src2 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sa(.dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sa2(.src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
-                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_ps, .fmadd231, .dst0y, .src0y, .src1y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_int, .any },
-                    .dst_constraints = .{.{ .scalar_exact_remainder_int = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .dword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_8_f32, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .{ .type = .vector_8_f32, .kind = .{ .mut_rc = .{ .ref = .src2, .rc = .sse } } },
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
@@ -33679,955 +47251,607 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void {
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sa(.dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sa2(.src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ps, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .mova, .tmp2y, .memia(.src1y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ps, .fmadd213, .tmp1y, .tmp2y, .memia(.src2y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_ps, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.{ .scalar_exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm2 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaf" } } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp3q, .lea(.tmp1q), ._, ._ },
-                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp3q, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .tmp3q, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
-                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
-                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ss, .mov, .tmp2x, .memia(.src1d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_ss, .mov, .tmp3x, .memia(.src2d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, .v_ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.{ .scalar_exact_remainder_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                        .{ .multiple_scalar_float = .{ .of = .dword, .is = .dword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .f32, .kind = .{ .reg = .xmm2 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaf" } } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp3q, .lea(.tmp1q), ._, ._ },
-                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp3q, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .tmp3q, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
-                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ss, .mov, .tmp1x, .memia(.src0d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp2x, .memia(.src1d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ss, .mov, .tmp3x, .memia(.src2d, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, ._ss, .mov, .memia(.dst0d, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(4), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.{ .scalar_remainder_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .mem, .to_sse } },
+                        .{ .src = .{ .mem, .to_mut_sse, .to_sse }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mut_sse, .sse, .sse } },
+                        .{ .src = .{ .sse, .mut_sse, .sse }, .commute = .{ 0, 1 } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_sd, .fmadd132, .dst0x, .src2x, .src1q, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .to_sse, .mem } },
+                        .{ .src = .{ .to_sse, .to_mut_sse, .mem }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mut_sse, .sse, .sse } },
+                        .{ .src = .{ .sse, .mut_sse, .sse }, .commute = .{ 0, 1 } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp3q, .lea(.tmp1q), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp3q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp3q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp3q, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .tmp3q, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
-                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
-                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_sd, .fmadd213, .dst0x, .src1x, .src2q, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.{ .scalar_remainder_signed_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .to_mut_sse } },
+                        .{ .src = .{ .mem, .to_sse, .to_mut_sse }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .to_mut_sse } },
+                    },
+                    .dst_temps = .{.{ .ref = .src2 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_sd, .fmadd231, .dst0x, .src0x, .src1q, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .qword, .is = .qword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .{ .to_reg = .xmm2 } } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fma" } } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp3q, .lea(.tmp1q), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp3q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp3q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp3q, ._, ._ },
-                        .{ ._, ._r, .sa, .tmp3q, .ui(63), ._, ._ },
-                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .tmp3q, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
-                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.{ .scalar_remainder_signed_int = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mut_sse, .mem, .to_sse } },
+                        .{ .src = .{ .mem, .to_mut_sse, .to_sse }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mut_sse, .sse, .sse } },
+                        .{ .src = .{ .sse, .mut_sse, .sse }, .commute = .{ 0, 1 } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .fmadd132, .dst0x, .src2x, .src1x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .to_sse, .mem } },
+                        .{ .src = .{ .to_sse, .to_mut_sse, .mem }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mut_sse, .sse, .sse } },
+                        .{ .src = .{ .sse, .mut_sse, .sse }, .commute = .{ 0, 1 } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp4q, .lea(.tmp1q), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp4q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp4q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
-                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_pd, .fmadd213, .dst0x, .src1x, .src2x, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_signed_int, .any },
-                    .dst_constraints = .{.{ .scalar_remainder_signed_int = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .qword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_sse, .mem, .to_mut_sse } },
+                        .{ .src = .{ .mem, .to_sse, .to_mut_sse }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .to_mut_sse } },
                     },
-                    .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .unused,
-                        .unused,
-                        .unused,
-                        .unused,
+                    .dst_temps = .{.{ .ref = .src2 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .fmadd231, .dst0x, .src0x, .src1x, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .mem, .to_sse } },
+                        .{ .src = .{ .mem, .to_mut_sse, .to_sse }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mut_sse, .sse, .sse } },
+                        .{ .src = .{ .sse, .mut_sse, .sse }, .commute = .{ 0, 1 } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp4q, .lea(.tmp1q), ._, ._ },
-                        .{ ._, ._l, .sa, .tmp4q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._r, .sa, .tmp4q, .uia(64, .dst0, .sub_bit_size_rem_64), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, .v_pd, .fmadd132, .dst0y, .src2y, .src1y, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .scalar_exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_mut_sse, .to_sse, .mem } },
+                        .{ .src = .{ .to_sse, .to_mut_sse, .mem }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mut_sse, .sse, .sse } },
+                        .{ .src = .{ .sse, .mut_sse, .sse }, .commute = .{ 0, 1 } },
+                    },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .fmadd213, .dst0y, .src1y, .src2y, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .scalar_float = .{ .of = .yword, .is = .qword } },
+                    },
+                    .patterns = &.{
+                        .{ .src = .{ .to_sse, .mem, .to_mut_sse } },
+                        .{ .src = .{ .mem, .to_sse, .to_mut_sse }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_sse, .to_sse, .to_mut_sse } },
+                    },
+                    .dst_temps = .{.{ .ref = .src2 }},
+                    .each = .{ .once = &.{
+                        .{ ._, .v_pd, .fmadd231, .dst0y, .src0y, .src1y, ._ },
+                    } },
+                }, .{
+                    .required_features = .{ .fma, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .yword, .is = .qword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .vector_4_f64, .kind = .{ .mut_rc = .{ .ref = .src1, .rc = .sse } } },
+                        .{ .type = .vector_4_f64, .kind = .{ .mut_rc = .{ .ref = .src2, .rc = .sse } } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sa2(.src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
-                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_pd, .mova, .tmp1y, .memia(.src0y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_pd, .mova, .tmp2y, .memia(.src1y, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_pd, .fmadd213, .tmp1y, .tmp2y, .memia(.src2y, .tmp0, .add_unaligned_size), ._ },
+                        .{ ._, .v_pd, .mova, .memia(.dst0y, .tmp0, .add_unaligned_size), .tmp1y, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(32), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .scalar_exact_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm2 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fma" } } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sa2(.src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_sd, .mov, .tmp2x, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_sd, .mov, .tmp3x, .memia(.src2q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, .v_sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm2 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fma" } } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sa(.dst0, .add_bit_size_rem_64), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .bzhi, .tmp4q, .lea(.tmp1q), .tmp3q, ._ },
-                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp4q, ._, ._ },
-                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .si(0), ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
-                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
-                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._sd, .mov, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._sd, .mov, .tmp2x, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._sd, .mov, .tmp3x, .memia(.src2q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, ._sd, .mov, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .bmi2, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                        .{ .multiple_scalar_float = .{ .of = .qword, .is = .qword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .f64, .kind = .{ .reg = .xmm2 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fma" } } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sa(.dst0, .add_bit_size_rem_64), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .bzhi, .tmp4q, .lea(.tmp1q), .tmp3q, ._ },
-                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp4q, ._, ._ },
-                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .si(0), ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
-                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .xor, .tmp1x, .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .xor, .tmp2x, .tmp2x, ._, ._ },
+                        .{ ._, ._ps, .xor, .tmp3x, .tmp3x, ._, ._ },
+                        .{ ._, ._ps, .movl, .tmp1x, .memia(.src0q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .movl, .tmp2x, .memia(.src1q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .movl, .tmp3x, .memia(.src2q, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, ._ps, .movl, .memia(.dst0q, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(8), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .bmi2, .slow_incdec, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .sse, .x87, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .tbyte } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .size = 16 * 3, .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmax" } } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .reg = .st0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sa(.dst0, .add_bit_size_rem_64), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .bzhi, .tmp5q, .lea(.tmp1q), .tmp3q, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
-                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp0x, .mem(.src0x), ._, ._ },
+                        .{ ._, ._ps, .mova, .mem(.tmp1x), .tmp0x, ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp0x, .mem(.src1x), ._, ._ },
+                        .{ ._, ._ps, .mova, .memd(.tmp1x, 16), .tmp0x, ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp0x, .mem(.src2x), ._, ._ },
+                        .{ ._, ._ps, .mova, .memd(.tmp1x, 16 * 2), .tmp0x, ._, ._ },
+                        .{ ._, ._, .call, .tmp2d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .bmi2, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .sse, .x87, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .tbyte } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .size = 16 * 3, .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u8, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f80, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f80, .kind = .{ .frame = .call_frame } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "__fmax" } } },
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .mov, .tmp3d, .sa(.dst0, .add_bit_size_rem_64), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .bzhi, .tmp5q, .lea(.tmp1q), .tmp3q, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .mem(.tmp2x), .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp1x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .memd(.tmp2x, 16), .tmp1x, ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp1x, .memia(.src2x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .memd(.tmp2x, 16 * 2), .tmp1x, ._, ._ },
+                        .{ ._, ._, .call, .tmp3d, ._, ._, ._ },
+                        .{ .pseudo, .f_cstp, .de, ._, ._, ._, ._ },
+                        .{ ._, .f_p, .st, .memia(.dst0t, .tmp0, .add_unaligned_size), ._, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .scalar_float = .{ .of = .xword, .is = .xword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .{ .to_reg = .xmm0 }, .{ .to_reg = .xmm1 }, .{ .to_reg = .xmm2 } } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaq" } } },
+                        .unused,
+                        .unused,
+                        .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
-                    .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .dst_temps = .{.{ .ref = .src0 }},
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp3q, .ua(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp3q, .lea(.tmp1q), ._, ._ },
-                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp3q, ._, ._ },
-                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .si(0), ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
-                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
-                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .call, .tmp0d, ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .qword } }},
+                    .required_features = .{ .avx, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
-                        .unused,
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm2 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaq" } } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp3d, .sia(-2, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp3q, .ua(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp3q, .lea(.tmp1q), ._, ._ },
-                        .{ ._, ._, .mov, .lea(.tmp2q), .tmp3q, ._, ._ },
-                        .{ ._, ._, .mov, .lead(.tmp2q, 8), .si(0), ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .lead(.tmp2, 16), ._, ._ },
-                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", .v_dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, .v_dqa, .mov, .tmp3x, .memia(.src2x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, .v_dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", .slow_incdec, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .sse2, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm2 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaq" } } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp4q, .ua(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp4q, .lea(.tmp1q), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._, .sub, .tmp0d, .si(1), ._, ._ },
-                        .{ ._, ._a, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._dqa, .mov, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._dqa, .mov, .tmp3x, .memia(.src2x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, ._dqa, .mov, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .any_scalar_unsigned_int, .any },
-                    .dst_constraints = .{.{ .scalar_remainder_unsigned_int = .{ .of = .xword, .is = .xword } }},
+                    .required_features = .{ .sse, null, null, null },
+                    .src_constraints = .{
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                        .{ .multiple_scalar_float = .{ .of = .xword, .is = .xword } },
+                    },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .none } },
+                        .{ .src = .{ .to_mem, .to_mem, .to_mem } },
                     },
+                    .call_frame = .{ .alignment = .@"16" },
                     .extra_temps = .{
-                        .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
-                        .{ .type = .usize, .kind = .{ .reg = .rsi } },
-                        .{ .type = .usize, .kind = .{ .reg = .rdi } },
-                        .{ .type = .u64, .kind = .{ .reg = .rax } },
-                        .{ .type = .u32, .kind = .{ .reg = .ecx } },
+                        .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm0 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm1 } },
+                        .{ .type = .f128, .kind = .{ .reg = .xmm2 } },
+                        .{ .type = .usize, .kind = .{ .symbol = &.{ .name = "fmaq" } } },
                         .unused,
                         .unused,
                         .unused,
                         .unused,
                     },
                     .dst_temps = .{.mem},
-                    .clobbers = .{ .eflags = true },
+                    .clobbers = .{ .eflags = true, .caller_preserved = .ccc },
                     .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .tmp0d, .sa(.src0, .add_len), ._, ._ },
-                        .{ ._, ._, .lea, .tmp1p, .mem(.src0), ._, ._ },
-                        .{ ._, ._, .lea, .tmp2p, .mem(.dst0), ._, ._ },
-                        .{ ._, ._, .xor, .tmp3d, .tmp3d, ._, ._ },
-                        .{ .@"0:", ._, .mov, .tmp4d, .sia(-1, .dst0, .add_elem_size_div_8), ._, ._ },
-                        .{ ._, .@"rep _sq", .mov, ._, ._, ._, ._ },
-                        .{ ._, ._, .mov, .tmp4q, .ua(.dst0, .add_umax), ._, ._ },
-                        .{ ._, ._, .@"and", .tmp4q, .lea(.tmp1q), ._, ._ },
-                        .{ ._, ._sq, .sto, ._, ._, ._, ._ },
-                        .{ ._, ._, .add, .tmp1p, .sia2(8, .src0, .dst0, .add_delta_elem_size), ._, ._ },
-                        .{ ._, ._c, .de, .tmp0d, ._, ._, ._ },
-                        .{ ._, ._nz, .j, .@"0b", ._, ._, ._ },
+                        .{ ._, ._, .mov, .tmp0p, .sa(.src0, .sub_unaligned_size), ._, ._ },
+                        .{ .@"0:", ._ps, .mova, .tmp1x, .memia(.src0x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp2x, .memia(.src1x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._ps, .mova, .tmp3x, .memia(.src2x, .tmp0, .add_unaligned_size), ._, ._ },
+                        .{ ._, ._, .call, .tmp4d, ._, ._, ._ },
+                        .{ ._, ._ps, .mova, .memia(.dst0x, .tmp0, .add_unaligned_size), .tmp1x, ._, ._ },
+                        .{ ._, ._, .add, .tmp0p, .si(16), ._, ._ },
+                        .{ ._, ._nc, .j, .@"0b", ._, ._, ._ },
                     } },
                 } }) catch |err| switch (err) {
-                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {}", .{
+                    error.SelectFailed => return cg.fail("failed to select {s} {} {} {} {}", .{
                         @tagName(air_tag),
-                        ty_op.ty.toType().fmt(pt),
-                        cg.typeOf(ty_op.operand).fmt(pt),
+                        cg.typeOf(bin_op.lhs).fmt(pt),
                         ops[0].tracking(cg),
+                        ops[1].tracking(cg),
+                        ops[2].tracking(cg),
                     }),
                     else => |e| return e,
                 };
-                try res[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .optional_payload_ptr => if (use_old) try cg.airOptionalPayloadPtr(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                const ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .optional_payload_ptr_set => if (use_old) try cg.airOptionalPayloadPtrSet(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                const opt_ty = cg.typeOf(ty_op.operand).childType(zcu);
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                if (!opt_ty.optionalReprIsPayload(zcu)) {
-                    const opt_child_ty = opt_ty.optionalChild(zcu);
-                    const opt_child_abi_size: i32 = @intCast(opt_child_ty.abiSize(zcu));
-                    try ops[0].toOffset(opt_child_abi_size, cg);
-                    var has_value = try cg.tempInit(.bool, .{ .immediate = 1 });
-                    try ops[0].store(&has_value, .{}, cg);
-                    try has_value.die(cg);
-                    try ops[0].toOffset(-opt_child_abi_size, cg);
-                }
-                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .unwrap_errunion_payload_ptr => if (use_old) try cg.airUnwrapErrUnionPayloadPtr(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                const eu_ty = cg.typeOf(ty_op.operand).childType(zcu);
-                const eu_pl_ty = eu_ty.errorUnionPayload(zcu);
-                const eu_pl_off: i32 = @intCast(codegen.errUnionPayloadOffset(eu_pl_ty, zcu));
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                try ops[0].toOffset(eu_pl_off, cg);
-                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .unwrap_errunion_err_ptr => if (use_old) try cg.airUnwrapErrUnionErrPtr(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                const eu_ty = cg.typeOf(ty_op.operand).childType(zcu);
-                const eu_pl_ty = eu_ty.errorUnionPayload(zcu);
-                const eu_err_off: i32 = @intCast(codegen.errUnionErrorOffset(eu_pl_ty, zcu));
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                try ops[0].toOffset(eu_err_off, cg);
-                const err = try ops[0].load(eu_ty.errorUnionSet(zcu), .{}, cg);
-                try err.finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .errunion_payload_ptr_set => if (use_old) try cg.airErrUnionPayloadPtrSet(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                const eu_ty = cg.typeOf(ty_op.operand).childType(zcu);
-                const eu_err_ty = eu_ty.errorUnionSet(zcu);
-                const eu_pl_ty = eu_ty.errorUnionPayload(zcu);
-                const eu_err_off: i32 = @intCast(codegen.errUnionErrorOffset(eu_pl_ty, zcu));
-                const eu_pl_off: i32 = @intCast(codegen.errUnionPayloadOffset(eu_pl_ty, zcu));
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                try ops[0].toOffset(eu_err_off, cg);
-                var no_err = try cg.tempInit(eu_err_ty, .{ .immediate = 0 });
-                try ops[0].store(&no_err, .{}, cg);
-                try no_err.die(cg);
-                try ops[0].toOffset(eu_pl_off - eu_err_off, cg);
-                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .struct_field_ptr => if (use_old) try cg.airStructFieldPtr(inst) else {
-                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
-                const extra = cg.air.extraData(Air.StructField, ty_pl.payload).data;
-                var ops = try cg.tempsFromOperands(inst, .{extra.struct_operand});
-                try ops[0].toOffset(cg.fieldOffset(
-                    cg.typeOf(extra.struct_operand),
-                    ty_pl.ty.toType(),
-                    extra.field_index,
-                ), cg);
-                try ops[0].finish(inst, &.{extra.struct_operand}, &ops, cg);
-            },
-            .struct_field_ptr_index_0,
-            .struct_field_ptr_index_1,
-            .struct_field_ptr_index_2,
-            .struct_field_ptr_index_3,
-            => |air_tag| if (use_old) try cg.airStructFieldPtrIndex(inst, switch (air_tag) {
-                else => unreachable,
-                .struct_field_ptr_index_0 => 0,
-                .struct_field_ptr_index_1 => 1,
-                .struct_field_ptr_index_2 => 2,
-                .struct_field_ptr_index_3 => 3,
-            }) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                try ops[0].toOffset(cg.fieldOffset(
-                    cg.typeOf(ty_op.operand),
-                    ty_op.ty.toType(),
-                    switch (air_tag) {
-                        else => unreachable,
-                        .struct_field_ptr_index_0 => 0,
-                        .struct_field_ptr_index_1 => 1,
-                        .struct_field_ptr_index_2 => 2,
-                        .struct_field_ptr_index_3 => 3,
-                    },
-                ), cg);
-                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .struct_field_val => if (use_old) try cg.airStructFieldVal(inst) else fallback: {
-                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
-                const extra = cg.air.extraData(Air.StructField, ty_pl.payload).data;
-                const agg_ty = cg.typeOf(extra.struct_operand);
-                const field_ty = ty_pl.ty.toType();
-                const field_off: u31 = switch (agg_ty.containerLayout(zcu)) {
-                    .auto, .@"extern" => @intCast(agg_ty.structFieldOffset(extra.field_index, zcu)),
-                    .@"packed" => break :fallback try cg.airStructFieldVal(inst),
-                };
-                var ops = try cg.tempsFromOperands(inst, .{extra.struct_operand});
-                // hack around Sema OPV bugs
-                var res = if (field_ty.hasRuntimeBitsIgnoreComptime(zcu))
-                    try ops[0].read(field_ty, .{ .disp = field_off }, cg)
-                else
-                    try cg.tempInit(field_ty, .none);
-                try res.finish(inst, &.{extra.struct_operand}, &ops, cg);
-            },
-            .set_union_tag => if (use_old) try cg.airSetUnionTag(inst) else {
-                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
-                const union_ty = cg.typeOf(bin_op.lhs).childType(zcu);
-                const union_layout = union_ty.unionGetLayout(zcu);
-                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
-                // hack around Sema OPV bugs
-                if (union_layout.tag_size > 0) try ops[0].store(&ops[1], .{
-                    .disp = @intCast(union_layout.tagOffset()),
-                }, cg);
-                const res = try cg.tempInit(.void, .none);
-                try res.finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
-            },
-            .get_union_tag => if (use_old) try cg.airGetUnionTag(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                const union_ty = cg.typeOf(ty_op.operand);
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                const union_layout = union_ty.unionGetLayout(zcu);
-                assert(union_layout.tag_size > 0);
-                const res = try ops[0].read(ty_op.ty.toType(), .{
-                    .disp = @intCast(union_layout.tagOffset()),
-                }, cg);
-                try res.finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .slice => if (use_old) try cg.airSlice(inst) else {
-                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
-                const bin_op = cg.air.extraData(Air.Bin, ty_pl.payload).data;
-                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
-                try ops[0].toPair(&ops[1], cg);
-                try ops[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
-            },
-            .slice_len => if (use_old) try cg.airSliceLen(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                try ops[0].toSliceLen(cg);
-                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .slice_ptr => if (use_old) try cg.airSlicePtr(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                try ops[0].toSlicePtr(cg);
-                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .ptr_slice_len_ptr => if (use_old) try cg.airPtrSliceLenPtr(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                try ops[0].toOffset(8, cg);
-                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .ptr_slice_ptr_ptr => if (use_old) try cg.airPtrSlicePtrPtr(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                try ops[0].toOffset(0, cg);
-                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .slice_elem_val, .ptr_elem_val => |air_tag| if (use_old) switch (air_tag) {
-                else => unreachable,
-                .slice_elem_val => try cg.airSliceElemVal(inst),
-                .ptr_elem_val => try cg.airPtrElemVal(inst),
-            } else {
-                const bin_op = air_datas[@intFromEnum(inst)].bin_op;
-                const res_ty = cg.typeOf(bin_op.lhs).elemType2(zcu);
-                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
-                try ops[0].toSlicePtr(cg);
-                var res: [1]Temp = undefined;
-                if (res_ty.hasRuntimeBitsIgnoreComptime(zcu)) cg.select(&res, &.{res_ty}, &ops, comptime &.{ .{
-                    .dst_constraints = .{.{ .int = .byte }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_gpr, .simm32 } },
-                    },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .leaa(.src0b, .add_src0_elem_size_times_src1), ._, ._ },
-                    } },
-                }, .{
-                    .dst_constraints = .{.{ .int = .byte }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .leai(.src0b, .src1), ._, ._ },
-                    } },
-                }, .{
-                    .dst_constraints = .{.{ .int = .word }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_gpr, .simm32 } },
-                    },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .leaa(.src0w, .add_src0_elem_size_times_src1), ._, ._ },
-                    } },
-                }, .{
-                    .dst_constraints = .{.{ .int = .word }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .movzx, .dst0d, .leasi(.src0w, .@"2", .src1), ._, ._ },
-                    } },
-                }, .{
-                    .dst_constraints = .{.{ .int = .dword }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_gpr, .simm32 } },
-                    },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0d, .leaa(.src0d, .add_src0_elem_size_times_src1), ._, ._ },
-                    } },
-                }, .{
-                    .dst_constraints = .{.{ .int = .dword }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0d, .leasi(.src0d, .@"4", .src1), ._, ._ },
-                    } },
-                }, .{
-                    .dst_constraints = .{.{ .int = .qword }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_gpr, .simm32 } },
-                    },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0q, .leaa(.src0q, .add_src0_elem_size_times_src1), ._, ._ },
-                    } },
-                }, .{
-                    .required_features = .{ .@"64bit", null, null, null },
-                    .dst_constraints = .{.{ .int = .qword }},
-                    .patterns = &.{
-                        .{ .src = .{ .to_gpr, .to_gpr } },
-                    },
-                    .dst_temps = .{.{ .rc = .general_purpose }},
-                    .each = .{ .once = &.{
-                        .{ ._, ._, .mov, .dst0q, .leasi(.src0q, .@"8", .src1), ._, ._ },
-                    } },
-                } }) catch |err| switch (err) {
-                    error.SelectFailed => {
-                        const elem_size = res_ty.abiSize(zcu);
-                        while (true) for (&ops) |*op| {
-                            if (try op.toRegClass(true, .general_purpose, cg)) break;
-                        } else break;
-                        const lhs_reg = ops[0].unwrap(cg).temp.tracking(cg).short.register.to64();
-                        const rhs_reg = ops[1].unwrap(cg).temp.tracking(cg).short.register.to64();
-                        if (!std.math.isPowerOfTwo(elem_size)) {
-                            try cg.spillEflagsIfOccupied();
-                            try cg.asmRegisterRegisterImmediate(
-                                .{ .i_, .mul },
-                                rhs_reg,
-                                rhs_reg,
-                                .u(elem_size),
-                            );
-                            try cg.asmRegisterMemory(.{ ._, .lea }, lhs_reg, .{
-                                .base = .{ .reg = lhs_reg },
-                                .mod = .{ .rm = .{ .size = .qword, .index = rhs_reg } },
-                            });
-                        } else if (elem_size > 8) {
-                            try cg.spillEflagsIfOccupied();
-                            try cg.asmRegisterImmediate(
-                                .{ ._l, .sh },
-                                rhs_reg,
-                                .u(std.math.log2_int(u64, elem_size)),
-                            );
-                            try cg.asmRegisterMemory(.{ ._, .lea }, lhs_reg, .{
-                                .base = .{ .reg = lhs_reg },
-                                .mod = .{ .rm = .{ .size = .qword, .index = rhs_reg } },
-                            });
-                        } else try cg.asmRegisterMemory(.{ ._, .lea }, lhs_reg, .{
-                            .base = .{ .reg = lhs_reg },
-                            .mod = .{ .rm = .{
-                                .size = .qword,
-                                .index = rhs_reg,
-                                .scale = .fromFactor(@intCast(elem_size)),
-                            } },
-                        });
-                        res[0] = try ops[0].load(res_ty, .{}, cg);
-                    },
-                    else => |e| return e,
-                } else {
-                    // hack around Sema OPV bugs
-                    res[0] = try cg.tempInit(res_ty, .none);
-                }
-                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
-            },
-            .slice_elem_ptr, .ptr_elem_ptr => |air_tag| if (use_old) switch (air_tag) {
-                else => unreachable,
-                .slice_elem_ptr => try cg.airSliceElemPtr(inst),
-                .ptr_elem_ptr => try cg.airPtrElemPtr(inst),
-            } else {
-                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
-                const bin_op = cg.air.extraData(Air.Bin, ty_pl.payload).data;
-                var ops = try cg.tempsFromOperands(inst, .{ bin_op.lhs, bin_op.rhs });
-                try ops[0].toSlicePtr(cg);
-                const dst_ty = ty_pl.ty.toType();
-                if (dst_ty.ptrInfo(zcu).flags.vector_index == .none) zero_offset: {
-                    const elem_size = dst_ty.childType(zcu).abiSize(zcu);
-                    // hack around Sema OPV bugs
-                    if (elem_size == 0) break :zero_offset;
-                    while (true) for (&ops) |*op| {
-                        if (try op.toRegClass(true, .general_purpose, cg)) break;
-                    } else break;
-                    const lhs_reg = ops[0].unwrap(cg).temp.tracking(cg).short.register.to64();
-                    const rhs_reg = ops[1].unwrap(cg).temp.tracking(cg).short.register.to64();
-                    if (!std.math.isPowerOfTwo(elem_size)) {
-                        try cg.spillEflagsIfOccupied();
-                        try cg.asmRegisterRegisterImmediate(
-                            .{ .i_, .mul },
-                            rhs_reg,
-                            rhs_reg,
-                            .u(elem_size),
-                        );
-                        try cg.asmRegisterMemory(.{ ._, .lea }, lhs_reg, .{
-                            .base = .{ .reg = lhs_reg },
-                            .mod = .{ .rm = .{ .size = .qword, .index = rhs_reg } },
-                        });
-                    } else if (elem_size > 8) {
-                        try cg.spillEflagsIfOccupied();
-                        try cg.asmRegisterImmediate(
-                            .{ ._l, .sh },
-                            rhs_reg,
-                            .u(std.math.log2_int(u64, elem_size)),
-                        );
-                        try cg.asmRegisterMemory(.{ ._, .lea }, lhs_reg, .{
-                            .base = .{ .reg = lhs_reg },
-                            .mod = .{ .rm = .{ .size = .qword, .index = rhs_reg } },
-                        });
-                    } else try cg.asmRegisterMemory(.{ ._, .lea }, lhs_reg, .{
-                        .base = .{ .reg = lhs_reg },
-                        .mod = .{ .rm = .{
-                            .size = .qword,
-                            .index = rhs_reg,
-                            .scale = .fromFactor(@intCast(elem_size)),
-                        } },
-                    });
-                }
-                try ops[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs }, &ops, cg);
-            },
-            .array_to_slice => if (use_old) try cg.airArrayToSlice(inst) else {
-                const ty_op = air_datas[@intFromEnum(inst)].ty_op;
-                var ops = try cg.tempsFromOperands(inst, .{ty_op.operand});
-                var len = try cg.tempInit(.usize, .{
-                    .immediate = cg.typeOf(ty_op.operand).childType(zcu).arrayLen(zcu),
-                });
-                try ops[0].toPair(&len, cg);
-                try ops[0].finish(inst, &.{ty_op.operand}, &ops, cg);
-            },
-            .error_set_has_value => return cg.fail("TODO implement error_set_has_value", .{}),
-            .union_init => if (use_old) try cg.airUnionInit(inst) else {
-                const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
-                const extra = cg.air.extraData(Air.UnionInit, ty_pl.payload).data;
-                const union_ty = ty_pl.ty.toType();
-                var ops = try cg.tempsFromOperands(inst, .{extra.init});
-                var res = try cg.tempAllocMem(union_ty);
-                const union_layout = union_ty.unionGetLayout(zcu);
-                if (union_layout.tag_size > 0) {
-                    var tag_temp = try cg.tempFromValue(try pt.enumValueFieldIndex(
-                        union_ty.unionTagTypeSafety(zcu).?,
-                        extra.field_index,
-                    ));
-                    try res.write(&tag_temp, .{
-                        .disp = @intCast(union_layout.tagOffset()),
-                    }, cg);
-                    try tag_temp.die(cg);
-                }
-                try res.write(&ops[0], .{
-                    .disp = @intCast(union_layout.payloadOffset()),
-                }, cg);
-                try res.finish(inst, &.{extra.init}, &ops, cg);
+                try res[0].finish(inst, &.{ bin_op.lhs, bin_op.rhs, pl_op.operand }, &ops, cg);
             },
             .field_parent_ptr => if (use_old) try cg.airFieldParentPtr(inst) else {
                 const ty_pl = air_datas[@intFromEnum(inst)].ty_pl;
@@ -39565,7 +52789,7 @@ fn genRoundLibcall(self: *CodeGen, ty: Type, src_mcv: MCValue, mode: bits.RoundM
         .param_types = &.{ty.toIntern()},
         .callee = std.fmt.bufPrint(&callee_buf, "{s}{s}{s}", .{
             floatLibcAbiPrefix(ty),
-            switch (mode.mode) {
+            switch (mode.direction) {
                 .down => "floor",
                 .up => "ceil",
                 .zero => "trunc",
@@ -42209,7 +55433,7 @@ fn genBinOp(
                 } }, &.{ lhs_ty, rhs_ty }, &.{ adjusted, .{ .air_ref = rhs_air } }, .{});
             },
             .div_trunc, .div_floor => try self.genRoundLibcall(lhs_ty, result, .{
-                .mode = switch (air_tag) {
+                .direction = switch (air_tag) {
                     .div_trunc => .zero,
                     .div_floor => .down,
                     else => unreachable,
@@ -42667,7 +55891,7 @@ fn genBinOp(
                         dst_reg,
                         dst_reg,
                         bits.RoundMode.imm(.{
-                            .mode = switch (air_tag) {
+                            .direction = switch (air_tag) {
                                 .div_trunc => .zero,
                                 .div_floor => .down,
                                 else => unreachable,
@@ -43469,7 +56693,7 @@ fn genBinOp(
     switch (air_tag) {
         .add, .add_wrap, .sub, .sub_wrap, .mul, .mul_wrap, .div_float, .div_exact => {},
         .div_trunc, .div_floor => try self.genRound(lhs_ty, dst_reg, .{ .register = dst_reg }, .{
-            .mode = switch (air_tag) {
+            .direction = switch (air_tag) {
                 .div_trunc => .zero,
                 .div_floor => .down,
                 else => unreachable,
@@ -51237,10 +64461,17 @@ fn airReduce(self: *CodeGen, inst: Air.Inst.Index) !void {
                 const acc_reg = try self.register_manager.allocReg(null, abi.RegisterClass.gp);
                 const acc_lock = self.register_manager.lockRegAssumeUnused(acc_reg);
                 defer self.register_manager.unlockReg(acc_lock);
-                var limb_offset: i31 = 0;
-                while (limb_offset < abi_size) : (limb_offset += 8) {
+                var limb_offset: i31 = @intCast((mask_len - 1) / 64 * 8);
+                const need_mask = mask_len % 64 != 0;
+                if (need_mask) try self.asmRegisterImmediate(
+                    .{ ._, .mov },
+                    if (mask_len % 64 <= 32) acc_reg.to32() else acc_reg.to64(),
+                    .u((@as(u64, std.math.maxInt(u64)) >> @truncate(-%mask_len))),
+                );
+                var first = true;
+                while (true) : (limb_offset -= 8) {
                     try self.asmRegisterMemory(
-                        .{ ._, if (limb_offset == 0) .mov else switch (reduce.operation) {
+                        .{ ._, if (first) if (need_mask) .@"and" else .mov else switch (reduce.operation) {
                             .Or => .@"or",
                             .And => .@"and",
                             else => return self.fail("TODO implement airReduce for {}", .{operand_ty.fmt(pt)}),
@@ -51251,6 +64482,8 @@ fn airReduce(self: *CodeGen, inst: Air.Inst.Index) !void {
                             .disp = limb_offset,
                         }),
                     );
+                    if (limb_offset == 0) break;
+                    first = false;
                 }
                 switch (reduce.operation) {
                     .Or => {
@@ -53741,11 +66974,11 @@ const Temp = struct {
                 };
                 if (commute) std.mem.swap(Temp, &ops[0], &ops[1]);
                 try cg.select(&res, &.{.bool}, &ops, comptime &.{ .{
-                    .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte } },
+                    .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .imm8, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .imm8, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_gpr }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .imm8, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .imm8, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_gpr, .none }, .commute = .{ 0, 1 } },
                     },
                     .dst_temps = .{.{ .cc = .g }},
                     .clobbers = .{ .eflags = true },
@@ -53753,12 +66986,12 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte } },
+                    .src_constraints = .{ .{ .signed_int = .byte }, .{ .signed_int = .byte }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .imm8 } },
-                        .{ .src = .{ .to_gpr, .imm8 } },
-                        .{ .src = .{ .to_gpr, .mem } },
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .imm8, .none } },
+                        .{ .src = .{ .to_gpr, .imm8, .none } },
+                        .{ .src = .{ .to_gpr, .mem, .none } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
                     .dst_temps = .{.{ .cc = .l }},
                     .clobbers = .{ .eflags = true },
@@ -53766,11 +66999,11 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte } },
+                    .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .imm8, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .imm8, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_gpr }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .imm8, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .imm8, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_gpr, .none }, .commute = .{ 0, 1 } },
                     },
                     .dst_temps = .{.{ .cc = .a }},
                     .clobbers = .{ .eflags = true },
@@ -53778,12 +67011,12 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte } },
+                    .src_constraints = .{ .{ .unsigned_int = .byte }, .{ .unsigned_int = .byte }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .imm8 } },
-                        .{ .src = .{ .to_gpr, .imm8 } },
-                        .{ .src = .{ .to_gpr, .mem } },
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .imm8, .none } },
+                        .{ .src = .{ .to_gpr, .imm8, .none } },
+                        .{ .src = .{ .to_gpr, .mem, .none } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
                     .dst_temps = .{.{ .cc = .b }},
                     .clobbers = .{ .eflags = true },
@@ -53791,11 +67024,11 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word } },
+                    .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .imm16, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .imm16, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_gpr }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .imm16, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .imm16, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_gpr, .none }, .commute = .{ 0, 1 } },
                     },
                     .dst_temps = .{.{ .cc = .g }},
                     .clobbers = .{ .eflags = true },
@@ -53803,12 +67036,12 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word } },
+                    .src_constraints = .{ .{ .signed_int = .word }, .{ .signed_int = .word }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .imm16 } },
-                        .{ .src = .{ .to_gpr, .imm16 } },
-                        .{ .src = .{ .to_gpr, .mem } },
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .imm16, .none } },
+                        .{ .src = .{ .to_gpr, .imm16, .none } },
+                        .{ .src = .{ .to_gpr, .mem, .none } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
                     .dst_temps = .{.{ .cc = .l }},
                     .clobbers = .{ .eflags = true },
@@ -53816,11 +67049,11 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word } },
+                    .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .imm16, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .imm16, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_gpr }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .imm16, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .imm16, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_gpr, .none }, .commute = .{ 0, 1 } },
                     },
                     .dst_temps = .{.{ .cc = .a }},
                     .clobbers = .{ .eflags = true },
@@ -53828,12 +67061,12 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word } },
+                    .src_constraints = .{ .{ .unsigned_int = .word }, .{ .unsigned_int = .word }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .imm16 } },
-                        .{ .src = .{ .to_gpr, .imm16 } },
-                        .{ .src = .{ .to_gpr, .mem } },
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .imm16, .none } },
+                        .{ .src = .{ .to_gpr, .imm16, .none } },
+                        .{ .src = .{ .to_gpr, .mem, .none } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
                     .dst_temps = .{.{ .cc = .b }},
                     .clobbers = .{ .eflags = true },
@@ -53841,11 +67074,11 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword } },
+                    .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .imm32, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .imm32, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_gpr }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .imm32, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .imm32, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_gpr, .none }, .commute = .{ 0, 1 } },
                     },
                     .dst_temps = .{.{ .cc = .g }},
                     .clobbers = .{ .eflags = true },
@@ -53853,12 +67086,12 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword } },
+                    .src_constraints = .{ .{ .signed_int = .dword }, .{ .signed_int = .dword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .imm32 } },
-                        .{ .src = .{ .to_gpr, .imm32 } },
-                        .{ .src = .{ .to_gpr, .mem } },
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .imm32, .none } },
+                        .{ .src = .{ .to_gpr, .imm32, .none } },
+                        .{ .src = .{ .to_gpr, .mem, .none } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
                     .dst_temps = .{.{ .cc = .l }},
                     .clobbers = .{ .eflags = true },
@@ -53866,11 +67099,11 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword } },
+                    .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .imm32, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .imm32, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_gpr }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .imm32, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .imm32, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_gpr, .none }, .commute = .{ 0, 1 } },
                     },
                     .dst_temps = .{.{ .cc = .a }},
                     .clobbers = .{ .eflags = true },
@@ -53878,12 +67111,12 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0d, .src1d, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword } },
+                    .src_constraints = .{ .{ .unsigned_int = .dword }, .{ .unsigned_int = .dword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .imm32 } },
-                        .{ .src = .{ .to_gpr, .imm32 } },
-                        .{ .src = .{ .to_gpr, .mem } },
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .imm32, .none } },
+                        .{ .src = .{ .to_gpr, .imm32, .none } },
+                        .{ .src = .{ .to_gpr, .mem, .none } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
                     .dst_temps = .{.{ .cc = .b }},
                     .clobbers = .{ .eflags = true },
@@ -53892,11 +67125,11 @@ const Temp = struct {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword } },
+                    .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .simm32, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .simm32, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_gpr }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .simm32, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .simm32, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_gpr, .none }, .commute = .{ 0, 1 } },
                     },
                     .dst_temps = .{.{ .cc = .g }},
                     .clobbers = .{ .eflags = true },
@@ -53905,12 +67138,12 @@ const Temp = struct {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword } },
+                    .src_constraints = .{ .{ .signed_int = .qword }, .{ .signed_int = .qword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .simm32 } },
-                        .{ .src = .{ .to_gpr, .simm32 } },
-                        .{ .src = .{ .to_gpr, .mem } },
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .simm32, .none } },
+                        .{ .src = .{ .to_gpr, .simm32, .none } },
+                        .{ .src = .{ .to_gpr, .mem, .none } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
                     .dst_temps = .{.{ .cc = .l }},
                     .clobbers = .{ .eflags = true },
@@ -53919,11 +67152,11 @@ const Temp = struct {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword } },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .simm32, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .simm32, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .mem, .to_gpr }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .simm32, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .simm32, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .mem, .to_gpr, .none }, .commute = .{ 0, 1 } },
                     },
                     .dst_temps = .{.{ .cc = .a }},
                     .clobbers = .{ .eflags = true },
@@ -53932,12 +67165,12 @@ const Temp = struct {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword } },
+                    .src_constraints = .{ .{ .unsigned_int = .qword }, .{ .unsigned_int = .qword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .simm32 } },
-                        .{ .src = .{ .to_gpr, .simm32 } },
-                        .{ .src = .{ .to_gpr, .mem } },
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .simm32, .none } },
+                        .{ .src = .{ .to_gpr, .simm32, .none } },
+                        .{ .src = .{ .to_gpr, .mem, .none } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
                     .dst_temps = .{.{ .cc = .b }},
                     .clobbers = .{ .eflags = true },
@@ -53949,9 +67182,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_signed_int = .{ .of = .qword, .is = .qword } },
                         .{ .remainder_signed_int = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -53981,9 +67215,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_unsigned_int = .{ .of = .qword, .is = .qword } },
                         .{ .remainder_unsigned_int = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54010,9 +67245,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_signed_int = .{ .of = .dword, .is = .dword } },
                         .{ .remainder_signed_int = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54041,9 +67277,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_unsigned_int = .{ .of = .dword, .is = .dword } },
                         .{ .remainder_unsigned_int = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54071,15 +67308,15 @@ const Temp = struct {
             },
             .eq, .neq => {
                 try cg.select(&res, &.{.bool}, &ops, comptime &.{ .{
-                    .src_constraints = .{ .{ .int = .byte }, .{ .int = .byte } },
+                    .src_constraints = .{ .{ .int = .byte }, .{ .int = .byte }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .imm8 } },
-                        .{ .src = .{ .imm8, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_gpr, .imm8 } },
-                        .{ .src = .{ .imm8, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .imm8, .none } },
+                        .{ .src = .{ .imm8, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_gpr, .imm8, .none } },
+                        .{ .src = .{ .imm8, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
                     .dst_temps = .{.{ .cc = .e }},
                     .clobbers = .{ .eflags = true },
@@ -54087,15 +67324,15 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0b, .src1b, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .word }, .{ .int = .word } },
+                    .src_constraints = .{ .{ .int = .word }, .{ .int = .word }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .imm16 } },
-                        .{ .src = .{ .imm16, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_gpr, .imm16 } },
-                        .{ .src = .{ .imm16, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .imm16, .none } },
+                        .{ .src = .{ .imm16, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_gpr, .imm16, .none } },
+                        .{ .src = .{ .imm16, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
                     .dst_temps = .{.{ .cc = .e }},
                     .clobbers = .{ .eflags = true },
@@ -54103,15 +67340,15 @@ const Temp = struct {
                         .{ ._, ._, .cmp, .src0w, .src1w, ._, ._ },
                     } },
                 }, .{
-                    .src_constraints = .{ .{ .int = .dword }, .{ .int = .dword } },
+                    .src_constraints = .{ .{ .int = .dword }, .{ .int = .dword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .imm32 } },
-                        .{ .src = .{ .imm32, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_gpr, .imm32 } },
-                        .{ .src = .{ .imm32, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .imm32, .none } },
+                        .{ .src = .{ .imm32, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_gpr, .imm32, .none } },
+                        .{ .src = .{ .imm32, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
                     .dst_temps = .{.{ .cc = .e }},
                     .clobbers = .{ .eflags = true },
@@ -54120,15 +67357,15 @@ const Temp = struct {
                     } },
                 }, .{
                     .required_features = .{ .@"64bit", null, null, null },
-                    .src_constraints = .{ .{ .int = .qword }, .{ .int = .qword } },
+                    .src_constraints = .{ .{ .int = .qword }, .{ .int = .qword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .mem, .simm32 } },
-                        .{ .src = .{ .simm32, .mem }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_gpr, .simm32 } },
-                        .{ .src = .{ .simm32, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_gpr, .mem } },
-                        .{ .src = .{ .mem, .to_gpr }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_gpr, .to_gpr } },
+                        .{ .src = .{ .mem, .simm32, .none } },
+                        .{ .src = .{ .simm32, .mem, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_gpr, .simm32, .none } },
+                        .{ .src = .{ .simm32, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_gpr, .mem, .none } },
+                        .{ .src = .{ .mem, .to_gpr, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_gpr, .to_gpr, .none } },
                     },
                     .dst_temps = .{.{ .cc = .e }},
                     .clobbers = .{ .eflags = true },
@@ -54137,11 +67374,11 @@ const Temp = struct {
                     } },
                 }, .{
                     .required_features = .{ .sse, .mmx, null, null },
-                    .src_constraints = .{ .{ .int = .qword }, .{ .int = .qword } },
+                    .src_constraints = .{ .{ .int = .qword }, .{ .int = .qword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_mm, .mem } },
-                        .{ .src = .{ .mem, .to_mut_mm }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_mm, .to_mm } },
+                        .{ .src = .{ .to_mut_mm, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_mm, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_mm, .to_mm, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -54165,11 +67402,11 @@ const Temp = struct {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .int = .xword }, .{ .int = .xword } },
+                    .src_constraints = .{ .{ .int = .xword }, .{ .int = .xword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_xmm, .mem } },
-                        .{ .src = .{ .mem, .to_xmm }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_xmm, .to_xmm } },
+                        .{ .src = .{ .to_xmm, .mem, .none } },
+                        .{ .src = .{ .mem, .to_xmm, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_xmm, .to_xmm, .none } },
                     },
                     .extra_temps = .{
                         .{ .kind = .{ .rc = .sse } },
@@ -54190,11 +67427,11 @@ const Temp = struct {
                     } },
                 }, .{
                     .required_features = .{ .sse4_1, null, null, null },
-                    .src_constraints = .{ .{ .int = .xword }, .{ .int = .xword } },
+                    .src_constraints = .{ .{ .int = .xword }, .{ .int = .xword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_xmm, .mem } },
-                        .{ .src = .{ .mem, .to_mut_xmm }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_xmm, .to_xmm } },
+                        .{ .src = .{ .to_mut_xmm, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_xmm, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_xmm, .to_xmm, .none } },
                     },
                     .dst_temps = .{.{ .cc = .z }},
                     .clobbers = .{ .eflags = true },
@@ -54204,11 +67441,11 @@ const Temp = struct {
                     } },
                 }, .{
                     .required_features = .{ .sse2, .fast_imm16, null, null },
-                    .src_constraints = .{ .{ .int = .xword }, .{ .int = .xword } },
+                    .src_constraints = .{ .{ .int = .xword }, .{ .int = .xword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_xmm, .mem } },
-                        .{ .src = .{ .mem, .to_mut_xmm }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_xmm, .to_xmm } },
+                        .{ .src = .{ .to_mut_xmm, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_xmm, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_xmm, .to_xmm, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -54232,11 +67469,11 @@ const Temp = struct {
                     } },
                 }, .{
                     .required_features = .{ .sse2, null, null, null },
-                    .src_constraints = .{ .{ .int = .xword }, .{ .int = .xword } },
+                    .src_constraints = .{ .{ .int = .xword }, .{ .int = .xword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_mut_xmm, .mem } },
-                        .{ .src = .{ .mem, .to_mut_xmm }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_mut_xmm, .to_xmm } },
+                        .{ .src = .{ .to_mut_xmm, .mem, .none } },
+                        .{ .src = .{ .mem, .to_mut_xmm, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_mut_xmm, .to_xmm, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .u32, .kind = .{ .rc = .general_purpose } },
@@ -54260,11 +67497,11 @@ const Temp = struct {
                     } },
                 }, .{
                     .required_features = .{ .avx2, null, null, null },
-                    .src_constraints = .{ .{ .int = .yword }, .{ .int = .yword } },
+                    .src_constraints = .{ .{ .int = .yword }, .{ .int = .yword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_ymm, .mem } },
-                        .{ .src = .{ .mem, .to_ymm }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_ymm, .to_ymm } },
+                        .{ .src = .{ .to_ymm, .mem, .none } },
+                        .{ .src = .{ .mem, .to_ymm, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_ymm, .to_ymm, .none } },
                     },
                     .extra_temps = .{
                         .{ .kind = .{ .rc = .sse } },
@@ -54285,11 +67522,11 @@ const Temp = struct {
                     } },
                 }, .{
                     .required_features = .{ .avx, null, null, null },
-                    .src_constraints = .{ .{ .int = .yword }, .{ .int = .yword } },
+                    .src_constraints = .{ .{ .int = .yword }, .{ .int = .yword }, .any },
                     .patterns = &.{
-                        .{ .src = .{ .to_ymm, .mem } },
-                        .{ .src = .{ .mem, .to_ymm }, .commute = .{ 0, 1 } },
-                        .{ .src = .{ .to_ymm, .to_ymm } },
+                        .{ .src = .{ .to_ymm, .mem, .none } },
+                        .{ .src = .{ .mem, .to_ymm, .none }, .commute = .{ 0, 1 } },
+                        .{ .src = .{ .to_ymm, .to_ymm, .none } },
                     },
                     .extra_temps = .{
                         .{ .kind = .{ .rc = .sse } },
@@ -54313,9 +67550,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_int = .{ .of = .yword, .is = .xword } },
                         .{ .remainder_int = .{ .of = .yword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54347,9 +67585,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_int = .{ .of = .yword, .is = .xword } },
                         .{ .remainder_int = .{ .of = .yword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54381,9 +67620,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_int = .{ .of = .yword, .is = .yword } },
                         .{ .remainder_int = .{ .of = .yword, .is = .yword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54412,9 +67652,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_int = .{ .of = .yword, .is = .yword } },
                         .{ .remainder_int = .{ .of = .yword, .is = .yword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54443,9 +67684,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_int = .{ .of = .xword, .is = .xword } },
                         .{ .remainder_int = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54474,9 +67716,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_int = .{ .of = .xword, .is = .xword } },
                         .{ .remainder_int = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54505,9 +67748,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_int = .{ .of = .xword, .is = .xword } },
                         .{ .remainder_int = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54537,9 +67781,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_int = .{ .of = .xword, .is = .xword } },
                         .{ .remainder_int = .{ .of = .xword, .is = .xword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54569,9 +67814,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_int = .{ .of = .qword, .is = .qword } },
                         .{ .remainder_int = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54601,9 +67847,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_int = .{ .of = .qword, .is = .qword } },
                         .{ .remainder_int = .{ .of = .qword, .is = .qword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -54630,9 +67877,10 @@ const Temp = struct {
                     .src_constraints = .{
                         .{ .remainder_int = .{ .of = .dword, .is = .dword } },
                         .{ .remainder_int = .{ .of = .dword, .is = .dword } },
+                        .any,
                     },
                     .patterns = &.{
-                        .{ .src = .{ .to_mem, .to_mem } },
+                        .{ .src = .{ .to_mem, .to_mem, .none } },
                     },
                     .extra_temps = .{
                         .{ .type = .isize, .kind = .{ .rc = .general_purpose } },
@@ -55344,7 +68592,7 @@ const Select = struct {
     };
 
     const Pattern = struct {
-        src: [2]Src,
+        src: [@intFromEnum(Select.Operand.Ref.none) - @intFromEnum(Select.Operand.Ref.src0)]Src,
         commute: struct { u8, u8 } = .{ 0, 0 },
 
         const Src = union(enum) {
@@ -55781,6 +69029,7 @@ const Select = struct {
             dst0,
             src0,
             src1,
+            src2,
             none,
 
             const Sized = packed struct(u8) {
@@ -55920,6 +69169,17 @@ const Select = struct {
                 const src1t: Sized = .{ .ref = .src1, .size = .tbyte };
                 const src1x: Sized = .{ .ref = .src1, .size = .xword };
                 const src1y: Sized = .{ .ref = .src1, .size = .yword };
+
+                const src2: Sized = .{ .ref = .src2, .size = .none };
+                const src2b: Sized = .{ .ref = .src2, .size = .byte };
+                const src2w: Sized = .{ .ref = .src2, .size = .word };
+                const src2d: Sized = .{ .ref = .src2, .size = .dword };
+                const src2p: Sized = .{ .ref = .src2, .size = .ptr };
+                const src2g: Sized = .{ .ref = .src2, .size = .gpr };
+                const src2q: Sized = .{ .ref = .src2, .size = .qword };
+                const src2t: Sized = .{ .ref = .src2, .size = .tbyte };
+                const src2x: Sized = .{ .ref = .src2, .size = .xword };
+                const src2y: Sized = .{ .ref = .src2, .size = .yword };
             };
 
             fn typeOf(ref: Ref, s: *const Select) Type {
@@ -56064,6 +69324,16 @@ const Select = struct {
         const src1x: Select.Operand = .{ .flags = .{ .tag = .ref }, .base = .src1x };
         const src1y: Select.Operand = .{ .flags = .{ .tag = .ref }, .base = .src1y };
 
+        const src2b: Select.Operand = .{ .flags = .{ .tag = .ref }, .base = .src2b };
+        const src2w: Select.Operand = .{ .flags = .{ .tag = .ref }, .base = .src2w };
+        const src2d: Select.Operand = .{ .flags = .{ .tag = .ref }, .base = .src2d };
+        const src2p: Select.Operand = .{ .flags = .{ .tag = .ref }, .base = .src2p };
+        const src2g: Select.Operand = .{ .flags = .{ .tag = .ref }, .base = .src2g };
+        const src2q: Select.Operand = .{ .flags = .{ .tag = .ref }, .base = .src2q };
+        const src2t: Select.Operand = .{ .flags = .{ .tag = .ref }, .base = .src2t };
+        const src2x: Select.Operand = .{ .flags = .{ .tag = .ref }, .base = .src2x };
+        const src2y: Select.Operand = .{ .flags = .{ .tag = .ref }, .base = .src2y };
+
         fn si(imm: i32) Select.Operand {
             return .{ .flags = .{ .tag = .simm }, .imm = imm };
         }
src/arch/x86_64/encodings.zig
@@ -19,7 +19,7 @@ pub const table = [_]Entry{
     .{ .aad, .zi, &.{ .imm8 }, &.{ 0xd5       }, 0, .none, .@"32bit" },
 
     .{ .aam, .z,  &.{       }, &.{ 0xd4, 0x0a }, 0, .none, .@"32bit" },
-    .{ .aam, .z,  &.{ .imm8 }, &.{ 0xd4       }, 0, .none, .@"32bit" },
+    .{ .aam, .zi, &.{ .imm8 }, &.{ 0xd4       }, 0, .none, .@"32bit" },
 
     .{ .aas, .z,  &.{}, &.{ 0x3f }, 0, .none, .@"32bit" },
 
test/behavior/x86_64/math.zig
@@ -37,6 +37,14 @@ inline fn splat(comptime Type: type, scalar: Scalar(Type)) Type {
         .vector => @splat(scalar),
     };
 }
+// inline to avoid a runtime `@select`
+inline fn select(cond: anytype, lhs: anytype, rhs: @TypeOf(lhs)) @TypeOf(lhs) {
+    return switch (@typeInfo(@TypeOf(cond))) {
+        .bool => if (cond) lhs else rhs,
+        .vector => @select(Scalar(@TypeOf(lhs)), cond, lhs, rhs),
+        else => @compileError(@typeName(@TypeOf(cond))),
+    };
+}
 fn sign(rhs: anytype) switch (@typeInfo(@TypeOf(rhs))) {
     else => bool,
     .vector => |vector| @Vector(vector.len, bool),
@@ -84,65 +92,78 @@ fn boolOr(lhs: anytype, rhs: @TypeOf(lhs)) @TypeOf(lhs) {
     @compileError("unsupported boolOr type: " ++ @typeName(@TypeOf(lhs)));
 }
 
+const Compare = enum { strict, relaxed, approx, approx_int };
 // noinline for a more helpful stack trace
-noinline fn checkExpected(expected: anytype, actual: @TypeOf(expected), comptime strict: bool) !void {
-    const info = @typeInfo(@TypeOf(expected));
-    const unexpected = unexpected: switch (switch (info) {
-        else => info,
-        .vector => |vector| @typeInfo(vector.child),
-    }) {
+noinline fn checkExpected(expected: anytype, actual: @TypeOf(expected), comptime compare: Compare) !void {
+    const Expected = @TypeOf(expected);
+    const unexpected = unexpected: switch (@typeInfo(Scalar(Expected))) {
         else => expected != actual,
-        .float => {
-            const unequal = boolAnd(expected != actual, boolOr(expected == expected, actual == actual));
-            break :unexpected switch (strict) {
-                false => unequal,
-                true => boolOr(unequal, sign(expected) != sign(actual)),
-            };
+        .float => switch (compare) {
+            .strict, .relaxed => {
+                const unequal = boolAnd(expected != actual, boolOr(expected == expected, actual == actual));
+                break :unexpected switch (compare) {
+                    .strict => boolOr(unequal, sign(expected) != sign(actual)),
+                    .relaxed => unequal,
+                    .approx, .approx_int => comptime unreachable,
+                };
+            },
+            .approx, .approx_int => {
+                const epsilon = math.floatEps(Scalar(Expected));
+                const tolerance = @sqrt(epsilon);
+                break :unexpected @abs(expected - actual) > @max(
+                    @abs(expected) * splat(Expected, tolerance),
+                    splat(Expected, switch (compare) {
+                        .strict, .relaxed => comptime unreachable,
+                        .approx => tolerance,
+                        .approx_int => 1,
+                    }),
+                );
+            },
         },
     };
-    if (switch (info) {
+    if (switch (@typeInfo(Expected)) {
         else => unexpected,
         .vector => @reduce(.Or, unexpected),
     }) return error.Unexpected;
 }
 test checkExpected {
-    if (checkExpected(nan(f16), nan(f16), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(nan(f16), -nan(f16), true) != error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f16, 0.0), @as(f16, 0.0), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f16, -0.0), @as(f16, -0.0), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f16, -0.0), @as(f16, 0.0), true) != error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f16, 0.0), @as(f16, -0.0), true) != error.Unexpected) return error.Unexpected;
-
-    if (checkExpected(nan(f32), nan(f32), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(nan(f32), -nan(f32), true) != error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f32, 0.0), @as(f32, 0.0), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f32, -0.0), @as(f32, -0.0), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f32, -0.0), @as(f32, 0.0), true) != error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f32, 0.0), @as(f32, -0.0), true) != error.Unexpected) return error.Unexpected;
-
-    if (checkExpected(nan(f64), nan(f64), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(nan(f64), -nan(f64), true) != error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f64, 0.0), @as(f64, 0.0), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f64, -0.0), @as(f64, -0.0), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f64, -0.0), @as(f64, 0.0), true) != error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f64, 0.0), @as(f64, -0.0), true) != error.Unexpected) return error.Unexpected;
-
-    if (checkExpected(nan(f80), nan(f80), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(nan(f80), -nan(f80), true) != error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f80, 0.0), @as(f80, 0.0), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f80, -0.0), @as(f80, -0.0), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f80, -0.0), @as(f80, 0.0), true) != error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f80, 0.0), @as(f80, -0.0), true) != error.Unexpected) return error.Unexpected;
-
-    if (checkExpected(nan(f128), nan(f128), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(nan(f128), -nan(f128), true) != error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f128, 0.0), @as(f128, 0.0), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f128, -0.0), @as(f128, -0.0), true) == error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f128, -0.0), @as(f128, 0.0), true) != error.Unexpected) return error.Unexpected;
-    if (checkExpected(@as(f128, 0.0), @as(f128, -0.0), true) != error.Unexpected) return error.Unexpected;
+    if (checkExpected(nan(f16), nan(f16), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(nan(f16), -nan(f16), .strict) != error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f16, 0.0), @as(f16, 0.0), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f16, -0.0), @as(f16, -0.0), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f16, -0.0), @as(f16, 0.0), .strict) != error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f16, 0.0), @as(f16, -0.0), .strict) != error.Unexpected) return error.Unexpected;
+
+    if (checkExpected(nan(f32), nan(f32), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(nan(f32), -nan(f32), .strict) != error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f32, 0.0), @as(f32, 0.0), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f32, -0.0), @as(f32, -0.0), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f32, -0.0), @as(f32, 0.0), .strict) != error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f32, 0.0), @as(f32, -0.0), .strict) != error.Unexpected) return error.Unexpected;
+
+    if (checkExpected(nan(f64), nan(f64), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(nan(f64), -nan(f64), .strict) != error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f64, 0.0), @as(f64, 0.0), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f64, -0.0), @as(f64, -0.0), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f64, -0.0), @as(f64, 0.0), .strict) != error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f64, 0.0), @as(f64, -0.0), .strict) != error.Unexpected) return error.Unexpected;
+
+    if (checkExpected(nan(f80), nan(f80), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(nan(f80), -nan(f80), .strict) != error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f80, 0.0), @as(f80, 0.0), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f80, -0.0), @as(f80, -0.0), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f80, -0.0), @as(f80, 0.0), .strict) != error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f80, 0.0), @as(f80, -0.0), .strict) != error.Unexpected) return error.Unexpected;
+
+    if (checkExpected(nan(f128), nan(f128), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(nan(f128), -nan(f128), .strict) != error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f128, 0.0), @as(f128, 0.0), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f128, -0.0), @as(f128, -0.0), .strict) == error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f128, -0.0), @as(f128, 0.0), .strict) != error.Unexpected) return error.Unexpected;
+    if (checkExpected(@as(f128, 0.0), @as(f128, -0.0), .strict) != error.Unexpected) return error.Unexpected;
 }
 
-fn unary(comptime op: anytype, comptime opts: struct { strict: bool = false }) type {
+fn unary(comptime op: anytype, comptime opts: struct { compare: Compare = .relaxed }) type {
     return struct {
         // noinline so that `mem_arg` is on the stack
         noinline fn testArgKinds(
@@ -169,9 +190,9 @@ fn unary(comptime op: anytype, comptime opts: struct { strict: bool = false }) t
             const expected = comptime op(Type, imm_arg);
             var reg_arg = mem_arg;
             _ = .{&reg_arg};
-            try checkExpected(expected, op(Type, reg_arg), opts.strict);
-            try checkExpected(expected, op(Type, mem_arg), opts.strict);
-            try checkExpected(expected, op(Type, imm_arg), opts.strict);
+            try checkExpected(expected, op(Type, reg_arg), opts.compare);
+            try checkExpected(expected, op(Type, mem_arg), opts.compare);
+            try checkExpected(expected, op(Type, imm_arg), opts.compare);
         }
         // noinline for a more helpful stack trace
         noinline fn testArgs(comptime Type: type, comptime imm_arg: Type) !void {
@@ -1628,7 +1649,7 @@ fn unary(comptime op: anytype, comptime opts: struct { strict: bool = false }) t
     };
 }
 
-fn cast(comptime op: anytype, comptime opts: struct { strict: bool = false }) type {
+fn cast(comptime op: anytype, comptime opts: struct { compare: Compare = .relaxed }) type {
     return struct {
         // noinline so that `mem_arg` is on the stack
         noinline fn testArgKinds(
@@ -1656,9 +1677,9 @@ fn cast(comptime op: anytype, comptime opts: struct { strict: bool = false }) ty
             const expected = comptime op(Result, Type, imm_arg, imm_arg);
             var reg_arg = mem_arg;
             _ = .{&reg_arg};
-            try checkExpected(expected, op(Result, Type, reg_arg, imm_arg), opts.strict);
-            try checkExpected(expected, op(Result, Type, mem_arg, imm_arg), opts.strict);
-            try checkExpected(expected, op(Result, Type, imm_arg, imm_arg), opts.strict);
+            try checkExpected(expected, op(Result, Type, reg_arg, imm_arg), opts.compare);
+            try checkExpected(expected, op(Result, Type, mem_arg, imm_arg), opts.compare);
+            try checkExpected(expected, op(Result, Type, imm_arg, imm_arg), opts.compare);
         }
         // noinline for a more helpful stack trace
         noinline fn testArgs(comptime Result: type, comptime Type: type, comptime imm_arg: Type) !void {
@@ -8504,7 +8525,7 @@ fn cast(comptime op: anytype, comptime opts: struct { strict: bool = false }) ty
     };
 }
 
-fn binary(comptime op: anytype, comptime opts: struct { strict: bool = false }) type {
+fn binary(comptime op: anytype, comptime opts: struct { compare: Compare = .relaxed }) type {
     return struct {
         // noinline so that `mem_lhs` and `mem_rhs` are on the stack
         noinline fn testArgKinds(
@@ -8534,14 +8555,14 @@ fn binary(comptime op: anytype, comptime opts: struct { strict: bool = false })
             var reg_lhs = mem_lhs;
             var reg_rhs = mem_rhs;
             _ = .{ &reg_lhs, &reg_rhs };
-            try checkExpected(expected, op(Type, reg_lhs, reg_rhs), opts.strict);
-            try checkExpected(expected, op(Type, reg_lhs, mem_rhs), opts.strict);
-            try checkExpected(expected, op(Type, reg_lhs, imm_rhs), opts.strict);
-            try checkExpected(expected, op(Type, mem_lhs, reg_rhs), opts.strict);
-            try checkExpected(expected, op(Type, mem_lhs, mem_rhs), opts.strict);
-            try checkExpected(expected, op(Type, mem_lhs, imm_rhs), opts.strict);
-            try checkExpected(expected, op(Type, imm_lhs, reg_rhs), opts.strict);
-            try checkExpected(expected, op(Type, imm_lhs, mem_rhs), opts.strict);
+            try checkExpected(expected, op(Type, reg_lhs, reg_rhs), opts.compare);
+            try checkExpected(expected, op(Type, reg_lhs, mem_rhs), opts.compare);
+            try checkExpected(expected, op(Type, reg_lhs, imm_rhs), opts.compare);
+            try checkExpected(expected, op(Type, mem_lhs, reg_rhs), opts.compare);
+            try checkExpected(expected, op(Type, mem_lhs, mem_rhs), opts.compare);
+            try checkExpected(expected, op(Type, mem_lhs, imm_rhs), opts.compare);
+            try checkExpected(expected, op(Type, imm_lhs, reg_rhs), opts.compare);
+            try checkExpected(expected, op(Type, imm_lhs, mem_rhs), opts.compare);
         }
         // noinline for a more helpful stack trace
         noinline fn testArgs(comptime Type: type, comptime imm_lhs: Type, comptime imm_rhs: Type) !void {
@@ -11315,6 +11336,124 @@ fn binary(comptime op: anytype, comptime opts: struct { strict: bool = false })
     };
 }
 
+inline fn add(comptime Type: type, lhs: Type, rhs: Type) @TypeOf(lhs + rhs) {
+    return lhs + rhs;
+}
+test add {
+    const test_add = binary(add, .{});
+    try test_add.testFloats();
+    try test_add.testFloatVectors();
+}
+
+inline fn subtract(comptime Type: type, lhs: Type, rhs: Type) @TypeOf(lhs - rhs) {
+    return lhs - rhs;
+}
+test subtract {
+    const test_subtract = binary(subtract, .{});
+    try test_subtract.testFloats();
+    try test_subtract.testFloatVectors();
+}
+
+inline fn multiply(comptime Type: type, lhs: Type, rhs: Type) @TypeOf(lhs * rhs) {
+    if (@inComptime() and @typeInfo(Type) == .vector) {
+        // workaround https://github.com/ziglang/zig/issues/22743
+        // TODO: return @select(Scalar(Type), boolAnd(lhs == lhs, rhs == rhs), lhs * rhs, lhs + rhs);
+        // workaround https://github.com/ziglang/zig/issues/22744
+        var res: Type = undefined;
+        for (0..@typeInfo(Type).vector.len) |i| res[i] = lhs[i] * rhs[i];
+        return res;
+    }
+    // workaround https://github.com/ziglang/zig/issues/22745
+    // TODO: return lhs * rhs;
+    var rt_lhs = lhs;
+    var rt_rhs = rhs;
+    _ = .{ &rt_lhs, &rt_rhs };
+    return rt_lhs * rt_rhs;
+}
+test multiply {
+    const test_multiply = binary(multiply, .{});
+    try test_multiply.testFloats();
+    try test_multiply.testFloatVectors();
+}
+
+inline fn divide(comptime Type: type, lhs: Type, rhs: Type) @TypeOf(lhs / rhs) {
+    return lhs / rhs;
+}
+test divide {
+    const test_divide = binary(divide, .{ .compare = .approx });
+    try test_divide.testFloats();
+    try test_divide.testFloatVectors();
+}
+
+// workaround https://github.com/ziglang/zig/issues/22748
+// TODO: @TypeOf(@divTrunc(lhs, rhs))
+inline fn divTrunc(comptime Type: type, lhs: Type, rhs: Type) @TypeOf(lhs / rhs) {
+    if (@inComptime()) {
+        // workaround https://github.com/ziglang/zig/issues/22748
+        return @trunc(lhs / rhs);
+    }
+    // workaround https://github.com/ziglang/zig/issues/22748
+    // workaround https://github.com/ziglang/zig/issues/22749
+    // TODO: return @divTrunc(lhs, rhs);
+    var rt_lhs = lhs;
+    var rt_rhs = rhs;
+    _ = .{ &rt_lhs, &rt_rhs };
+    return @divTrunc(rt_lhs, rt_rhs);
+}
+test divTrunc {
+    const test_div_trunc = binary(divTrunc, .{ .compare = .approx_int });
+    try test_div_trunc.testFloats();
+    try test_div_trunc.testFloatVectors();
+}
+
+// workaround https://github.com/ziglang/zig/issues/22748
+// TODO: @TypeOf(@divFloor(lhs, rhs))
+inline fn divFloor(comptime Type: type, lhs: Type, rhs: Type) @TypeOf(lhs / rhs) {
+    if (@inComptime()) {
+        // workaround https://github.com/ziglang/zig/issues/22748
+        return @floor(lhs / rhs);
+    }
+    // workaround https://github.com/ziglang/zig/issues/22748
+    // workaround https://github.com/ziglang/zig/issues/22749
+    // TODO: return @divFloor(lhs, rhs);
+    var rt_lhs = lhs;
+    var rt_rhs = rhs;
+    _ = &rt_lhs;
+    _ = &rt_rhs;
+    return @divFloor(rt_lhs, rt_rhs);
+}
+test divFloor {
+    const test_div_floor = binary(divFloor, .{ .compare = .approx_int });
+    try test_div_floor.testFloats();
+    try test_div_floor.testFloatVectors();
+}
+
+// workaround https://github.com/ziglang/zig/issues/22748
+// TODO: @TypeOf(@rem(lhs, rhs))
+inline fn rem(comptime Type: type, lhs: Type, rhs: Type) Type {
+    if (@inComptime()) {
+        // workaround https://github.com/ziglang/zig/issues/22748
+        switch (@typeInfo(Type)) {
+            else => return if (rhs != 0) @rem(lhs, rhs) else nan(Type),
+            .vector => |info| {
+                var res: Type = undefined;
+                inline for (0..info.len) |i| res[i] = if (rhs[i] != 0) @rem(lhs[i], rhs[i]) else nan(Scalar(Type));
+                return res;
+            },
+        }
+    }
+    // workaround https://github.com/ziglang/zig/issues/22748
+    // TODO: return @rem(lhs, rhs);
+    var rt_rhs = rhs;
+    _ = &rt_rhs;
+    return @rem(lhs, rt_rhs);
+}
+test rem {
+    const test_rem = binary(rem, .{});
+    try test_rem.testFloats();
+    try test_rem.testFloatVectors();
+}
+
 inline fn bitNot(comptime Type: type, rhs: Type) @TypeOf(~rhs) {
     return ~rhs;
 }
@@ -11324,24 +11463,150 @@ test bitNot {
     try test_bit_not.testIntVectors();
 }
 
+inline fn clz(comptime Type: type, rhs: Type) @TypeOf(@clz(rhs)) {
+    return @clz(rhs);
+}
+test clz {
+    const test_clz = unary(clz, .{});
+    try test_clz.testInts();
+    try test_clz.testIntVectors();
+}
+
+inline fn sqrt(comptime Type: type, rhs: Type) @TypeOf(@sqrt(rhs)) {
+    return @sqrt(rhs);
+}
+test sqrt {
+    const test_sqrt = unary(sqrt, .{});
+    try test_sqrt.testFloats();
+    try test_sqrt.testFloatVectors();
+}
+
+inline fn sin(comptime Type: type, rhs: Type) @TypeOf(@sin(rhs)) {
+    return @sin(rhs);
+}
+test sin {
+    const test_sin = unary(sin, .{ .compare = .strict });
+    try test_sin.testFloats();
+    try test_sin.testFloatVectors();
+}
+
+inline fn cos(comptime Type: type, rhs: Type) @TypeOf(@cos(rhs)) {
+    return @cos(rhs);
+}
+test cos {
+    const test_cos = unary(cos, .{ .compare = .strict });
+    try test_cos.testFloats();
+    try test_cos.testFloatVectors();
+}
+
+inline fn tan(comptime Type: type, rhs: Type) @TypeOf(@tan(rhs)) {
+    return @tan(rhs);
+}
+test tan {
+    const test_tan = unary(tan, .{ .compare = .strict });
+    try test_tan.testFloats();
+    try test_tan.testFloatVectors();
+}
+
+inline fn exp(comptime Type: type, rhs: Type) @TypeOf(@exp(rhs)) {
+    return @exp(rhs);
+}
+test exp {
+    const test_exp = unary(exp, .{ .compare = .strict });
+    try test_exp.testFloats();
+    try test_exp.testFloatVectors();
+}
+
+inline fn exp2(comptime Type: type, rhs: Type) @TypeOf(@exp2(rhs)) {
+    return @exp2(rhs);
+}
+test exp2 {
+    const test_exp2 = unary(exp2, .{ .compare = .strict });
+    try test_exp2.testFloats();
+    try test_exp2.testFloatVectors();
+}
+
+inline fn log(comptime Type: type, rhs: Type) @TypeOf(@log(rhs)) {
+    return @log(rhs);
+}
+test log {
+    const test_log = unary(log, .{ .compare = .strict });
+    try test_log.testFloats();
+    try test_log.testFloatVectors();
+}
+
+inline fn log2(comptime Type: type, rhs: Type) @TypeOf(@log2(rhs)) {
+    return @log2(rhs);
+}
+test log2 {
+    const test_log2 = unary(log2, .{ .compare = .strict });
+    try test_log2.testFloats();
+    try test_log2.testFloatVectors();
+}
+
+inline fn log10(comptime Type: type, rhs: Type) @TypeOf(@log10(rhs)) {
+    return @log10(rhs);
+}
+test log10 {
+    const test_log10 = unary(log10, .{ .compare = .strict });
+    try test_log10.testFloats();
+    try test_log10.testFloatVectors();
+}
+
 inline fn abs(comptime Type: type, rhs: Type) @TypeOf(@abs(rhs)) {
     return @abs(rhs);
 }
 test abs {
-    const test_abs = unary(abs, .{ .strict = true });
+    const test_abs = unary(abs, .{ .compare = .strict });
     try test_abs.testInts();
     try test_abs.testIntVectors();
     try test_abs.testFloats();
     try test_abs.testFloatVectors();
 }
 
-inline fn clz(comptime Type: type, rhs: Type) @TypeOf(@clz(rhs)) {
-    return @clz(rhs);
+inline fn floor(comptime Type: type, rhs: Type) @TypeOf(@floor(rhs)) {
+    return @floor(rhs);
 }
-test clz {
-    const test_clz = unary(clz, .{});
-    try test_clz.testInts();
-    try test_clz.testIntVectors();
+test floor {
+    const test_floor = unary(floor, .{ .compare = .strict });
+    try test_floor.testFloats();
+    try test_floor.testFloatVectors();
+}
+
+inline fn ceil(comptime Type: type, rhs: Type) @TypeOf(@ceil(rhs)) {
+    return @ceil(rhs);
+}
+test ceil {
+    const test_ceil = unary(ceil, .{ .compare = .strict });
+    try test_ceil.testFloats();
+    try test_ceil.testFloatVectors();
+}
+
+inline fn round(comptime Type: type, rhs: Type) @TypeOf(@round(rhs)) {
+    return @round(rhs);
+}
+test round {
+    const test_round = unary(round, .{ .compare = .strict });
+    try test_round.testFloats();
+    try test_round.testFloatVectors();
+}
+
+inline fn trunc(comptime Type: type, rhs: Type) @TypeOf(@trunc(rhs)) {
+    return @trunc(rhs);
+}
+test trunc {
+    const test_trunc = unary(trunc, .{ .compare = .strict });
+    try test_trunc.testFloats();
+    try test_trunc.testFloatVectors();
+}
+
+inline fn negate(comptime Type: type, rhs: Type) @TypeOf(-rhs) {
+    return -rhs;
+}
+test negate {
+    const test_negate = unary(negate, .{ .compare = .strict });
+    try test_negate.testFloats();
+    try test_negate.testFloatVectors();
 }
 
 inline fn intCast(comptime Result: type, comptime Type: type, rhs: Type, comptime ct_rhs: Type) Result {
@@ -11407,7 +11672,7 @@ inline fn floatCast(comptime Result: type, comptime Type: type, rhs: Type, compt
     return @floatCast(rhs);
 }
 test floatCast {
-    const test_float_cast = cast(floatCast, .{ .strict = true });
+    const test_float_cast = cast(floatCast, .{ .compare = .strict });
     try test_float_cast.testFloats();
     try test_float_cast.testFloatVectors();
 }
@@ -11610,3 +11875,12 @@ test optionalsNotEqual {
     try test_optionals_not_equal.testInts();
     try test_optionals_not_equal.testFloats();
 }
+
+inline fn mulAdd(comptime Type: type, lhs: Type, rhs: Type) @TypeOf(@mulAdd(Type, lhs, rhs, rhs)) {
+    return @mulAdd(Type, lhs, rhs, rhs);
+}
+test mulAdd {
+    const test_mul_add = binary(mulAdd, .{ .compare = .approx });
+    try test_mul_add.testFloats();
+    try test_mul_add.testFloatVectors();
+}
test/behavior/floatop.zig
@@ -156,7 +156,13 @@ test "cmp f128" {
 }
 
 test "cmp f80/c_longdouble" {
-    if (true) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
+    if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
+    if (builtin.zig_backend == .stage2_c and builtin.cpu.arch.isArm()) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_llvm) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try testCmp(f80);
     try comptime testCmp(f80);
@@ -453,7 +459,7 @@ test "@sin with vectors" {
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
-    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try testSinWithVectors();
@@ -526,7 +532,7 @@ test "@cos with vectors" {
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
-    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try testCosWithVectors();
@@ -600,7 +606,7 @@ test "@tan with vectors" {
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
-    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try testTanWithVectors();
@@ -677,7 +683,7 @@ test "@exp with vectors" {
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
-    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try testExpWithVectors();
@@ -749,7 +755,7 @@ test "@exp2 with @vectors" {
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
-    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try testExp2WithVectors();
@@ -822,7 +828,7 @@ test "@log with @vectors" {
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
-    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     {
@@ -896,7 +902,7 @@ test "@log2 with vectors" {
     if (builtin.zig_backend == .stage2_llvm and
         builtin.cpu.arch == .aarch64 and
         builtin.os.tag == .windows) return error.SkipZigTest;
-    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
 
     try testLog2WithVectors();
     try comptime testLog2WithVectors();
@@ -967,7 +973,7 @@ test "@log10 with vectors" {
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
-    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try testLog10WithVectors();
@@ -1188,8 +1194,7 @@ test "@floor with vectors" {
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
-    if (builtin.zig_backend == .stage2_x86_64 and
-        !comptime std.Target.x86.featureSetHas(builtin.cpu.features, .sse4_1)) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
 
     try testFloorWithVectors();
     try comptime testFloorWithVectors();
@@ -1286,8 +1291,7 @@ test "@ceil with vectors" {
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
-    if (builtin.zig_backend == .stage2_x86_64 and
-        !comptime std.Target.x86.featureSetHas(builtin.cpu.features, .sse4_1)) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
 
     try testCeilWithVectors();
     try comptime testCeilWithVectors();
@@ -1384,8 +1388,7 @@ test "@trunc with vectors" {
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
-    if (builtin.zig_backend == .stage2_x86_64 and
-        !comptime std.Target.x86.featureSetHas(builtin.cpu.features, .sse4_1)) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
 
     try testTruncWithVectors();
     try comptime testTruncWithVectors();
test/behavior/muladd.zig
@@ -2,16 +2,12 @@ const std = @import("std");
 const builtin = @import("builtin");
 const expect = std.testing.expect;
 
-const no_x86_64_hardware_fma_support = builtin.zig_backend == .stage2_x86_64 and
-    !std.Target.x86.featureSetHas(builtin.cpu.features, .fma);
-
 test "@mulAdd" {
-    if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
-
-    if (no_x86_64_hardware_fma_support) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try comptime testMulAdd();
     try testMulAdd();
@@ -110,10 +106,10 @@ fn vector16() !void {
 
 test "vector f16" {
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
-    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try comptime vector16();
@@ -135,11 +131,11 @@ fn vector32() !void {
 
 test "vector f32" {
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
-    if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
-    if (no_x86_64_hardware_fma_support) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try comptime vector32();
     try vector32();
@@ -160,11 +156,11 @@ fn vector64() !void {
 
 test "vector f64" {
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
-    if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
-    if (no_x86_64_hardware_fma_support) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try comptime vector64();
     try vector64();
@@ -184,12 +180,12 @@ fn vector80() !void {
 
 test "vector f80" {
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
-    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_c and builtin.cpu.arch.isArm()) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try comptime vector80();
@@ -211,12 +207,12 @@ fn vector128() !void {
 
 test "vector f128" {
     if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
-    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_c and builtin.cpu.arch.isArm()) return error.SkipZigTest;
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
 
     try comptime vector128();
test/behavior/vector.zig
@@ -102,7 +102,7 @@ test "vector float operators" {
     if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
     if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
     if (builtin.zig_backend == .stage2_c and builtin.cpu.arch.isArm()) return error.SkipZigTest;
-    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
+    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest;
 
     if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .aarch64) {
         // Triggers an assertion with LLVM 18:
build.zig
@@ -450,7 +450,7 @@ pub fn build(b: *std.Build) !void {
         .skip_non_native = skip_non_native,
         .skip_libc = skip_libc,
         .use_llvm = use_llvm,
-        .max_rss = 1.25 * 1024 * 1024 * 1024,
+        .max_rss = 2 * 1024 * 1024 * 1024,
     }));
 
     test_modules_step.dependOn(tests.addModuleTests(b, .{