Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

eliminate dependency on LLD for ELF #17749

Open
Tracked by #16270 ...
andrewrk opened this issue Oct 27, 2023 · 0 comments
Open
Tracked by #16270 ...

eliminate dependency on LLD for ELF #17749

andrewrk opened this issue Oct 27, 2023 · 0 comments
Labels
enhancement Solving this issue will likely involve adding new logic or components to the codebase. linking
Milestone

Comments

@andrewrk
Copy link
Member

andrewrk commented Oct 27, 2023

Related:

Put simply, this issue can be closed when the following diff is applied:

--- a/src/Compilation.zig
+++ b/src/Compilation.zig
@@ -899,15 +899,13 @@ pub fn create(gpa: Allocator, options: InitOptions) !*Compilation {
 
         // Make a decision on whether to use LLD or our own linker.
         const use_lld = options.use_lld orelse blk: {
-            if (options.target.isDarwin()) {
-                break :blk false;
-            }
-
             if (!build_options.have_llvm)
                 break :blk false;
 
-            if (options.target.ofmt == .c)
-                break :blk false;
+            switch (options.target.ofmt) {
+                .c, .macho, .elf => break :blk false,
+                else => {},
+            }
 
             if (options.want_lto) |lto| {
                 if (lto) {
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Solving this issue will likely involve adding new logic or components to the codebase. linking
Projects
Status: Ditch LLVM
Development

No branches or pull requests

1 participant