aboutsummaryrefslogtreecommitdiff
path: root/src/link/Elf.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2025-01-25 13:17:25 -0800
committerGitHub <noreply@github.com>2025-01-25 13:17:25 -0800
commit8fa47bb904c888dadf20af5eb72b9643eed2bfea (patch)
tree47fcc20146a7358b4216668d91c78d3bb712511d /src/link/Elf.zig
parent015a5e198246f782415586235e0da7085867eb22 (diff)
parentb60e39fe8f50783509e3cfe7a3888e1611b063c1 (diff)
downloadzig-8fa47bb904c888dadf20af5eb72b9643eed2bfea.tar.gz
zig-8fa47bb904c888dadf20af5eb72b9643eed2bfea.zip
Merge pull request #22230 from alexrp/lto-stuff
Disable LTO by default + some LTO fixes
Diffstat (limited to 'src/link/Elf.zig')
-rw-r--r--src/link/Elf.zig12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/link/Elf.zig b/src/link/Elf.zig
index ea2fa56a5d..edd45f65ee 100644
--- a/src/link/Elf.zig
+++ b/src/link/Elf.zig
@@ -1700,6 +1700,18 @@ fn linkWithLLD(self: *Elf, arena: Allocator, tid: Zcu.PerThread.Id, prog_node: s
try argv.append(try std.fmt.allocPrint(arena, "--sysroot={s}", .{sysroot}));
}
+ if (target_util.llvmMachineAbi(target)) |mabi| {
+ try argv.appendSlice(&.{
+ "-mllvm",
+ try std.fmt.allocPrint(arena, "-target-abi={s}", .{mabi}),
+ });
+ }
+
+ try argv.appendSlice(&.{
+ "-mllvm",
+ try std.fmt.allocPrint(arena, "-float-abi={s}", .{if (target.abi.floatAbi() == .hard) "hard" else "soft"}),
+ });
+
if (comp.config.lto != .none) {
switch (comp.root_mod.optimize_mode) {
.Debug => {},