-
Notifications
You must be signed in to change notification settings - Fork 24.6k
Enable INTERPROCEDURAL_OPTIMIZATION for libhermes.so in OSS #50581
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
Conversation
This pull request was exported from Phabricator. Differential Revision: D72696879 |
…#50581) Summary: This enables INTERPROCEDURAL_OPTIMIZATION for Hermes in OSS, similar to how we did for libreactnative.so Changelog: [Internal] [Changed] - Differential Revision: D72696879
8bf1e33
to
b7f7c58
Compare
This pull request was exported from Phabricator. Differential Revision: D72696879 |
…ermes.so in OSS Summary: PR is here #50581 This enables INTERPROCEDURAL_OPTIMIZATION for Hermes in OSS, similar to how we did for libreactnative.so I also had to bump CMake to 3.30.x to unblock the build failure with `-fuse-ld=gold` Changelog: [Internal] [Changed] - Reviewed By: alanleedev Differential Revision: D72696879 fbshipit-source-id: e842f6cdf41f6936ef4baeb70e4833a1a0c2d19b
Thanks for this PR! What a happy accident, thanks for the commit comment, helped me out why the gold linker was being used somehow in my attempt to enable LTO 😅 Did you happen to run any performance tests for this PR, did enabling LTO have a considerable impact on the performance? |
…ermes.so in OSS Summary: PR is here facebook#50581 This enables INTERPROCEDURAL_OPTIMIZATION for Hermes in OSS, similar to how we did for libreactnative.so I also had to bump CMake to 3.30.x to unblock the build failure with `-fuse-ld=gold` Changelog: [Internal] [Changed] - Reviewed By: alanleedev Differential Revision: D72696879 fbshipit-source-id: e842f6cdf41f6936ef4baeb70e4833a1a0c2d19b
Nope I will run it this week and share an updates if we have significant results |
So this will have us ~1.2Mb on all the Android release APKs (huge!): Plus some marginal wins in startup time:
|
Closing as this has merged already in main: 5ef6856 |
Summary:
This enables INTERPROCEDURAL_OPTIMIZATION for Hermes in OSS, similar to how we did for libreactnative.so
Changelog:
[Internal] [Changed] -
Differential Revision: D72696879