1
Fork 0
rust/compiler/rustc_codegen_ssa/src
Yuki Okushi d69cd46761
Rollup merge of #85772 - luqmana:ignored-metadata, r=petrochenkov
Preserve metadata w/ Solaris-like linkers.

#84468 moved the `-zignore` linker flag from the `gc_sections` method to `add_as_needed` which is more accurate but Solaris-style linkers will also end up removing an unreferenced ELF sections [1]. This had the unfortunate side effect of causing the `.rustc` section (which has the metada) to be removed which could cause issues when trying to link against the resulting crates or use proc macros.

Since the `-zignore` is positional, we fix this by moving the metadata objects to before the flag.

[1] Specifically a section is considered unreferenced if:
* The section is allocatable
* No other sections bind to (relocate) to this section
* The section provides no global symbols

https://docs.oracle.com/cd/E19683-01/817-3677/6mj8mbtbs/index.html#chapter4-19
2021-06-06 19:11:17 +09:00
..
back Rollup merge of #85772 - luqmana:ignored-metadata, r=petrochenkov 2021-06-06 19:11:17 +09:00
coverageinfo Reland - Report coverage 0 of dead blocks 2021-06-01 13:28:59 -07:00
debuginfo Respond to review feedback 2021-06-02 10:23:12 -04:00
mir Remove special handling of box_free from LocalAnalyzer 2021-05-31 00:00:00 +00:00
traits rustc_codegen_ssa: append blocks to functions w/o creating a builder. 2021-05-17 00:04:09 +03:00
base.rs Revert "Reduce the amount of untracked state in TyCtxt" 2021-06-01 09:05:22 +02:00
common.rs Remove support for floating-point constants in asm! 2021-05-14 14:58:21 +01:00
glue.rs Change ty.kind to a method 2020-09-04 17:47:51 +02:00
lib.rs Add first cut of functionality for #58713: support for #[link(kind = "raw-dylib")]. 2021-06-04 18:01:35 -07:00
meth.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
mono_item.rs Add support for const operands and options to global_asm! 2021-05-13 22:31:57 +01:00
target_features.rs Add support for BPF inline assembly 2021-05-23 18:03:27 +10:00