| ... | ... | @@ -5,9 +5,9 @@ |
| 5 | 5 | /// TODO LLD also hashes the output filename to disambiguate between same builds with different |
| 6 | 6 | /// output files. Should we also do that? |
| 7 | 7 | pub fn calcUuid(comp: *const Compilation, file: fs.File, file_size: u64, out: *[Md5.digest_length]u8) !void { |
| 8 | | const num_chunks = @max(comp.thread_pool.threads.len, 1) * 0x10; |
| 9 | | const chunk_size = @divTrunc(file_size, num_chunks); |
| 10 | | const actual_num_chunks = if (@rem(file_size, num_chunks) > 0) num_chunks + 1 else num_chunks; |
| 8 | const chunk_size: usize = 1024 * 1024; |
| 9 | const num_chunks: usize = std.math.cast(usize, @divTrunc(file_size, chunk_size)) orelse return error.Overflow; |
| 10 | const actual_num_chunks = if (@rem(file_size, chunk_size) > 0) num_chunks + 1 else num_chunks; |
| 11 | 11 | |
| 12 | 12 | const hashes = try comp.gpa.alloc([Md5.digest_length]u8, actual_num_chunks); |
| 13 | 13 | defer comp.gpa.free(hashes); |