-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Link using lld #370
Comments
@phil-opp One question. lld already has support for removing unused sections? The |
@gil0mendes |
I had a chance to look into the issue again. I managed to get latest Notes regarding flags
Changes to
|
Hey, before all, great report! 👏 Now. I had some time to look at this, and you are right. Forget what I said before, my problem was exactly the same. The |
@robert-w-gries Awesome work!
Hmm, ideally we don't want a writable text section. But it's great that this seems to be the only issue with the latest lld!
It seems like lld will be distributed with the compiler soon (see rust-lang/rust#39915 (comment), which is currently blocked on the upgrade to LLVM 5). So we might not need to support older lld versions. |
In fashion of the general security principle of "never trust a damn thing", you can always set the NX bit for the pages mapping your code sections, no matter what the kernel loader actually did. (And the read-only bit for |
This can now be closed, right? |
Yes, closing in favor of #360. Thank you all for helping! |
Use the cross-platform lld linker of the LLVM project. Compared to the binutils linker, no manual cross-compilation is required.
The text was updated successfully, but these errors were encountered: