| ... | @@ -803,7 +803,14 @@ pub const Value = struct { | ... | @@ -803,7 +803,14 @@ pub const Value = struct { |
| 803 | switch (ip.indexToKey((try val.intFromEnum(ty, mod)).toIntern()).int.storage) { | 803 | switch (ip.indexToKey((try val.intFromEnum(ty, mod)).toIntern()).int.storage) { |
| 804 | inline .u64, .i64 => |int| std.mem.writeVarPackedInt(buffer, bit_offset, bits, int, endian), | 804 | inline .u64, .i64 => |int| std.mem.writeVarPackedInt(buffer, bit_offset, bits, int, endian), |
| 805 | .big_int => |bigint| bigint.writePackedTwosComplement(buffer, bit_offset, bits, endian), | 805 | .big_int => |bigint| bigint.writePackedTwosComplement(buffer, bit_offset, bits, endian), |
| 806 | else => unreachable, | 806 | .lazy_align => |lazy_align| { |
| | 807 | const num = Type.fromInterned(lazy_align).abiAlignment(mod).toByteUnits(0); |
| | 808 | std.mem.writeVarPackedInt(buffer, bit_offset, bits, num, endian); |
| | 809 | }, |
| | 810 | .lazy_size => |lazy_size| { |
| | 811 | const num = Type.fromInterned(lazy_size).abiSize(mod); |
| | 812 | std.mem.writeVarPackedInt(buffer, bit_offset, bits, num, endian); |
| | 813 | }, |
| 807 | } | 814 | } |
| 808 | }, | 815 | }, |
| 809 | .Float => switch (ty.floatBits(target)) { | 816 | .Float => switch (ty.floatBits(target)) { |