diff options
| author | Jacob Young <jacobly0@users.noreply.github.com> | 2025-10-05 06:56:07 -0400 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2025-10-06 11:27:39 -0700 |
| commit | 969f2cff8258fc91d7037704ddac4e6f4f037029 (patch) | |
| tree | 12e10ee8516dde750fddf7c74b6bdf9e40a5adc1 /src/Compilation.zig | |
| parent | 2962db333f43c8bb10a1e2ad4cdd19dfab26515b (diff) | |
| download | zig-969f2cff8258fc91d7037704ddac4e6f4f037029.tar.gz zig-969f2cff8258fc91d7037704ddac4e6f4f037029.zip | |
Elf2: implement virtual allocation
This allows segments to be moved around in the output file without
needing to reapply relocations until virtual address space is exhaused.
Diffstat (limited to 'src/Compilation.zig')
| -rw-r--r-- | src/Compilation.zig | 40 |
1 files changed, 11 insertions, 29 deletions
diff --git a/src/Compilation.zig b/src/Compilation.zig index 6ae57f3492..7c5f699d83 100644 --- a/src/Compilation.zig +++ b/src/Compilation.zig @@ -2718,35 +2718,17 @@ pub fn destroy(comp: *Compilation) void { } comp.crt_files.deinit(gpa); } - - if (comp.libunwind_static_lib) |*crt_file| { - crt_file.deinit(gpa); - } - if (comp.libcxx_static_lib) |*crt_file| { - crt_file.deinit(gpa); - } - if (comp.libcxxabi_static_lib) |*crt_file| { - crt_file.deinit(gpa); - } - if (comp.compiler_rt_lib) |*crt_file| { - crt_file.deinit(gpa); - } - if (comp.compiler_rt_obj) |*crt_file| { - crt_file.deinit(gpa); - } - if (comp.ubsan_rt_lib) |*crt_file| { - crt_file.deinit(gpa); - } - if (comp.ubsan_rt_obj) |*crt_file| { - crt_file.deinit(gpa); - } - if (comp.fuzzer_lib) |*crt_file| { - crt_file.deinit(gpa); - } - - if (comp.zigc_static_lib) |*crt_file| { - crt_file.deinit(gpa); - } + if (comp.libcxx_static_lib) |*crt_file| crt_file.deinit(gpa); + if (comp.libcxxabi_static_lib) |*crt_file| crt_file.deinit(gpa); + if (comp.libunwind_static_lib) |*crt_file| crt_file.deinit(gpa); + if (comp.tsan_lib) |*crt_file| crt_file.deinit(gpa); + if (comp.ubsan_rt_lib) |*crt_file| crt_file.deinit(gpa); + if (comp.ubsan_rt_obj) |*crt_file| crt_file.deinit(gpa); + if (comp.zigc_static_lib) |*crt_file| crt_file.deinit(gpa); + if (comp.compiler_rt_lib) |*crt_file| crt_file.deinit(gpa); + if (comp.compiler_rt_obj) |*crt_file| crt_file.deinit(gpa); + if (comp.compiler_rt_dyn_lib) |*crt_file| crt_file.deinit(gpa); + if (comp.fuzzer_lib) |*crt_file| crt_file.deinit(gpa); if (comp.glibc_so_files) |*glibc_file| { glibc_file.deinit(gpa); |
