| ... | ... | @@ -112419,7 +112419,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 112419 | 112419 | .dst_temps = .{ .mem, .unused }, |
| 112420 | 112420 | .clobbers = .{ .eflags = true }, |
| 112421 | 112421 | .each = .{ .once = &.{ |
| 112422 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 112422 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 112423 | 112423 | .{ .@"0:", .vp_d, .movsxb, .tmp1y, .memi(.src0q, .tmp0), ._, ._ }, |
| 112424 | 112424 | .{ ._, .v_ps, .cvtdq2, .tmp1y, .tmp1y, ._, ._ }, |
| 112425 | 112425 | .{ ._, .v_, .cvtps2ph, .memsi(.dst0x, .@"2", .tmp0), .tmp1y, .rm(.{}), ._ }, |
| ... | ... | @@ -112449,7 +112449,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 112449 | 112449 | .dst_temps = .{ .mem, .unused }, |
| 112450 | 112450 | .clobbers = .{ .eflags = true }, |
| 112451 | 112451 | .each = .{ .once = &.{ |
| 112452 | | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_size), ._, ._ }, |
| 112452 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size_up_4), ._, ._ }, |
| 112453 | 112453 | .{ .@"0:", .vp_d, .movsxb, .tmp1x, .memi(.src0d, .tmp0), ._, ._ }, |
| 112454 | 112454 | .{ ._, .v_ps, .cvtdq2, .tmp1x, .tmp1x, ._, ._ }, |
| 112455 | 112455 | .{ ._, .v_, .cvtps2ph, .memsi(.dst0q, .@"2", .tmp0), .tmp1x, .rm(.{}), ._ }, |
| ... | ... | @@ -112479,7 +112479,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 112479 | 112479 | .dst_temps = .{ .mem, .unused }, |
| 112480 | 112480 | .clobbers = .{ .eflags = true }, |
| 112481 | 112481 | .each = .{ .once = &.{ |
| 112482 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 112482 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 112483 | 112483 | .{ .@"0:", .vp_d, .movzxb, .tmp1y, .memi(.src0q, .tmp0), ._, ._ }, |
| 112484 | 112484 | .{ ._, .v_ps, .cvtdq2, .tmp1y, .tmp1y, ._, ._ }, |
| 112485 | 112485 | .{ ._, .v_, .cvtps2ph, .memsi(.dst0x, .@"2", .tmp0), .tmp1y, .rm(.{}), ._ }, |
| ... | ... | @@ -112509,7 +112509,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 112509 | 112509 | .dst_temps = .{ .mem, .unused }, |
| 112510 | 112510 | .clobbers = .{ .eflags = true }, |
| 112511 | 112511 | .each = .{ .once = &.{ |
| 112512 | | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_size), ._, ._ }, |
| 112512 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size_up_4), ._, ._ }, |
| 112513 | 112513 | .{ .@"0:", .vp_d, .movzxb, .tmp1x, .memi(.src0d, .tmp0), ._, ._ }, |
| 112514 | 112514 | .{ ._, .v_ps, .cvtdq2, .tmp1x, .tmp1x, ._, ._ }, |
| 112515 | 112515 | .{ ._, .v_, .cvtps2ph, .memsi(.dst0q, .@"2", .tmp0), .tmp1x, .rm(.{}), ._ }, |
| ... | ... | @@ -113103,7 +113103,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 113103 | 113103 | .dst_temps = .{ .mem, .unused }, |
| 113104 | 113104 | .clobbers = .{ .eflags = true }, |
| 113105 | 113105 | .each = .{ .once = &.{ |
| 113106 | | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_size), ._, ._ }, |
| 113106 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size_up_16), ._, ._ }, |
| 113107 | 113107 | .{ .@"0:", .vp_d, .movsxw, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| 113108 | 113108 | .{ ._, .v_ps, .cvtdq2, .tmp1y, .tmp1y, ._, ._ }, |
| 113109 | 113109 | .{ ._, .v_, .cvtps2ph, .memi(.dst0x, .tmp0), .tmp1y, .rm(.{}), ._ }, |
| ... | ... | @@ -113133,7 +113133,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 113133 | 113133 | .dst_temps = .{ .mem, .unused }, |
| 113134 | 113134 | .clobbers = .{ .eflags = true }, |
| 113135 | 113135 | .each = .{ .once = &.{ |
| 113136 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 113136 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 113137 | 113137 | .{ .@"0:", .vp_d, .movsxw, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 113138 | 113138 | .{ ._, .v_ps, .cvtdq2, .tmp1x, .tmp1x, ._, ._ }, |
| 113139 | 113139 | .{ ._, .v_, .cvtps2ph, .memi(.dst0q, .tmp0), .tmp1x, .rm(.{}), ._ }, |
| ... | ... | @@ -113163,7 +113163,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 113163 | 113163 | .dst_temps = .{ .mem, .unused }, |
| 113164 | 113164 | .clobbers = .{ .eflags = true }, |
| 113165 | 113165 | .each = .{ .once = &.{ |
| 113166 | | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_size), ._, ._ }, |
| 113166 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size_up_16), ._, ._ }, |
| 113167 | 113167 | .{ .@"0:", .vp_d, .movzxw, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| 113168 | 113168 | .{ ._, .v_ps, .cvtdq2, .tmp1y, .tmp1y, ._, ._ }, |
| 113169 | 113169 | .{ ._, .v_, .cvtps2ph, .memi(.dst0x, .tmp0), .tmp1y, .rm(.{}), ._ }, |
| ... | ... | @@ -113193,7 +113193,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 113193 | 113193 | .dst_temps = .{ .mem, .unused }, |
| 113194 | 113194 | .clobbers = .{ .eflags = true }, |
| 113195 | 113195 | .each = .{ .once = &.{ |
| 113196 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 113196 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 113197 | 113197 | .{ .@"0:", .vp_d, .movzxw, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 113198 | 113198 | .{ ._, .v_ps, .cvtdq2, .tmp1x, .tmp1x, ._, ._ }, |
| 113199 | 113199 | .{ ._, .v_, .cvtps2ph, .memi(.dst0q, .tmp0), .tmp1x, .rm(.{}), ._ }, |
| ... | ... | @@ -113503,7 +113503,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 113503 | 113503 | .dst_temps = .{ .mem, .unused }, |
| 113504 | 113504 | .clobbers = .{ .eflags = true }, |
| 113505 | 113505 | .each = .{ .once = &.{ |
| 113506 | | .{ ._, ._, .mov, .tmp0d, .sia(-16, .dst0, .add_size), ._, ._ }, |
| 113506 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .dst0, .add_unaligned_size_up_16), ._, ._ }, |
| 113507 | 113507 | .{ .@"0:", .v_ps, .cvtdq2, .tmp1y, .memsi(.src0y, .@"2", .tmp0), ._, ._ }, |
| 113508 | 113508 | .{ ._, .v_, .cvtps2ph, .memi(.dst0x, .tmp0), .tmp1y, .rm(.{}), ._ }, |
| 113509 | 113509 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| ... | ... | @@ -113532,7 +113532,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 113532 | 113532 | .dst_temps = .{ .mem, .unused }, |
| 113533 | 113533 | .clobbers = .{ .eflags = true }, |
| 113534 | 113534 | .each = .{ .once = &.{ |
| 113535 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .dst0, .add_size), ._, ._ }, |
| 113535 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .dst0, .add_unaligned_size_up_8), ._, ._ }, |
| 113536 | 113536 | .{ .@"0:", .v_ps, .cvtdq2, .tmp1x, .memsi(.src0x, .@"2", .tmp0), ._, ._ }, |
| 113537 | 113537 | .{ ._, .v_, .cvtps2ph, .memi(.dst0q, .tmp0), .tmp1x, .rm(.{}), ._ }, |
| 113538 | 113538 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| ... | ... | @@ -115546,7 +115546,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 115546 | 115546 | .dst_temps = .{ .mem, .unused }, |
| 115547 | 115547 | .clobbers = .{ .eflags = true }, |
| 115548 | 115548 | .each = .{ .once = &.{ |
| 115549 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 115549 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 115550 | 115550 | .{ .@"0:", .vp_d, .movsxb, .tmp1y, .memi(.src0q, .tmp0), ._, ._ }, |
| 115551 | 115551 | .{ ._, .v_ps, .cvtdq2, .tmp1y, .tmp1y, ._, ._ }, |
| 115552 | 115552 | .{ ._, .v_ps, .mova, .memsi(.dst0y, .@"4", .tmp0), .tmp1y, ._, ._ }, |
| ... | ... | @@ -115576,7 +115576,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 115576 | 115576 | .dst_temps = .{ .mem, .unused }, |
| 115577 | 115577 | .clobbers = .{ .eflags = true }, |
| 115578 | 115578 | .each = .{ .once = &.{ |
| 115579 | | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_size), ._, ._ }, |
| 115579 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size_up_4), ._, ._ }, |
| 115580 | 115580 | .{ .@"0:", .vp_d, .movsxb, .tmp1x, .memi(.src0d, .tmp0), ._, ._ }, |
| 115581 | 115581 | .{ ._, .v_ps, .cvtdq2, .tmp1x, .tmp1x, ._, ._ }, |
| 115582 | 115582 | .{ ._, .v_ps, .mova, .memsi(.dst0x, .@"4", .tmp0), .tmp1x, ._, ._ }, |
| ... | ... | @@ -115606,7 +115606,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 115606 | 115606 | .dst_temps = .{ .mem, .unused }, |
| 115607 | 115607 | .clobbers = .{ .eflags = true }, |
| 115608 | 115608 | .each = .{ .once = &.{ |
| 115609 | | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_size), ._, ._ }, |
| 115609 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size_up_4), ._, ._ }, |
| 115610 | 115610 | .{ .@"0:", .p_d, .movsxb, .tmp1x, .memi(.src0d, .tmp0), ._, ._ }, |
| 115611 | 115611 | .{ ._, ._ps, .cvtdq2, .tmp1x, .tmp1x, ._, ._ }, |
| 115612 | 115612 | .{ ._, ._ps, .mova, .memsi(.dst0x, .@"4", .tmp0), .tmp1x, ._, ._ }, |
| ... | ... | @@ -115636,7 +115636,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 115636 | 115636 | .dst_temps = .{ .mem, .unused }, |
| 115637 | 115637 | .clobbers = .{ .eflags = true }, |
| 115638 | 115638 | .each = .{ .once = &.{ |
| 115639 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 115639 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 115640 | 115640 | .{ .@"0:", .vp_d, .movzxb, .tmp1y, .memi(.src0q, .tmp0), ._, ._ }, |
| 115641 | 115641 | .{ ._, .v_ps, .cvtdq2, .tmp1y, .tmp1y, ._, ._ }, |
| 115642 | 115642 | .{ ._, .v_ps, .mova, .memsi(.dst0y, .@"4", .tmp0), .tmp1y, ._, ._ }, |
| ... | ... | @@ -115666,7 +115666,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 115666 | 115666 | .dst_temps = .{ .mem, .unused }, |
| 115667 | 115667 | .clobbers = .{ .eflags = true }, |
| 115668 | 115668 | .each = .{ .once = &.{ |
| 115669 | | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_size), ._, ._ }, |
| 115669 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size_up_4), ._, ._ }, |
| 115670 | 115670 | .{ .@"0:", .vp_d, .movzxb, .tmp1x, .memi(.src0d, .tmp0), ._, ._ }, |
| 115671 | 115671 | .{ ._, .v_ps, .cvtdq2, .tmp1x, .tmp1x, ._, ._ }, |
| 115672 | 115672 | .{ ._, .v_ps, .mova, .memsi(.dst0x, .@"4", .tmp0), .tmp1x, ._, ._ }, |
| ... | ... | @@ -115696,7 +115696,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 115696 | 115696 | .dst_temps = .{ .mem, .unused }, |
| 115697 | 115697 | .clobbers = .{ .eflags = true }, |
| 115698 | 115698 | .each = .{ .once = &.{ |
| 115699 | | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_size), ._, ._ }, |
| 115699 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size_up_4), ._, ._ }, |
| 115700 | 115700 | .{ .@"0:", .p_d, .movzxb, .tmp1x, .memi(.src0d, .tmp0), ._, ._ }, |
| 115701 | 115701 | .{ ._, ._ps, .cvtdq2, .tmp1x, .tmp1x, ._, ._ }, |
| 115702 | 115702 | .{ ._, ._ps, .mova, .memsi(.dst0x, .@"4", .tmp0), .tmp1x, ._, ._ }, |
| ... | ... | @@ -116052,7 +116052,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 116052 | 116052 | .dst_temps = .{ .mem, .unused }, |
| 116053 | 116053 | .clobbers = .{ .eflags = true }, |
| 116054 | 116054 | .each = .{ .once = &.{ |
| 116055 | | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_size), ._, ._ }, |
| 116055 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size_up_16), ._, ._ }, |
| 116056 | 116056 | .{ .@"0:", .vp_d, .movsxw, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| 116057 | 116057 | .{ ._, .v_ps, .cvtdq2, .tmp1y, .tmp1y, ._, ._ }, |
| 116058 | 116058 | .{ ._, .v_ps, .mova, .memsi(.dst0y, .@"2", .tmp0), .tmp1y, ._, ._ }, |
| ... | ... | @@ -116082,7 +116082,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 116082 | 116082 | .dst_temps = .{ .mem, .unused }, |
| 116083 | 116083 | .clobbers = .{ .eflags = true }, |
| 116084 | 116084 | .each = .{ .once = &.{ |
| 116085 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 116085 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 116086 | 116086 | .{ .@"0:", .vp_d, .movsxw, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 116087 | 116087 | .{ ._, .v_ps, .cvtdq2, .tmp1x, .tmp1x, ._, ._ }, |
| 116088 | 116088 | .{ ._, .v_ps, .mova, .memsi(.dst0x, .@"2", .tmp0), .tmp1x, ._, ._ }, |
| ... | ... | @@ -116112,7 +116112,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 116112 | 116112 | .dst_temps = .{ .mem, .unused }, |
| 116113 | 116113 | .clobbers = .{ .eflags = true }, |
| 116114 | 116114 | .each = .{ .once = &.{ |
| 116115 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 116115 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 116116 | 116116 | .{ .@"0:", .p_d, .movsxw, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 116117 | 116117 | .{ ._, ._ps, .cvtdq2, .tmp1x, .tmp1x, ._, ._ }, |
| 116118 | 116118 | .{ ._, ._ps, .mova, .memsi(.dst0x, .@"2", .tmp0), .tmp1x, ._, ._ }, |
| ... | ... | @@ -116142,7 +116142,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 116142 | 116142 | .dst_temps = .{ .mem, .unused }, |
| 116143 | 116143 | .clobbers = .{ .eflags = true }, |
| 116144 | 116144 | .each = .{ .once = &.{ |
| 116145 | | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_size), ._, ._ }, |
| 116145 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size_up_16), ._, ._ }, |
| 116146 | 116146 | .{ .@"0:", .vp_d, .movzxw, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| 116147 | 116147 | .{ ._, .v_ps, .cvtdq2, .tmp1y, .tmp1y, ._, ._ }, |
| 116148 | 116148 | .{ ._, .v_ps, .mova, .memsi(.dst0y, .@"2", .tmp0), .tmp1y, ._, ._ }, |
| ... | ... | @@ -116172,7 +116172,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 116172 | 116172 | .dst_temps = .{ .mem, .unused }, |
| 116173 | 116173 | .clobbers = .{ .eflags = true }, |
| 116174 | 116174 | .each = .{ .once = &.{ |
| 116175 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 116175 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 116176 | 116176 | .{ .@"0:", .vp_d, .movzxw, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 116177 | 116177 | .{ ._, .v_ps, .cvtdq2, .tmp1x, .tmp1x, ._, ._ }, |
| 116178 | 116178 | .{ ._, .v_ps, .mova, .memsi(.dst0x, .@"2", .tmp0), .tmp1x, ._, ._ }, |
| ... | ... | @@ -116202,7 +116202,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 116202 | 116202 | .dst_temps = .{ .mem, .unused }, |
| 116203 | 116203 | .clobbers = .{ .eflags = true }, |
| 116204 | 116204 | .each = .{ .once = &.{ |
| 116205 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 116205 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 116206 | 116206 | .{ .@"0:", .p_d, .movzxw, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 116207 | 116207 | .{ ._, ._ps, .cvtdq2, .tmp1x, .tmp1x, ._, ._ }, |
| 116208 | 116208 | .{ ._, ._ps, .mova, .memsi(.dst0x, .@"2", .tmp0), .tmp1x, ._, ._ }, |
| ... | ... | @@ -116392,7 +116392,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 116392 | 116392 | .dst_temps = .{ .mem, .unused }, |
| 116393 | 116393 | .clobbers = .{ .eflags = true }, |
| 116394 | 116394 | .each = .{ .once = &.{ |
| 116395 | | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_size), ._, ._ }, |
| 116395 | .{ ._, ._, .mov, .tmp0d, .sia(-32, .src0, .add_unaligned_size_up_32), ._, ._ }, |
| 116396 | 116396 | .{ .@"0:", .v_ps, .cvtdq2, .tmp1y, .memi(.src0y, .tmp0), ._, ._ }, |
| 116397 | 116397 | .{ ._, .v_ps, .mova, .memi(.dst0y, .tmp0), .tmp1y, ._, ._ }, |
| 116398 | 116398 | .{ ._, ._, .sub, .tmp0d, .si(32), ._, ._ }, |
| ... | ... | @@ -116421,7 +116421,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 116421 | 116421 | .dst_temps = .{ .mem, .unused }, |
| 116422 | 116422 | .clobbers = .{ .eflags = true }, |
| 116423 | 116423 | .each = .{ .once = &.{ |
| 116424 | | .{ ._, ._, .mov, .tmp0d, .sia(-16, .dst0, .add_size), ._, ._ }, |
| 116424 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .dst0, .add_unaligned_size_up_16), ._, ._ }, |
| 116425 | 116425 | .{ .@"0:", .v_ps, .cvtdq2, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 116426 | 116426 | .{ ._, .v_ps, .mova, .memi(.dst0x, .tmp0), .tmp1x, ._, ._ }, |
| 116427 | 116427 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| ... | ... | @@ -116450,7 +116450,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 116450 | 116450 | .dst_temps = .{ .mem, .unused }, |
| 116451 | 116451 | .clobbers = .{ .eflags = true }, |
| 116452 | 116452 | .each = .{ .once = &.{ |
| 116453 | | .{ ._, ._, .mov, .tmp0d, .sia(-16, .dst0, .add_size), ._, ._ }, |
| 116453 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .dst0, .add_unaligned_size_up_16), ._, ._ }, |
| 116454 | 116454 | .{ .@"0:", ._ps, .cvtdq2, .tmp1x, .memi(.src0x, .tmp0), ._, ._ }, |
| 116455 | 116455 | .{ ._, ._ps, .mova, .memi(.dst0x, .tmp0), .tmp1x, ._, ._ }, |
| 116456 | 116456 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| ... | ... | @@ -118066,7 +118066,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 118066 | 118066 | .dst_temps = .{ .mem, .unused }, |
| 118067 | 118067 | .clobbers = .{ .eflags = true }, |
| 118068 | 118068 | .each = .{ .once = &.{ |
| 118069 | | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_size), ._, ._ }, |
| 118069 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size_up_4), ._, ._ }, |
| 118070 | 118070 | .{ .@"0:", .vp_d, .movsxb, .tmp1x, .memi(.src0d, .tmp0), ._, ._ }, |
| 118071 | 118071 | .{ ._, .v_pd, .cvtdq2, .tmp1y, .tmp1x, ._, ._ }, |
| 118072 | 118072 | .{ ._, .v_pd, .mova, .memsi(.dst0y, .@"8", .tmp0), .tmp1y, ._, ._ }, |
| ... | ... | @@ -118096,7 +118096,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 118096 | 118096 | .dst_temps = .{ .mem, .unused }, |
| 118097 | 118097 | .clobbers = .{ .eflags = true }, |
| 118098 | 118098 | .each = .{ .once = &.{ |
| 118099 | | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_size), ._, ._ }, |
| 118099 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size_up_2), ._, ._ }, |
| 118100 | 118100 | .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| 118101 | 118101 | .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memi(.src0w, .tmp0), .ui(0) }, |
| 118102 | 118102 | .{ ._, .vp_d, .movsxb, .tmp1x, .tmp1d, ._, ._ }, |
| ... | ... | @@ -118128,7 +118128,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 118128 | 118128 | .dst_temps = .{ .mem, .unused }, |
| 118129 | 118129 | .clobbers = .{ .eflags = true }, |
| 118130 | 118130 | .each = .{ .once = &.{ |
| 118131 | | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_size), ._, ._ }, |
| 118131 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size_up_2), ._, ._ }, |
| 118132 | 118132 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 118133 | 118133 | .{ ._, .p_w, .insr, .tmp1x, .memi(.src0w, .tmp0), .ui(0), ._ }, |
| 118134 | 118134 | .{ ._, .p_d, .movsxb, .tmp1x, .tmp1d, ._, ._ }, |
| ... | ... | @@ -118160,7 +118160,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 118160 | 118160 | .dst_temps = .{ .mem, .unused }, |
| 118161 | 118161 | .clobbers = .{ .eflags = true }, |
| 118162 | 118162 | .each = .{ .once = &.{ |
| 118163 | | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_size), ._, ._ }, |
| 118163 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size_up_4), ._, ._ }, |
| 118164 | 118164 | .{ .@"0:", .vp_d, .movzxb, .tmp1x, .memi(.src0d, .tmp0), ._, ._ }, |
| 118165 | 118165 | .{ ._, .v_pd, .cvtdq2, .tmp1y, .tmp1x, ._, ._ }, |
| 118166 | 118166 | .{ ._, .v_pd, .mova, .memsi(.dst0y, .@"8", .tmp0), .tmp1y, ._, ._ }, |
| ... | ... | @@ -118190,7 +118190,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 118190 | 118190 | .dst_temps = .{ .mem, .unused }, |
| 118191 | 118191 | .clobbers = .{ .eflags = true }, |
| 118192 | 118192 | .each = .{ .once = &.{ |
| 118193 | | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_size), ._, ._ }, |
| 118193 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size_up_2), ._, ._ }, |
| 118194 | 118194 | .{ .@"0:", .vp_, .xor, .tmp1x, .tmp1x, .tmp1x, ._ }, |
| 118195 | 118195 | .{ ._, .vp_w, .insr, .tmp1x, .tmp1x, .memi(.src0w, .tmp0), .ui(0) }, |
| 118196 | 118196 | .{ ._, .vp_d, .movzxb, .tmp1x, .tmp1d, ._, ._ }, |
| ... | ... | @@ -118222,7 +118222,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 118222 | 118222 | .dst_temps = .{ .mem, .unused }, |
| 118223 | 118223 | .clobbers = .{ .eflags = true }, |
| 118224 | 118224 | .each = .{ .once = &.{ |
| 118225 | | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_size), ._, ._ }, |
| 118225 | .{ ._, ._, .mov, .tmp0d, .sia(-2, .src0, .add_unaligned_size_up_2), ._, ._ }, |
| 118226 | 118226 | .{ .@"0:", .p_, .xor, .tmp1x, .tmp1x, ._, ._ }, |
| 118227 | 118227 | .{ ._, .p_w, .insr, .tmp1x, .memi(.src0w, .tmp0), .ui(0), ._ }, |
| 118228 | 118228 | .{ ._, .p_d, .movzxb, .tmp1x, .tmp1d, ._, ._ }, |
| ... | ... | @@ -118704,7 +118704,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 118704 | 118704 | .dst_temps = .{ .mem, .unused }, |
| 118705 | 118705 | .clobbers = .{ .eflags = true }, |
| 118706 | 118706 | .each = .{ .once = &.{ |
| 118707 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 118707 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 118708 | 118708 | .{ .@"0:", .vp_d, .movsxw, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 118709 | 118709 | .{ ._, .v_pd, .cvtdq2, .tmp1y, .tmp1x, ._, ._ }, |
| 118710 | 118710 | .{ ._, .v_pd, .mova, .memsi(.dst0y, .@"4", .tmp0), .tmp1y, ._, ._ }, |
| ... | ... | @@ -118734,7 +118734,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 118734 | 118734 | .dst_temps = .{ .mem, .unused }, |
| 118735 | 118735 | .clobbers = .{ .eflags = true }, |
| 118736 | 118736 | .each = .{ .once = &.{ |
| 118737 | | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_size), ._, ._ }, |
| 118737 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size_up_4), ._, ._ }, |
| 118738 | 118738 | .{ .@"0:", .v_d, .mov, .tmp1x, .memi(.src0d, .tmp0), ._, ._ }, |
| 118739 | 118739 | .{ ._, .vp_d, .movsxw, .tmp1x, .tmp1q, ._, ._ }, |
| 118740 | 118740 | .{ ._, .v_pd, .cvtdq2, .tmp1x, .tmp1q, ._, ._ }, |
| ... | ... | @@ -118765,7 +118765,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 118765 | 118765 | .dst_temps = .{ .mem, .unused }, |
| 118766 | 118766 | .clobbers = .{ .eflags = true }, |
| 118767 | 118767 | .each = .{ .once = &.{ |
| 118768 | | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_size), ._, ._ }, |
| 118768 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size_up_4), ._, ._ }, |
| 118769 | 118769 | .{ .@"0:", ._d, .mov, .tmp1x, .memi(.src0d, .tmp0), ._, ._ }, |
| 118770 | 118770 | .{ ._, .p_d, .movsxw, .tmp1x, .tmp1q, ._, ._ }, |
| 118771 | 118771 | .{ ._, ._pd, .cvtdq2, .tmp1x, .tmp1q, ._, ._ }, |
| ... | ... | @@ -118796,7 +118796,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 118796 | 118796 | .dst_temps = .{ .mem, .unused }, |
| 118797 | 118797 | .clobbers = .{ .eflags = true }, |
| 118798 | 118798 | .each = .{ .once = &.{ |
| 118799 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 118799 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 118800 | 118800 | .{ .@"0:", .vp_d, .movzxw, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 118801 | 118801 | .{ ._, .v_pd, .cvtdq2, .tmp1y, .tmp1x, ._, ._ }, |
| 118802 | 118802 | .{ ._, .v_pd, .mova, .memsi(.dst0y, .@"4", .tmp0), .tmp1y, ._, ._ }, |
| ... | ... | @@ -118826,7 +118826,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 118826 | 118826 | .dst_temps = .{ .mem, .unused }, |
| 118827 | 118827 | .clobbers = .{ .eflags = true }, |
| 118828 | 118828 | .each = .{ .once = &.{ |
| 118829 | | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_size), ._, ._ }, |
| 118829 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size_up_4), ._, ._ }, |
| 118830 | 118830 | .{ .@"0:", .v_d, .mov, .tmp1x, .memi(.src0d, .tmp0), ._, ._ }, |
| 118831 | 118831 | .{ ._, .vp_d, .movzxw, .tmp1x, .tmp1q, ._, ._ }, |
| 118832 | 118832 | .{ ._, .v_pd, .cvtdq2, .tmp1x, .tmp1q, ._, ._ }, |
| ... | ... | @@ -118857,7 +118857,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 118857 | 118857 | .dst_temps = .{ .mem, .unused }, |
| 118858 | 118858 | .clobbers = .{ .eflags = true }, |
| 118859 | 118859 | .each = .{ .once = &.{ |
| 118860 | | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_size), ._, ._ }, |
| 118860 | .{ ._, ._, .mov, .tmp0d, .sia(-4, .src0, .add_unaligned_size_up_4), ._, ._ }, |
| 118861 | 118861 | .{ .@"0:", ._d, .mov, .tmp1x, .memi(.src0d, .tmp0), ._, ._ }, |
| 118862 | 118862 | .{ ._, .p_d, .movzxw, .tmp1x, .tmp1q, ._, ._ }, |
| 118863 | 118863 | .{ ._, ._pd, .cvtdq2, .tmp1x, .tmp1q, ._, ._ }, |
| ... | ... | @@ -119110,7 +119110,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 119110 | 119110 | .dst_temps = .{ .mem, .unused }, |
| 119111 | 119111 | .clobbers = .{ .eflags = true }, |
| 119112 | 119112 | .each = .{ .once = &.{ |
| 119113 | | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_size), ._, ._ }, |
| 119113 | .{ ._, ._, .mov, .tmp0d, .sia(-16, .src0, .add_unaligned_size_up_16), ._, ._ }, |
| 119114 | 119114 | .{ .@"0:", .v_pd, .cvtdq2, .tmp1y, .memi(.src0x, .tmp0), ._, ._ }, |
| 119115 | 119115 | .{ ._, .v_pd, .mova, .memsi(.dst0y, .@"2", .tmp0), .tmp1y, ._, ._ }, |
| 119116 | 119116 | .{ ._, ._, .sub, .tmp0d, .si(16), ._, ._ }, |
| ... | ... | @@ -119139,7 +119139,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 119139 | 119139 | .dst_temps = .{ .mem, .unused }, |
| 119140 | 119140 | .clobbers = .{ .eflags = true }, |
| 119141 | 119141 | .each = .{ .once = &.{ |
| 119142 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 119142 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 119143 | 119143 | .{ .@"0:", .v_pd, .cvtdq2, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 119144 | 119144 | .{ ._, .v_pd, .mova, .memsi(.dst0x, .@"2", .tmp0), .tmp1x, ._, ._ }, |
| 119145 | 119145 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| ... | ... | @@ -119168,7 +119168,7 @@ fn genBody(cg: *CodeGen, body: []const Air.Inst.Index) InnerError!void { |
| 119168 | 119168 | .dst_temps = .{ .mem, .unused }, |
| 119169 | 119169 | .clobbers = .{ .eflags = true }, |
| 119170 | 119170 | .each = .{ .once = &.{ |
| 119171 | | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_size), ._, ._ }, |
| 119171 | .{ ._, ._, .mov, .tmp0d, .sia(-8, .src0, .add_unaligned_size_up_8), ._, ._ }, |
| 119172 | 119172 | .{ .@"0:", ._pd, .cvtdq2, .tmp1x, .memi(.src0q, .tmp0), ._, ._ }, |
| 119173 | 119173 | .{ ._, ._pd, .mova, .memsi(.dst0x, .@"2", .tmp0), .tmp1x, ._, ._ }, |
| 119174 | 119174 | .{ ._, ._, .sub, .tmp0d, .si(8), ._, ._ }, |
| ... | ... | @@ -193468,7 +193468,7 @@ const Select = struct { |
| 193468 | 193468 | ref: Ref, |
| 193469 | 193469 | scale: Memory.Scale = .@"1", |
| 193470 | 193470 | } = .{ .ref = .none }, |
| 193471 | | unused: u2 = 0, |
| 193471 | unused: u1 = 0, |
| 193472 | 193472 | }, |
| 193473 | 193473 | imm: i32 = 0, |
| 193474 | 193474 | |
| ... | ... | @@ -193481,7 +193481,7 @@ const Select = struct { |
| 193481 | 193481 | lea, |
| 193482 | 193482 | mem, |
| 193483 | 193483 | }; |
| 193484 | | const Adjust = packed struct(u11) { |
| 193484 | const Adjust = packed struct(u12) { |
| 193485 | 193485 | sign: enum(u1) { neg, pos }, |
| 193486 | 193486 | lhs: enum(u6) { |
| 193487 | 193487 | none, |
| ... | ... | @@ -193518,7 +193518,7 @@ const Select = struct { |
| 193518 | 193518 | umax_shr_src1, |
| 193519 | 193519 | repeat, |
| 193520 | 193520 | }, |
| 193521 | | op: enum(u2) { mul, div, div_8_down, rem_8_mul }, |
| 193521 | op: enum(u3) { mul, div, div_8_down, rem_8_mul, up_2_mul, up_32_mul }, |
| 193522 | 193522 | rhs: Memory.Scale, |
| 193523 | 193523 | |
| 193524 | 193524 | const none: Adjust = .{ .sign = .pos, .lhs = .none, .op = .mul, .rhs = .@"1" }; |
| ... | ... | @@ -193539,6 +193539,11 @@ const Select = struct { |
| 193539 | 193539 | const add_delta_elem_size: Adjust = .{ .sign = .pos, .lhs = .delta_elem_size, .op = .mul, .rhs = .@"1" }; |
| 193540 | 193540 | const add_delta_elem_size_div_8: Adjust = .{ .sign = .pos, .lhs = .delta_elem_size, .op = .div, .rhs = .@"8" }; |
| 193541 | 193541 | const add_unaligned_size: Adjust = .{ .sign = .pos, .lhs = .unaligned_size, .op = .mul, .rhs = .@"1" }; |
| 193542 | const add_unaligned_size_up_2: Adjust = .{ .sign = .pos, .lhs = .unaligned_size, .op = .up_2_mul, .rhs = .@"1" }; |
| 193543 | const add_unaligned_size_up_4: Adjust = .{ .sign = .pos, .lhs = .unaligned_size, .op = .up_2_mul, .rhs = .@"2" }; |
| 193544 | const add_unaligned_size_up_8: Adjust = .{ .sign = .pos, .lhs = .unaligned_size, .op = .up_2_mul, .rhs = .@"4" }; |
| 193545 | const add_unaligned_size_up_16: Adjust = .{ .sign = .pos, .lhs = .unaligned_size, .op = .up_2_mul, .rhs = .@"8" }; |
| 193546 | const add_unaligned_size_up_32: Adjust = .{ .sign = .pos, .lhs = .unaligned_size, .op = .up_32_mul, .rhs = .@"1" }; |
| 193542 | 193547 | const sub_unaligned_size: Adjust = .{ .sign = .neg, .lhs = .unaligned_size, .op = .mul, .rhs = .@"1" }; |
| 193543 | 193548 | const add_unaligned_size_add_elem_size: Adjust = .{ .sign = .pos, .lhs = .unaligned_size_add_elem_size, .op = .mul, .rhs = .@"1" }; |
| 193544 | 193549 | const add_unaligned_size_sub_elem_size: Adjust = .{ .sign = .pos, .lhs = .unaligned_size_sub_elem_size, .op = .mul, .rhs = .@"1" }; |
| ... | ... | @@ -194551,7 +194556,9 @@ const Select = struct { |
| 194551 | 194556 | }, |
| 194552 | 194557 | .div => @shrExact(lhs, rhs), |
| 194553 | 194558 | .div_8_down => lhs >> 3 & @as(SignedImm, -1) << rhs, |
| 194554 | | .rem_8_mul => lhs & (@as(SignedImm, 1) << @intCast(@as(u3, 3) + rhs)) - 1, |
| 194559 | .rem_8_mul => lhs & ((@as(SignedImm, 8) << rhs) - 1), |
| 194560 | .up_2_mul => ((lhs - 1) & @as(SignedImm, -2) << rhs) + (@as(SignedImm, 2) << rhs), |
| 194561 | .up_32_mul => ((lhs - 1) & @as(SignedImm, -32) << rhs) + (@as(SignedImm, 32) << rhs), |
| 194555 | 194562 | }; |
| 194556 | 194563 | const disp: SignedImm = @bitCast(@as(UnsignedImm, @as(u32, @bitCast(op.imm)))); |
| 194557 | 194564 | return switch (op.flags.adjust.sign) { |