| ... | @@ -500,9 +500,8 @@ fn allocateTextBlock(self: *MachO, text_block: *TextBlock, new_block_size: u64, | ... | @@ -500,9 +500,8 @@ fn allocateTextBlock(self: *MachO, text_block: *TextBlock, new_block_size: u64, |
| 500 | const addr = blk: { | 500 | const addr = blk: { |
| 501 | if (self.last_text_block) |last| { | 501 | if (self.last_text_block) |last| { |
| 502 | const last_symbol = self.symbol_table.items[last.symbol_table_index.?]; | 502 | const last_symbol = self.symbol_table.items[last.symbol_table_index.?]; |
| 503 | const ideal_capacity = last.size * alloc_num / alloc_den; | 503 | const end_addr = last_symbol.n_value + last.size; |
| 504 | const ideal_capacity_end_addr = last_symbol.n_value + ideal_capacity; | 504 | const new_start_addr = mem.alignForwardGeneric(u64, end_addr, alignment); |
| 505 | const new_start_addr = mem.alignForwardGeneric(u64, ideal_capacity_end_addr, alignment); | | |
| 506 | block_placement = last; | 505 | block_placement = last; |
| 507 | break :blk new_start_addr; | 506 | break :blk new_start_addr; |
| 508 | } else { | 507 | } else { |