-
Notifications
You must be signed in to change notification settings - Fork 13.8k
Move exporting of profiler and sanitizer symbols to the LLVM backend #145965
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
Move exporting of profiler and sanitizer symbols to the LLVM backend #145965
Conversation
r? @davidtwco rustbot has assigned @davidtwco. Use |
Some changes occurred in compiler/rustc_codegen_ssa |
r? lqd Good find and a good cleanup. Since this is two consecutive moves though, can you squash the first two commits? Reading them made me believe we had this code duplicated at first. r=me with that done and ci green |
…llvm Don't export them from cdylibs. There is no need to do so and it complicates exported_non_generic_symbols. In addition the GCC backend likely uses different symbols and may potentially not even need us to explicitly tell it to export the symbols it needs.
All other sanitizer symbols are handled in prepare_lto already.
4f80911
to
23e72ab
Compare
Squashed the first two commits. CI was green before the squash. @bors r=lqd |
Rollup of 6 pull requests Successful merges: - #142472 (Add new `doc(attribute = "...")` attribute) - #145368 (CFI: Make `lto` and `linker-plugin-lto` work the same for `compiler_builtins`) - #145853 (Improve error messages around invalid literals in attribute arguments) - #145920 (bootstrap: Explicitly mark the end of a failed test's captured output) - #145937 (add doc-hidden to exports in attribute prelude) - #145965 (Move exporting of profiler and sanitizer symbols to the LLVM backend) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of #145965 - bjorn3:sanitize_symbol_export_improvements, r=lqd Move exporting of profiler and sanitizer symbols to the LLVM backend Only the LLVM backend needs those specific symbols exported and it only needs them to be exported for LTO, not from cdylibs in general.
Only the LLVM backend needs those specific symbols exported and it only needs them to be exported for LTO, not from cdylibs in general.