| ... | @@ -1300,7 +1300,6 @@ pub const Value = struct { | ... | @@ -1300,7 +1300,6 @@ pub const Value = struct { |
| 1300 | | 1300 | |
| 1301 | /// Materializes a value | 1301 | /// Materializes a value |
| 1302 | fn mat(vi: Value.Index, isel: *Select, opts: MatOptions) codegen.Error!Mat { | 1302 | fn mat(vi: Value.Index, isel: *Select, opts: MatOptions) codegen.Error!Mat { |
| 1303 | // try vi.split(isel, true); | | |
| 1304 | const mat_size = @min(opts.size, @as(u32, @intCast(vi.size(isel) - opts.offset))); | 1303 | const mat_size = @min(opts.size, @as(u32, @intCast(vi.size(isel) - opts.offset))); |
| 1305 | const loc_pref = if (opts.extension == .garbage) | 1304 | const loc_pref = if (opts.extension == .garbage) |
| 1306 | opts.pref | 1305 | opts.pref |
| ... | @@ -4064,9 +4063,8 @@ pub fn body(isel: *Select, air_body: []const Air.Inst.Index) codegen.Error!void | ... | @@ -4064,9 +4063,8 @@ pub fn body(isel: *Select, air_body: []const Air.Inst.Index) codegen.Error!void |
| 4064 | .{ 0, @as(u32, @intCast(payload_size)) }; | 4063 | .{ 0, @as(u32, @intCast(payload_size)) }; |
| 4065 | | 4064 | |
| 4066 | const opt_vi = try isel.use(un_op); | 4065 | const opt_vi = try isel.use(un_op); |
| 4067 | const has_value_mat = try opt_vi.mat(isel, .{ | 4066 | const has_value_vi = try opt_vi.partExact(isel, has_value_offset, has_value_size); |
| 4068 | .offset = has_value_offset, | 4067 | const has_value_mat = try has_value_vi.mat(isel, .{ |
| 4069 | .size = has_value_size, | | |
| 4070 | .pref = .only_reg, | 4068 | .pref = .only_reg, |
| 4071 | .reg_mod = .integer, | 4069 | .reg_mod = .integer, |
| 4072 | .extension = .zero_ext, | 4070 | .extension = .zero_ext, |