-
-
Notifications
You must be signed in to change notification settings - Fork 608
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
Enable linker optimizations when needed on windows #14418
Conversation
|
Thanks for your pull request and interest in making D better, @ryuukk! We are looking forward to reviewing it, and you should be hearing from a maintainer soon.
Please see CONTRIBUTING.md for more information. If you have addressed all reviews or aren't sure how to proceed, don't hesitate to ping us with a simple comment. Bugzilla referencesYour PR doesn't reference any Bugzilla issue. If your PR contains non-trivial changes, please reference a Bugzilla issue or create a manual changelog. Testing this PR locallyIf you don't have a local development environment setup, you can use Digger to test this PR: dub run digger -- build "master + dmd#14418" |
|
I don't know if that PR is valid, if it is not, then please make appropriate changes, i'm not willing to dive deeper into DMD code base, i don't have the time |
Co-authored-by: Max Haughton <maxhaton@gmail.com>
|
As per review, i removed the dead code, even though i believe it was needed, but i lack skills so that's a story for an other PR |
|
I'll show you how in a few hours |
|
This seems to fail 2 tests on Windows. The failures are linker errors. |
|
@ryuukk any progress on this? |
|
I can't run the test myself since the instruction on the wiki doesn't work, it's outdated https://wiki.dlang.org/Building_under_Windows#Using_DigitalMars_make_for_running_the_test_suite If one could update the instructions, that would be nice (make related, wich one exactly to get, and from where) I tried this: https://sourceforge.net/projects/gnuwin32/ but it doesn't work
|
|
Indeed the instructions are outdated. However, both for building the compiler and running the tests we now have d scripts. I don't have a windows machine, but I expect that if you run the run.exe fail_compilation -> will run all fail compilation tests
run.exe fail_compilation/test123456.d -> will run that specific test |
|
It's time for me to quit |
This significantly reduce the executable file size
And this is what LDC is doing: https://github.com/ldc-developers/ldc/blob/3b9665bac69df0c27bc1888cca8a442df656d948/driver/linker-msvc.cpp#L130
Discussion: https://forum.dlang.org/post/dcbqjmaqjpdgylpykvab@forum.dlang.org